diff --git a/pungi/phases/image_checksum.py b/pungi/phases/image_checksum.py index fb7f59d6..ad0b9ec5 100644 --- a/pungi/phases/image_checksum.py +++ b/pungi/phases/image_checksum.py @@ -25,6 +25,13 @@ class ImageChecksumPhase(PhaseBase): self.checksums = self.compose.conf['media_checksums'] self.one_file = self.compose.conf['media_checksum_one_file'] + def skip(self): + # Skipping this phase does not make sense: + # * if there are no images, it doesn't do anything and is quick + # * if there are images, they must have checksums computed or else + # writing metadata will fail + return False + def validate(self): errors = [] try: diff --git a/tests/test_imagechecksumphase.py b/tests/test_imagechecksumphase.py index 5c5abc2a..d3faa008 100755 --- a/tests/test_imagechecksumphase.py +++ b/tests/test_imagechecksumphase.py @@ -20,6 +20,11 @@ from tests.helpers import DummyCompose, PungiTestCase class TestImageChecksumPhase(PungiTestCase): + def test_phase_is_never_skipped(self): + compose = DummyCompose(self.topdir, {}) + phase = ImageChecksumPhase(compose) + self.assertFalse(phase.skip()) + def test_config_skip_individual_with_multiple_algorithms(self): compose = DummyCompose(self.topdir, { 'media_checksums': ['md5', 'sha1'],