Add sbf-tools version to cargo target cache name on CI agents (#23027)

(cherry picked from commit c7aa7fb66b)

Co-authored-by: Dmitri Makarov <dmakarov@alumni.stanford.edu>
This commit is contained in:
mergify[bot]
2022-02-09 22:24:04 +00:00
committed by GitHub
parent d64eebb799
commit 70f76b450e
3 changed files with 32 additions and 4 deletions

View File

@ -12,7 +12,8 @@ export PS4="++"
# Restore target/ from the previous CI build on this machine
#
eval "$(ci/channel-info.sh)"
export CARGO_TARGET_CACHE=$HOME/cargo-target-cache/"$CHANNEL"-"$BUILDKITE_LABEL"
eval "$(ci/sbf-tools-info.sh)"
export CARGO_TARGET_CACHE=$HOME/cargo-target-cache/"$CHANNEL"-"$BUILDKITE_LABEL"-"$SBF_TOOLS_VERSION"
(
set -x
MAX_CACHE_SIZE=18 # gigabytes

24
ci/sbf-tools-info.sh Executable file
View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
#
# Finds the version of sbf-tools used by this source tree.
#
# stdout of this script may be eval-ed.
#
here="$(dirname "$0")"
SBF_TOOLS_VERSION=unknown
cargo_build_bpf_main="${here}/../sdk/cargo-build-bpf/src/main.rs"
if [[ -f "${cargo_build_bpf_main}" ]]; then
version=$(sed -e 's/^.*bpf_tools_version\s*=\s*"\(v[0-9.]\+\)".*/\1/;t;d' "${cargo_build_bpf_main}")
if [[ ${version} != '' ]]; then
SBF_TOOLS_VERSION="${version}"
else
echo '--- unable to parse SBF_TOOLS_VERSION'
fi
else
echo "--- '${cargo_build_bpf_main}' not present"
fi
echo SBF_TOOLS_VERSION="${SBF_TOOLS_VERSION}"

View File

@ -474,17 +474,20 @@ fn build_bpf_package(config: &Config, target_directory: &Path, package: &cargo_m
eprintln!("Can't get home directory path: {}", err);
exit(1);
}));
let version = "v1.23";
// The following line is scanned by CI configuration script to
// separate cargo caches according to the version of sbf-tools.
let bpf_tools_version = "v1.23";
let package = "bpf-tools";
let target_path = home_dir
.join(".cache")
.join("solana")
.join(version)
.join(bpf_tools_version)
.join(package);
install_if_missing(
config,
package,
version,
bpf_tools_version,
"https://github.com/solana-labs/bpf-tools/releases/download",
bpf_tools_download_file_name,
&target_path,