Skip to content

Commit 2047d41

Browse files
authored
chore(release): pre_release is incorrect
1 parent 47a9435 commit 2047d41

5 files changed

Lines changed: 25 additions & 9 deletions

File tree

rootfs/api/models/app.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,8 @@ def pipeline(self, release, force_deploy=False, rollback_on_failure=True):
255255
except Exception as e:
256256
release.state = "crashed"
257257
release.failed = True
258+
if release.summary:
259+
release.summary += " "
258260
release.summary += "{} pipeline a release that failed".format(self.owner)
259261
release.exception = "error: {}".format(str(e))
260262
self.log(f"{prefix} pipeline runtime error: {release.exception}", logging.ERROR)

rootfs/api/models/build.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ def create_release(self, user, *args, **kwargs):
9090
new_release = self.app.release_set.latest()
9191
new_release.state = "crashed"
9292
new_release.failed = True
93+
if new_release.summary:
94+
new_release.summary += " "
9395
new_release.summary += "{} deployed {} which failed".format(
9496
self.owner, str(self.uuid)[:7])
9597
# Get the exception that has occured

rootfs/api/models/release.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ def previous(self):
185185

186186
try:
187187
# Get the Release previous to this one
188-
prev_release = releases.filter(failed=False).latest()
188+
prev_release = releases.filter(failed=False, state="succeed").latest()
189189
except Release.DoesNotExist:
190190
prev_release = None
191191
return prev_release
@@ -223,6 +223,8 @@ def rollback(self, user, version=None):
223223
new_release = self.app.release_set.latest()
224224
new_release.state = "crashed"
225225
new_release.failed = True
226+
if new_release.summary:
227+
new_release.summary += " "
226228
new_release.summary += "{} performed roll back to a release that failed".format(
227229
self.owner)
228230
# Get the exception that has occured

rootfs/api/tests/test_release.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -638,7 +638,8 @@ def test_diff_procfile_types(self, mock_requests):
638638
owner=user,
639639
app=app,
640640
config=app.config_set.latest(),
641-
build=build
641+
build=build,
642+
state="succeed"
642643
)
643644
self.assertIsNone(release.diff_procfile_types())
644645
# test has image
@@ -669,7 +670,8 @@ def test_diff_procfile_types(self, mock_requests):
669670
owner=user,
670671
app=app,
671672
config=app.config_set.latest(),
672-
build=build
673+
build=build,
674+
state="succeed"
673675
)
674676
self.assertEqual(release.diff_procfile_types(), {'web', 'worker'})
675677
# test has image
@@ -700,7 +702,8 @@ def test_diff_procfile_types(self, mock_requests):
700702
owner=user,
701703
app=app,
702704
config=app.config_set.latest(),
703-
build=build
705+
build=build,
706+
state="succeed"
704707
)
705708
self.assertEqual(release.diff_procfile_types(), {'web'})
706709
# test has image
@@ -731,7 +734,8 @@ def test_diff_procfile_types(self, mock_requests):
731734
owner=user,
732735
app=app,
733736
config=app.config_set.latest(),
734-
build=build
737+
build=build,
738+
state="succeed"
735739
)
736740
self.assertEqual(release.diff_procfile_types(), {'worker'})
737741
# test no image
@@ -771,7 +775,8 @@ def test_diff_procfile_types(self, mock_requests):
771775
owner=user,
772776
app=app,
773777
config=app.config_set.latest(),
774-
build=build
778+
build=build,
779+
state="succeed"
775780
)
776781
self.assertEqual(release.diff_procfile_types(), {'web', 'worker', 'worker-sync'})
777782
# test has image
@@ -805,7 +810,8 @@ def test_diff_procfile_types(self, mock_requests):
805810
owner=user,
806811
app=app,
807812
config=app.config_set.latest(),
808-
build=build
813+
build=build,
814+
state="succeed"
809815
)
810816
self.assertEqual(release.diff_procfile_types(), {'worker', 'task', 'worker-sync', 'web'})
811817
# test has image
@@ -839,7 +845,8 @@ def test_diff_procfile_types(self, mock_requests):
839845
owner=user,
840846
app=app,
841847
config=app.config_set.latest(),
842-
build=build
848+
build=build,
849+
state="succeed"
843850
)
844851
self.assertEqual(release.diff_procfile_types(), {'task'})
845852
# test has image
@@ -873,7 +880,8 @@ def test_diff_procfile_types(self, mock_requests):
873880
owner=user,
874881
app=app,
875882
config=app.config_set.latest(),
876-
build=build
883+
build=build,
884+
state="succeed"
877885
)
878886
self.assertEqual(release.diff_procfile_types(), set())
879887
with mock.patch('scheduler.resources.pod.Pod.watch') as mock_kube:

rootfs/api/views.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,8 @@ def post_save(self, config):
415415
if 'release' in locals():
416416
release.state = "crashed"
417417
release.failed = True
418+
if release.summary:
419+
release.summary += " "
418420
release.summary += "{} deployed a config that failed".format(self.request.user)
419421
# Get the exception that has occured
420422
release.exception = "error: {}".format(str(e))

0 commit comments

Comments
 (0)