Add pipeline_slug and disabled_reason in DOWNSTREAM_PROJECTS (#389)
* Add pipeline_slug and downstream_enabled in DOWNSTREAM_PROJECTS
1. Add pipeline_slug for every project configuration, this allows us to
get the last green commit later.
2. Add downstream_enabled attribute, easier to disable a project in
downstream.
3. Only update last green commit for project existing in
DOWNSTREAM_PROJECTS.
Change-Id: Ia531d8d19fc4096bbbbd6ec2c370291d016baefc
* Use disabled_reason instead of downstream_disabled
Change-Id: I6afd73a0e9a11238fceff91b61e38bfb1caaa332
diff --git a/buildkite/bazelci.py b/buildkite/bazelci.py
index fab525e..6298c8b 100644
--- a/buildkite/bazelci.py
+++ b/buildkite/bazelci.py
@@ -44,170 +44,208 @@
DOWNSTREAM_PROJECTS = {
- # TODO(https://github.com/googlesamples/android-testing/issues/213): Reenable once fixed
- # "Android Testing": {
- # "git_repository": "https://github.com/googlesamples/android-testing.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/android-testing-postsubmit.yml"
- # },
- # TODO(bazel#6288): enable once remote execution is green
- # "Bazel Remote Execution": {
- # "git_repository": "https://github.com/bazelbuild/bazel.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/bazel-remote-execution-postsubmit.yml"
- # },
- # TODO(https://github.com/bazelbuild/BUILD_file_generator/issues/39): reenable once fixed
-# "BUILD_file_generator": {
-# "git_repository": "https://github.com/bazelbuild/BUILD_file_generator.git",
-# "http_config": "https://raw.githubusercontent.com/bazelbuild/BUILD_file_generator/master/.bazelci/presubmit.yml"
-# },
+ "Android Testing": {
+ "git_repository": "https://github.com/googlesamples/android-testing.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/android-testing-postsubmit.yml",
+ "pipeline_slug": "android-testing",
+ "disabled_reason": "https://github.com/googlesamples/android-testing/issues/213: Reenable once fixed"
+ },
+ "Bazel Remote Execution": {
+ "git_repository": "https://github.com/bazelbuild/bazel.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/bazel-remote-execution-postsubmit.yml"
+ "pipeline_slug": "remote-execution",
+ "disabled_reason": "bazel#6288: enable once remote execution is green"
+ },
+ "BUILD_file_generator": {
+ "git_repository": "https://github.com/bazelbuild/BUILD_file_generator.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/BUILD_file_generator/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "build-file-generator",
+ "disabled_reason": "https://github.com/bazelbuild/BUILD_file_generator/issues/39: reenable once fixed"
+ },
"bazel-toolchains": {
"git_repository": "https://github.com/bazelbuild/bazel-toolchains.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/bazel-toolchains/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/bazel-toolchains/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "bazel-toolchains"
},
"bazel-skylib": {
"git_repository": "https://github.com/bazelbuild/bazel-skylib.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/bazel-skylib/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/bazel-skylib/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "bazel-skylib"
},
"buildtools": {
"git_repository": "https://github.com/bazelbuild/buildtools.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/buildtools/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/buildtools/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "buildtools"
},
"CLion Plugin": {
"git_repository": "https://github.com/bazelbuild/intellij.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/clion-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/clion-postsubmit.yml",
+ "pipeline_slug": "clion-plugin"
},
- # TODO(https://github.com/bazelbuild/eclipse/issues/65): Reenable once fixed
-# "Eclipse Plugin": {
-# "git_repository": "https://github.com/bazelbuild/eclipse.git",
-# "http_config": "https://raw.githubusercontent.com/bazelbuild/eclipse/master/.bazelci/presubmit.yml"
-# },
+ "Eclipse Plugin": {
+ "git_repository": "https://github.com/bazelbuild/eclipse.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/eclipse/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "eclipse-plugin",
+ "disabled_reason": "https://github.com/bazelbuild/eclipse/issues/65: Reenable once fixed"
+ },
"Gerrit": {
"git_repository": "https://gerrit.googlesource.com/gerrit.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/gerrit-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/gerrit-postsubmit.yml",
+ "pipeline_slug": "gerrit"
},
"Google Logging": {
"git_repository": "https://github.com/google/glog.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/glog-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/glog-postsubmit.yml",
+ "pipeline_slug": "google-logging"
},
"IntelliJ Plugin": {
"git_repository": "https://github.com/bazelbuild/intellij.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/intellij-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/intellij-postsubmit.yml",
+ "pipeline_slug": "intellij-plugin"
},
"migration-tooling": {
"git_repository": "https://github.com/bazelbuild/migration-tooling.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/migration-tooling/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/migration-tooling/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "migration-tooling"
},
"protobuf": {
"git_repository": "https://github.com/google/protobuf.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/protobuf-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/protobuf-postsubmit.yml",
+ "pipeline_slug": "protobuf"
},
"re2": {
"git_repository": "https://github.com/google/re2.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/re2-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/re2-postsubmit.yml",
+ "pipeline_slug": "re2"
},
"rules_appengine": {
"git_repository": "https://github.com/bazelbuild/rules_appengine.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_appengine/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_appengine/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-appengine-appengine"
},
"rules_apple": {
"git_repository": "https://github.com/bazelbuild/rules_apple.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_apple/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_apple/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-apple-darwin"
},
"rules_closure": {
"git_repository": "https://github.com/bazelbuild/rules_closure.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_closure/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_closure/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-closure-closure-compiler"
},
- # TODO(https://github.com/bazelbuild/rules_d/issues/15): reenable once fixed
-# "rules_d": {
-# "git_repository": "https://github.com/bazelbuild/rules_d.git",
-# "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_d/master/.bazelci/presubmit.yml"
-# },
- # TODO(rules_rust#131): Enable once https://github.com/bazelbuild/rules_rust/issues/131 is fixed and rules_docker use fixed rules.
-# "rules_docker": {
-# "git_repository": "https://github.com/bazelbuild/rules_docker.git",
-# "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_docker/master/.bazelci/presubmit.yml"
-# },
- # TODO(rules_foreign_cc#118): enable once rules_foreign_cc are green
- # "rules_foreign_cc": {
- # "git_repository": "https://github.com/bazelbuild/rules_foreign_cc.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_foreign_cc/master/.bazelci/config.yaml"
- # },
+ "rules_d": {
+ "git_repository": "https://github.com/bazelbuild/rules_d.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_d/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-d",
+ "disabled_reason": "https://github.com/bazelbuild/rules_d/issues/15: reenable once fixed"
+ },
+ "rules_docker": {
+ "git_repository": "https://github.com/bazelbuild/rules_docker.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_docker/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-docker-docker",
+ "disabled_reason": "rules_rust#131: Enable once https://github.com/bazelbuild/rules_rust/issues/131 is fixed and rules_docker use fixed rules."
+ },
+ "rules_foreign_cc": {
+ "git_repository": "https://github.com/bazelbuild/rules_foreign_cc.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_foreign_cc/master/.bazelci/config.yaml",
+ "pipeline_slug": "rules-foreign-cc",
+ "disabled_reason": "rules_foreign_cc#118: enable once rules_foreign_cc are green"
+ },
"rules_go": {
"git_repository": "https://github.com/bazelbuild/rules_go.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_go/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_go/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-go-golang"
},
"rules_groovy": {
- "git_repository": "https://github.com/bazelbuild/rules_groovy.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_groovy/master/.bazelci/presubmit.yml"
- },
- "rules_gwt": {
- "git_repository": "https://github.com/bazelbuild/rules_gwt.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_gwt/master/.bazelci/presubmit.yml"
- },
- "rules_jsonnet": {
- "git_repository": "https://github.com/bazelbuild/rules_jsonnet.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_jsonnet/master/.bazelci/presubmit.yml"
- },
+ "git_repository": "https://github.com/bazelbuild/rules_groovy.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_groovy/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-groovy"
+ },
+ "rules_gwt": {
+ "git_repository": "https://github.com/bazelbuild/rules_gwt.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_gwt/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-gwt"
+ },
+ "rules_jsonnet": {
+ "git_repository": "https://github.com/bazelbuild/rules_jsonnet.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_jsonnet/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-jsonnet"
+ },
"rules_kotlin": {
"git_repository": "https://github.com/bazelbuild/rules_kotlin.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_kotlin/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_kotlin/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-kotlin-kotlin"
},
- # TODO(rules_k8s#195): enable once https://github.com/bazelbuild/rules_k8s/pull/195 is merged
-# "rules_k8s": {
-# "git_repository": "https://github.com/bazelbuild/rules_k8s.git",
-# "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_k8s/master/.bazelci/presubmit.yml"
-# },
+ "rules_k8s": {
+ "git_repository": "https://github.com/bazelbuild/rules_k8s.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_k8s/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-k8s-k8s"
+ "disabled_reason": "Enable once https://github.com/bazelbuild/rules_k8s/pull/195 is merged"
+ },
"rules_nodejs": {
"git_repository": "https://github.com/bazelbuild/rules_nodejs.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_nodejs/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_nodejs/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-nodejs-nodejs"
},
"rules_perl": {
"git_repository": "https://github.com/bazelbuild/rules_perl.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_perl/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_perl/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-perl"
},
"rules_python": {
"git_repository": "https://github.com/bazelbuild/rules_python.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_python/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_python/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-python-python"
},
"rules_rust": {
"git_repository": "https://github.com/bazelbuild/rules_rust.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_rust/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_rust/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-rust-rustlang"
},
"rules_sass": {
"git_repository": "https://github.com/bazelbuild/rules_sass.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_sass/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_sass/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-sass"
},
"rules_scala": {
"git_repository": "https://github.com/bazelbuild/rules_scala.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_scala/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_scala/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-scala-scala"
},
- # TODO(https://github.com/bazelbuild/bazel/issues/6675)
- # "rules_typescript": {
- # "git_repository": "https://github.com/bazelbuild/rules_typescript.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_typescript/master/.bazelci/presubmit.yml"
- # },
- # Enable once is resolved: https://github.com/bazelbuild/continuous-integration/issues/191
- # "rules_webtesting": {
- # "git_repository": "https://github.com/bazelbuild/rules_webtesting.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/rules_webtesting-postsubmit.yml"
- # },
+ "rules_typescript": {
+ "git_repository": "https://github.com/bazelbuild/rules_typescript.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/rules_typescript/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "rules-typescript-typescript",
+ "disabled_reason": "https://github.com/bazelbuild/bazel/issues/6675"
+ },
+ "rules_webtesting": {
+ "git_repository": "https://github.com/bazelbuild/rules_webtesting.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/rules_webtesting-postsubmit.yml",
+ "pipeline_slug": "rules-webtesting-saucelabs",
+ "disabled_reason": "Enable once is resolved: https://github.com/bazelbuild/continuous-integration/issues/191"
+ },
"skydoc": {
"git_repository": "https://github.com/bazelbuild/skydoc.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/skydoc/master/.bazelci/presubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/skydoc/master/.bazelci/presubmit.yml",
+ "pipeline_slug": "skydoc"
},
"subpar": {
"git_repository": "https://github.com/google/subpar.git",
- "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/subpar-postsubmit.yml"
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/subpar-postsubmit.yml",
+ "pipeline_slug": "subpar"
},
- # TODO(pcloudy): enable once TensoFlow adopts to Bazel 0.18.0 or later, https://github.com/tensorflow/tensorflow/pull/22964
- # "TensorFlow": {
- # "git_repository": "https://github.com/tensorflow/tensorflow.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/tensorflow-postsubmit.yml"
- # },
- # TODO(pcloudy): enable once TensorFlow_serving adopts to Bazel 0.18.0 or later, https://github.com/tensorflow/serving/pull/1066
- # "TensorFlow Serving": {
- # "git_repository": "https://github.com/tensorflow/serving.git",
- # "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/tensorflow-serving-postsubmit.yml"
- # }
+ "TensorFlow": {
+ "git_repository": "https://github.com/tensorflow/tensorflow.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/tensorflow-postsubmit.yml",
+ "pipeline_slug": "tensorflow",
+ "disabled_reason": "Enable once TensoFlow adopts to Bazel 0.18.0 or later, https://github.com/tensorflow/tensorflow/pull/22964"
+ },
+ "TensorFlow Serving": {
+ "git_repository": "https://github.com/tensorflow/serving.git",
+ "http_config": "https://raw.githubusercontent.com/bazelbuild/continuous-integration/master/buildkite/pipelines/tensorflow-serving-postsubmit.yml",
+ "pipeline_slug": "tensorflow-serving",
+ "disabled_reason": "Enable once TensorFlow_serving adopts to Bazel 0.18.0 or later, https://github.com/tensorflow/serving/pull/1066"
+ }
}
@@ -1072,13 +1110,21 @@
http_config, file_config, git_repository, monitor_flaky_tests, use_but)
pipeline_steps.append(step)
- project_name_slug = os.getenv("BUILDKITE_PIPELINE_SLUG")
+ pipeline_slug = os.getenv("BUILDKITE_PIPELINE_SLUG")
+ all_downstream_pipeline_slugs = []
+ for _, config in DOWNSTREAM_PROJECTS.items():
+ all_downstream_pipeline_slugs.append(config["pipeline_slug"])
+ # We don't need to update last green commit in the following cases:
+ # 1. This job is a github pull request
+ # 2. This job uses a custom built Bazel binary (In Bazel Downstream Projects pipeline)
+ # 3. This job doesn't run on master branch (Could be a custom build launched manually)
+ # 4. We don't intend to run the same job in downstream with Bazel@HEAD (eg. google-bazel-presubmit)
if not is_pull_request() and not use_but and os.getenv("BUILDKITE_BRANCH") == "master" and \
- project_name_slug != "google-bazel-presubmit" and project_name_slug != "google-typescript-presubmit":
+ pipeline_slug in all_downstream_pipeline_slugs:
if not git_repository:
git_repository = os.getenv("BUILDKITE_REPO")
- last_green_commit = get_last_green_commit(git_repository, project_name_slug)
+ last_green_commit = get_last_green_commit(git_repository, pipeline_slug)
current_commit = subprocess.check_output(["git", "rev-parse", "HEAD"]).decode("utf-8").strip()
if last_green_commit:
result = subprocess.check_output(["git", "rev-list", "%s..%s" % (last_green_commit, current_commit)]).decode("utf-8").strip()
@@ -1091,7 +1137,7 @@
pipeline_steps.append({
"label": "Update Last Green Commit",
"command": [
- "echo %s | %s cp - %s" % (current_commit, gsutil_command(), bazelci_last_green_commit_url(git_repository, project_name_slug))
+ "echo %s | %s cp - %s" % (current_commit, gsutil_command(), bazelci_last_green_commit_url(git_repository, pipeline_slug))
],
"agents": {
"kind": "pipeline"
@@ -1155,6 +1201,20 @@
}
+def upload_project_disabled_step(project_name, disabled_reason):
+ return {
+ "label": "{0} is disabled".format(project_name),
+ "command": [
+ "echo",
+ "Disabled reason: ",
+ disabled_reason,
+ ],
+ "agents": {
+ "kind": "pipeline"
+ }
+ }
+
+
def create_label(platform, project_name, build_only=False, test_only=False):
if build_only and test_only:
raise BuildkiteException(
@@ -1264,11 +1324,15 @@
bazel_build_step(platform, "Bazel", http_config, file_config, test_only=True))
for project, config in DOWNSTREAM_PROJECTS.items():
- pipeline_steps.append(
- upload_project_pipeline_step(project_name=project,
- git_repository=config["git_repository"],
- http_config=config.get("http_config", None),
- file_config=config.get("file_config", None)))
+ disabled_reason = config.get("disabled_reason", None)
+ if disabled_reason:
+ pipeline_steps.append(upload_project_disabled_step(project, disabled_reason))
+ else:
+ pipeline_steps.append(
+ upload_project_pipeline_step(project_name=project,
+ git_repository=config["git_repository"],
+ http_config=config.get("http_config", None),
+ file_config=config.get("file_config", None)))
print(yaml.dump({"steps": pipeline_steps}))
@@ -1285,12 +1349,12 @@
return "gs://bazel-builds/metadata/latest.json"
-def bazelci_last_green_commit_url(git_repository, project_name_slug):
- return "gs://bazel-builds/last_green_commit/%s/%s" % (git_repository[len("https://"):], project_name_slug)
+def bazelci_last_green_commit_url(git_repository, pipeline_slug):
+ return "gs://bazel-builds/last_green_commit/%s/%s" % (git_repository[len("https://"):], pipeline_slug)
-def get_last_green_commit(git_repository, project_name_slug):
- last_green_commit_url = bazelci_last_green_commit_url(git_repository, project_name_slug)
+def get_last_green_commit(git_repository, pipeline_slug):
+ last_green_commit_url = bazelci_last_green_commit_url(git_repository, pipeline_slug)
try:
return subprocess.check_output([gsutil_command(), "cat", last_green_commit_url], env=os.environ).decode("utf-8").strip()
except subprocess.CalledProcessError: