| #!/bin/bash |
| # Copyright lowRISC contributors. |
| # Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| # This is the CI version of `bazelisk.sh`, which calls into the "usual" wrapper, |
| # but adds various flags to produce CI-friendly output. It does so by prociding a |
| # command-line specified .bazelrc (that is applied alongside //.bazelrc). |
| |
| if [[ -n "$PWD_OVERRIDE" ]]; then |
| cd "$PWD_OVERRIDE" |
| fi |
| |
| echo "Running bazelisk in $(pwd)." |
| |
| # An additional bazelrc must be synthesized to specify precisely how to use the |
| # GCP bazel cache. |
| GCP_BAZELRC="$(mktemp /tmp/XXXXXX.bazelrc)" |
| trap "rm $GCP_BAZELRC" EXIT |
| |
| if [[ -n "$GCP_BAZEL_CACHE_KEY" && -f "$GCP_BAZEL_CACHE_KEY" ]]; then |
| echo "Applying GCP cache key; will upload to the cache." |
| echo "build --google_credentials=$GCP_BAZEL_CACHE_KEY" > "$GCP_BAZELRC" |
| else |
| echo "No key/invalid path to key. Download from cache only." |
| echo "build --remote_upload_local_results=false" > "$GCP_BAZELRC" |
| fi |
| |
| "$(dirname $0)"/../bazelisk.sh \ |
| --bazelrc="$GCP_BAZELRC" \ |
| --bazelrc="$(dirname $0)"/.bazelrc \ |
| $@ |