From 9c239d2c5e04774f9ccb41590dceed873729944d Mon Sep 17 00:00:00 2001 From: Jan Kaluza Date: Oct 25 2017 11:21:05 +0000 Subject: Include ArtifactBuild.build_args in API response and fix ODCS.new_compose tests --- diff --git a/freshmaker/models.py b/freshmaker/models.py index 9daf684..e8e5a86 100644 --- a/freshmaker/models.py +++ b/freshmaker/models.py @@ -25,6 +25,7 @@ """ import flask +import json from datetime import datetime from sqlalchemy.orm import (validates, relationship) @@ -325,6 +326,10 @@ class ArtifactBuild(FreshmakerBase): ArtifactBuildState(self.state).name, self.event.message_id) def json(self): + build_args = {} + if self.build_args: + build_args = json.loads(self.build_args) + with app.app_context(): build_url = flask.url_for('build', id=self.id) db.session.add(self) @@ -344,6 +349,7 @@ class ArtifactBuild(FreshmakerBase): "event_id": self.event_id, "build_id": self.build_id, "url": build_url, + "build_args": build_args, } def get_root_dep_on(self): diff --git a/tests/test_errata_advisory_state_changed.py b/tests/test_errata_advisory_state_changed.py index 03e52d8..9af81ad 100644 --- a/tests/test_errata_advisory_state_changed.py +++ b/tests/test_errata_advisory_state_changed.py @@ -630,7 +630,8 @@ class TestPrepareYumRepo(unittest.TestCase): # Ensure new_compose is called to request a new compose ODCS.return_value.new_compose.assert_called_once_with( - 'rhel-7.2-candidate', 'tag', packages=['httpd', 'httpd-debuginfo']) + 'rhel-7.2-candidate', 'tag', packages=['httpd', 'httpd-debuginfo'], + sigkeys=[], flags=["no_deps"]) # We should get the right repo URL eventually self.assertEqual( diff --git a/tests/test_views.py b/tests/test_views.py index 4239858..2b95ec7 100644 --- a/tests/test_views.py +++ b/tests/test_views.py @@ -40,7 +40,8 @@ class TestViews(unittest.TestCase): def _init_data(self): event = models.Event.create(db.session, "2017-00000000-0000-0000-0000-000000000001", "RHSA-2018-101", events.TestingEvent) - models.ArtifactBuild.create(db.session, event, "ed", "module", 1234) + build = models.ArtifactBuild.create(db.session, event, "ed", "module", 1234) + build.build_args = '{"key": "value"}' models.ArtifactBuild.create(db.session, event, "mksh", "module", 1235) models.ArtifactBuild.create(db.session, event, "bash", "module", 1236) models.Event.create(db.session, "2017-00000000-0000-0000-0000-000000000002", "RHSA-2018-102", events.TestingEvent) @@ -56,6 +57,7 @@ class TestViews(unittest.TestCase): self.assertEqual(data['state'], ArtifactBuildState.BUILD.value) self.assertEqual(data['event_id'], 1) self.assertEqual(data['build_id'], 1234) + self.assertEqual(data['build_args'], {"key": "value"}) def test_query_builds(self): resp = self.client.get('/api/1/builds/')