#!/usr/bin/env bash set -euo pipefail # Bump this to "clear" the cache. # Actually, it just causes us to ignore previous cached results. cache_clear_token=2023-09-11 cache_dir=cache/"$CI_JOB_IMAGE","$cache_clear_token" mkdir -p "$cache_dir" for cmd in "$@"; do cache="$cache_dir/$cmd" if cp "$cache" "$CARGO_HOME"/bin/; then continue; fi cargo install --locked "$cmd" cp -v "$CARGO_HOME/bin/$cmd" "$cache" done