#!/usr/bin/env bash set +e set -o xtrace # if we run this script outside of gitlab-ci for testing, ensure # we got meaningful variables CI_PROJECT_DIR=${CI_PROJECT_DIR:-$(mktemp -d)/$CI_PROJECT_NAME} if [[ -e $CI_PROJECT_DIR/.git ]] then echo "Repository already present, skip cache download" exit fi TMP_DIR=$(mktemp -d) echo "$(date +"%F %T") Downloading archived master..." if ! /usr/bin/wget \ -O "$TMP_DIR/$CI_PROJECT_NAME.tar.gz" \ "https://${S3_HOST}/${S3_GITCACHE_BUCKET}/${FDO_UPSTREAM_REPO}/$CI_PROJECT_NAME.tar.gz"; then echo "Repository cache not available" exit fi set -e rm -rf "$CI_PROJECT_DIR" echo "$(date +"%F %T") Extracting tarball into '$CI_PROJECT_DIR'..." mkdir -p "$CI_PROJECT_DIR" tar xzf "$TMP_DIR/$CI_PROJECT_NAME.tar.gz" -C "$CI_PROJECT_DIR" rm -rf "$TMP_DIR" chmod a+w "$CI_PROJECT_DIR" echo "$(date +"%F %T") Git cache download done"