Shard macOS Namespace caches by lane

This commit is contained in:
Conrad Kramer 2026-03-19 02:13:12 -07:00
parent bf4b270db5
commit 8678ef61ba
3 changed files with 45 additions and 27 deletions

View file

@ -74,30 +74,32 @@ jobs:
run: |
set -euo pipefail
cache_root="${NSC_CACHE_PATH:-${HOME}/.cache/burrow}"
shared_root="${NSC_SHARED_CACHE_PATH:-${cache_root}/shared}"
lane_root="${NSC_LANE_CACHE_PATH:-${cache_root}/lane/${{ matrix.cache-id }}}"
mkdir -p \
"${cache_root}/cargo" \
"${cache_root}/cargo-target/${{ matrix.cache-id }}" \
"${cache_root}/rustup" \
"${cache_root}/sccache" \
"${cache_root}/homebrew" \
"${cache_root}/apple/PackageCache" \
"${cache_root}/apple/SourcePackages" \
"${cache_root}/apple/DerivedData/${{ matrix.cache-id }}"
"${shared_root}/cargo" \
"${shared_root}/rustup" \
"${shared_root}/sccache" \
"${shared_root}/homebrew" \
"${shared_root}/apple/PackageCache" \
"${shared_root}/apple/SourcePackages" \
"${lane_root}/cargo-target" \
"${lane_root}/DerivedData"
rm -rf \
"${cache_root}/cargo-target/${{ matrix.cache-id }}" \
"${cache_root}/apple/DerivedData/${{ matrix.cache-id }}"
"${lane_root}/cargo-target" \
"${lane_root}/DerivedData"
mkdir -p \
"${cache_root}/cargo-target/${{ matrix.cache-id }}" \
"${cache_root}/apple/DerivedData/${{ matrix.cache-id }}"
echo "CARGO_HOME=${cache_root}/cargo" >> "${GITHUB_ENV}"
echo "CARGO_TARGET_DIR=${cache_root}/cargo-target/${{ matrix.cache-id }}" >> "${GITHUB_ENV}"
echo "RUSTUP_HOME=${cache_root}/rustup" >> "${GITHUB_ENV}"
echo "SCCACHE_DIR=${cache_root}/sccache" >> "${GITHUB_ENV}"
echo "HOMEBREW_CACHE=${cache_root}/homebrew" >> "${GITHUB_ENV}"
echo "APPLE_PACKAGE_CACHE=${cache_root}/apple/PackageCache" >> "${GITHUB_ENV}"
echo "APPLE_SOURCE_PACKAGES=${cache_root}/apple/SourcePackages" >> "${GITHUB_ENV}"
echo "APPLE_DERIVED_DATA=${cache_root}/apple/DerivedData/${{ matrix.cache-id }}" >> "${GITHUB_ENV}"
df -h "${cache_root}" || true
"${lane_root}/cargo-target" \
"${lane_root}/DerivedData"
echo "CARGO_HOME=${shared_root}/cargo" >> "${GITHUB_ENV}"
echo "CARGO_TARGET_DIR=${lane_root}/cargo-target" >> "${GITHUB_ENV}"
echo "RUSTUP_HOME=${shared_root}/rustup" >> "${GITHUB_ENV}"
echo "SCCACHE_DIR=${shared_root}/sccache" >> "${GITHUB_ENV}"
echo "HOMEBREW_CACHE=${shared_root}/homebrew" >> "${GITHUB_ENV}"
echo "APPLE_PACKAGE_CACHE=${shared_root}/apple/PackageCache" >> "${GITHUB_ENV}"
echo "APPLE_SOURCE_PACKAGES=${shared_root}/apple/SourcePackages" >> "${GITHUB_ENV}"
echo "APPLE_DERIVED_DATA=${lane_root}/DerivedData" >> "${GITHUB_ENV}"
df -h "${shared_root}" "${lane_root}" || true
- name: Install Rust
shell: bash