Example #1
0
    def test_update_BUILD_pom_released__set_artifact_hash_to_current(self):
        pack1 = "somedir/p1"
        pack2 = "somedir/p2"
        repo_root = tempfile.mkdtemp("monorepo")
        pack1_path = os.path.join(repo_root, pack1)
        os.makedirs(os.path.join(pack1_path))
        pack2_path = os.path.join(repo_root, pack2)
        os.makedirs(os.path.join(pack2_path))
        self._write_build_pom_released(pack1_path, "1.0.0", "aaa")
        self._write_build_pom_released(pack2_path, "1.0.0", "bbb")
        self._setup_repo(repo_root)
        self._commit(repo_root)
        self._touch_file_at_path(repo_root, pack1, "blah1")
        self._commit(repo_root)
        pack1_hash = git.get_dir_hash(repo_root, pack1,
                                      exclusions.src_exclusions())
        self._touch_file_at_path(repo_root, pack2, "blah2")
        self._commit(repo_root)
        pack2_hash = git.get_dir_hash(repo_root, pack2,
                                      exclusions.src_exclusions())
        self.assertNotEqual(pack1_hash, pack2_hash)

        buildpomupdate.update_released_artifact(repo_root, [pack1, pack2],
                                                exclusions.src_exclusions(),
                                                use_current_artifact_hash=True)

        with open(os.path.join(pack1_path, "MVN-INF", "BUILD.pom.released"),
                  "r") as f:
            content = f.read()
            self.assertIn('artifact_hash = "%s"' % pack1_hash, content)
        with open(os.path.join(pack2_path, "MVN-INF", "BUILD.pom.released"),
                  "r") as f:
            content = f.read()
            self.assertIn('artifact_hash = "%s"' % pack2_hash, content)
Example #2
0
    def test_create_BUILD_pom_released(self):
        package_rel_path = "package1/package2"
        repo_root = tempfile.mkdtemp("monorepo")
        repo_package = os.path.join(repo_root, package_rel_path)
        os.makedirs(repo_package)

        buildpomupdate.update_released_artifact(repo_root, [package_rel_path], exclusions.src_exclusions(), "1.2.3", "abc")

        with open(os.path.join(repo_package, "MVN-INF", "BUILD.pom.released"), "r") as f:
            content = f.read()
            self.assertIn('released_maven_artifact(', content)
            self.assertIn('version = "1.2.3"', content)
            self.assertIn('artifact_hash = "abc"', content)
Example #3
0
    args = _parse_arguments(sys.argv[1:])
    repo_root = common.get_repo_root(args.repo_root)
    cfg = config.load(repo_root)
    packages = argsupport.get_all_packages(repo_root, args.package)
    if len(packages) == 0:
        raise Exception("Did not find any BUILD.pom packages at [%s]" %
                        args.package)

    if (args.new_version is not None
            or args.update_version_using_version_increment_strategy
            or args.set_version_to_last_released
            or args.add_version_qualifier is not None
            or args.new_version_increment_strategy is not None
            or args.new_pom_generation_mode is not None
            or args.add_missing_pom_generation_mode):

        buildpomupdate.update_build_pom_file(
            repo_root, packages, args.new_version,
            args.update_version_using_version_increment_strategy,
            args.new_version_increment_strategy,
            args.set_version_to_last_released, args.add_version_qualifier,
            args.new_pom_generation_mode, args.add_missing_pom_generation_mode)

    if (args.new_released_version is not None
            or args.new_released_artifact_hash is not None
            or args.update_released_artifact_hash_to_current):
        buildpomupdate.update_released_artifact(
            repo_root, packages, cfg.all_src_exclusions,
            args.new_released_version, args.new_released_artifact_hash,
            args.update_released_artifact_hash_to_current)