diff --git a/azure-cron.yml b/azure-cron.yml index f9b2ba0a0b..f890e6f3fd 100644 --- a/azure-cron.yml +++ b/azure-cron.yml @@ -28,6 +28,8 @@ trigger: none # always: true jobs: + - template: ci/fix-bazel-cache.yml + - job: docs timeoutInMinutes: 120 pool: diff --git a/ci/build.yml b/ci/build.yml index 4736d5f92a..36c33106e5 100644 --- a/ci/build.yml +++ b/ci/build.yml @@ -3,37 +3,7 @@ jobs: -- job: fix_bazel_cache - timeoutInMinutes: 120 - condition: eq(variables['System.PullRequest.IsFork'], 'False') - pool: - name: 'ubuntu_20_04' - demands: assignment -equals default - steps: - - checkout: self - - bash: ci/dev-env-install.sh - displayName: 'Build/Install the Developer Environment' - - template: bash-lib.yml - parameters: - var_name: bash-lib - - bash: | - set -euo pipefail - eval "$(dev-env/bin/dade assist)" - - bazel build //ci/cron:cron - - key=$(mktemp) - cleanup="rm -rf $key ~/.config/gcloud" - trap "$cleanup" EXIT - echo "$GCRED" > $key - gcloud auth activate-service-account --key-file=$key - export BOTO_CONFIG=/dev/null - # 90 minutes should provide enough overlap for an hourly - # cronjob. - ./bazel-bin/ci/cron/cron bazel-cache --age 90 --delete - env: - GCRED: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT) - - template: tell-slack-failed.yml +- template: fix-bazel-cache.yml - job: git_sha pool: diff --git a/ci/fix-bazel-cache.yml b/ci/fix-bazel-cache.yml new file mode 100644 index 0000000000..e07f227f6d --- /dev/null +++ b/ci/fix-bazel-cache.yml @@ -0,0 +1,33 @@ +# Copyright (c) 2022 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +jobs: +- job: fix_bazel_cache + timeoutInMinutes: 120 + condition: eq(variables['System.PullRequest.IsFork'], 'False') + pool: + name: 'ubuntu_20_04' + demands: assignment -equals default + steps: + - checkout: self + - bash: ci/dev-env-install.sh + displayName: 'Build/Install the Developer Environment' + - template: bash-lib.yml + parameters: + var_name: bash-lib + - bash: | + set -euo pipefail + eval "$(dev-env/bin/dade assist)" + + bazel build //ci/cron:cron + + key=$(mktemp) + cleanup="rm -rf $key ~/.config/gcloud" + trap "$cleanup" EXIT + echo "$GCRED" > $key + gcloud auth activate-service-account --key-file=$key + export BOTO_CONFIG=/dev/null + ./bazel-bin/ci/cron/cron bazel-cache --age 120 --delete --cache-suffix '**' + env: + GCRED: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT) + - template: tell-slack-failed.yml