def main(): """Build a Spinnaker release to be validated by Citest. """ parser = argparse.ArgumentParser() init_argument_parser(parser) options = parser.parse_args() annotator = Annotator(options) __annotate_component(annotator, 'halyard') bom_generator = BomGenerator(options) bom_generator.determine_and_tag_versions() if options.container_builder == 'gcb': bom_generator.write_container_builder_gcr_config() elif options.container_builder == 'docker': bom_generator.write_docker_version_files() else: raise NotImplementedError('container_builder="{0}"' .format(options.container_builder)) Builder.do_build(options, build_number=options.build_number, container_builder=options.container_builder) # Load version information into memory and write BOM to disk. Don't publish yet. bom_generator.write_bom() bom_generator.publish_microservice_configs() bom_generator.publish_boms() bom_generator.generate_changelog()
def test_default_msgs(self): expect = VersionBump('version-1.0.1', patch=True) annotator = Annotator(OPTIONS) commit_hashes = ['a', 'z'] commit_msgs = [ 'a\n\nI fixed some more stuff.', 'z\n\nI fixed some stuff.' ] result = annotator.bump_semver(self.PREV_VERSION, commit_hashes, commit_msgs) self.assertEqual(expect, result)
def __tag_halyard_repo(self): """Tags the Halyard repo with a tag derived from --stable_version. """ self.__stable_version_tag = self.__stable_version if not self.__stable_version_tag.startswith('version-'): self.__stable_version_tag = 'version-' + self.__stable_version_tag self.__annotator = Annotator(self.__options, path='halyard', next_tag=self.__stable_version_tag) self.__annotator.parse_git_tree() self.__annotator.tag_head() self.__annotator.delete_unwanted_tags()
def test_major_version(self): expect = VersionBump('version-2.0.0', major=True) annotator = Annotator(OPTIONS) commit_hashes = ['a', 'b', 'z'] commit_msgs = [ 'a\n\nfix(stuff): I fixed some more stuff.', 'b\n\nfeat(stuff): I added a sweet new feature.\n\nBREAKING CHANGE: This breaks stuff really bad.', 'z\n\nfix(stuff): I fixed some stuff.' ] result = annotator.bump_semver(self.PREV_VERSION, commit_hashes, commit_msgs) self.assertEqual(expect, result)
def test_minor_version(self): expect = VersionBump('version-1.1.0', minor=True) annotator = Annotator(OPTIONS) commit_hashes = ['a', 'b', 'z'] commit_msgs = [ 'a\n\nfix(stuff): I fixed some more stuff.', 'b\n\nfeat(stuff): I added a sweet new feature.', 'z\n\nfix(stuff): I fixed some stuff.' ] result = annotator.bump_semver(self.PREV_VERSION, commit_hashes, commit_msgs) self.assertEqual(expect, result)
def test_minor_reset_patch(self): expect = VersionBump('version-1.10.0', minor=True) annotator = Annotator(OPTIONS) commit_hashes = ['a', 'b', 'z'] commit_msgs = [ 'a\n\nfix(stuff): I fixed some more stuff.', 'b\n\nfeat(stuff): I added a sweet new feature.', 'z\n\nfix(stuff): I fixed some stuff.' ] prev_version = CommitTag('z refs/tag/version-1.9.4') result = annotator.bump_semver(prev_version, commit_hashes, commit_msgs) self.assertEqual(expect, result)
def test_major_reset_version(self): expect = VersionBump('version-2.0.0', major=True) annotator = Annotator(OPTIONS) commit_hashes = ['a', 'b', 'z'] commit_msgs = [ 'a\n\nfix(stuff): I fixed some more stuff.', 'b\n\nfeat(stuff): I added a sweet new feature.\n\nBREAKING CHANGE: This breaks stuff really bad.', 'z\n\nfix(stuff): I fixed some stuff.' ] prev_version = CommitTag('z refs/tag/version-1.9.4-0') result = annotator.bump_semver(prev_version, commit_hashes, commit_msgs) self.assertEqual(expect, result)