Cirrus: Use per-project output caches

Fixes https://github.com/namecoin/ncdns-repro/issues/104
pull/107/head
Jeremy Rand 3 years ago
parent d3079028a5
commit 39d9168104
No known key found for this signature in database
GPG Key ID: FD7550C2EB800711

File diff suppressed because it is too large Load Diff

@ -15,10 +15,12 @@ df -h
lscpu
free -m
echo "Verifying Cirrus YML determinism..."
mv .cirrus.yml .cirrus.yml.bak
./tools/cirrus_gen_yml.sh 2>/dev/null
diff .cirrus.yml .cirrus.yml.bak
if [[ "$SHOULD_BUILD" -eq 0 ]]; then
echo "Verifying Cirrus YML determinism..."
mv .cirrus.yml .cirrus.yml.bak
./tools/cirrus_gen_yml.sh 2>/dev/null
diff .cirrus.yml .cirrus.yml.bak
fi
echo "Installing rbm deps..."
APT_DEPS="libyaml-libyaml-perl libtemplate-perl libio-handle-util-perl libio-all-perl libio-captureoutput-perl libjson-perl libpath-tiny-perl libstring-shellquote-perl libsort-versions-perl libdigest-sha-perl libdata-uuid-perl libdata-dump-perl libfile-copy-recursive-perl libfile-slurp-perl git runc rsync"

@ -9,22 +9,19 @@ print_os_arch () {
# Pre-download tarballs and Git repos
echo "${CHANNEL}_${OS}_${ARCH}_download_docker_builder:
timeout_in: 120m
out_${CHANNEL}_${OS}_${ARCH}_cache:
folder: out
timeout_in: 120m"
for PROJECT_OUT in ./projects/*
do
PROJECT_OUT_BASE=$(basename $PROJECT_OUT)
echo " out_${PROJECT_OUT_BASE}_${CHANNEL}_${OS}_${ARCH}_cache:
folder: out/${PROJECT_OUT_BASE}
fingerprint_script:
- \"echo out_${CHANNEL}_${OS}_${ARCH}\"
- \"echo out_${PROJECT_OUT_BASE}_${CHANNEL}_${OS}_${ARCH}\"
reupload_on_changes: true
populate_script:
- \"mkdir -p out\"
out1_${CHANNEL}_${OS}_${ARCH}_cache:
folder: out_cache1
fingerprint_script:
- \"echo out1_${CHANNEL}_${OS}_${ARCH}\"
reupload_on_changes: true
populate_script:
- \"mkdir -p out_cache1\"
git_${CHANNEL}_${OS}_${ARCH}_cache:
- \"mkdir -p out/${PROJECT_OUT_BASE}\""
done
echo " git_${CHANNEL}_${OS}_${ARCH}_cache:
folder: git_clones
fingerprint_script:
- \"echo git_${CHANNEL}_${OS}_${ARCH}\"
@ -71,22 +68,19 @@ print_os_arch () {
fi
PROJECT_ITER=$(echo $PROJECT | cut -d . -f 2)
echo "${CHANNEL}_${OS}_${ARCH}_${PROJECT_BASE}_${PROJECT_ITER}_docker_builder:
timeout_in: 120m
out_${CHANNEL}_${OS}_${ARCH}_cache:
folder: out
fingerprint_script:
- \"echo out_${CHANNEL}_${OS}_${ARCH}\"
reupload_on_changes: true
populate_script:
- \"mkdir -p out\"
out1_${CHANNEL}_${OS}_${ARCH}_cache:
folder: out_cache1
timeout_in: 120m"
for PROJECT_OUT in ./projects/*
do
PROJECT_OUT_BASE=$(basename $PROJECT_OUT)
echo " out_${PROJECT_OUT_BASE}_${CHANNEL}_${OS}_${ARCH}_cache:
folder: out/${PROJECT_OUT_BASE}
fingerprint_script:
- \"echo out1_${CHANNEL}_${OS}_${ARCH}\"
- \"echo out_${PROJECT_OUT_BASE}_${CHANNEL}_${OS}_${ARCH}\"
reupload_on_changes: true
populate_script:
- \"mkdir -p out_cache1\"
git_${CHANNEL}_${OS}_${ARCH}_cache:
- \"mkdir -p out/${PROJECT_OUT_BASE}\""
done
echo " git_${CHANNEL}_${OS}_${ARCH}_cache:
folder: git_clones
fingerprint_script:
- \"echo git_${CHANNEL}_${OS}_${ARCH}\"

Loading…
Cancel
Save