def test_shippable_instance(self): shippable_env = { "SHIPPABLE": "true", "COMMIT_MESSAGE": "foobar [qux]", "COMMIT": "98e984eacf4e3dfea431c8850c8c181a08e8cf3d", "BRANCH": "testing/5.6.5", "IS_GIT_TAG": "false", "IS_PULL_REQUEST": "false" } with tools.environment_append(shippable_env): manager = CIManager(self.printer) self.assertEquals(manager.get_branch(), shippable_env["BRANCH"]) self.assertEquals(manager.get_commit_msg(), shippable_env["COMMIT_MESSAGE"]) self.assertEquals(manager.get_commit_id(), shippable_env["COMMIT"]) self.assertEquals(manager.is_pull_request(), False) self.assertEquals(manager.is_tag(), False) shippable_env = { "SHIPPABLE": "true", "COMMIT_MESSAGE": "new tag", "COMMIT": "98e984eacf4e3dfea431c8850c8c181a08e8cf3d", "BRANCH": "release/5.6.5", "IS_GIT_TAG": "true", "IS_PULL_REQUEST": "true" } with tools.environment_append(shippable_env): manager = CIManager(self.printer) self.assertEquals(manager.get_branch(), shippable_env["BRANCH"]) self.assertEquals(manager.get_commit_msg(), shippable_env["COMMIT_MESSAGE"]) self.assertEquals(manager.get_commit_id(), shippable_env["COMMIT"]) self.assertEquals(manager.is_pull_request(), True) self.assertEquals(manager.is_tag(), True)
def get_version_from_ci(): printer = Printer(hidesensitive) ci_man = CIManager(printer) if ci_man.is_tag(): try: version = subprocess.check_output( "git describe --exact-match --tags", shell=True).decode().strip() except Exception: return None else: version = ci_man.get_branch() version = re.sub("^refs/tags/", "", version) version = re.sub("^.*/v?", "", version) version = re.sub("^v?", "", version) return version
def is_tag(): printer = Printer() ci_manager = CIManager(printer) return ci_manager.is_tag()