1 | #!/usr/bin/env bash
|
---|
2 |
|
---|
3 | set +e
|
---|
4 | set -o xtrace
|
---|
5 |
|
---|
6 | # if we run this script outside of gitlab-ci for testing, ensure
|
---|
7 | # we got meaningful variables
|
---|
8 | CI_PROJECT_DIR=${CI_PROJECT_DIR:-$(mktemp -d)/$CI_PROJECT_NAME}
|
---|
9 |
|
---|
10 | if [[ -e $CI_PROJECT_DIR/.git ]]
|
---|
11 | then
|
---|
12 | echo "Repository already present, skip cache download"
|
---|
13 | exit
|
---|
14 | fi
|
---|
15 |
|
---|
16 | TMP_DIR=$(mktemp -d)
|
---|
17 |
|
---|
18 | echo "$(date +"%F %T") Downloading archived master..."
|
---|
19 | if ! /usr/bin/wget \
|
---|
20 | -O "$TMP_DIR/$CI_PROJECT_NAME.tar.gz" \
|
---|
21 | "https://${S3_HOST}/git-cache/${FDO_UPSTREAM_REPO}/$CI_PROJECT_NAME.tar.gz";
|
---|
22 | then
|
---|
23 | echo "Repository cache not available"
|
---|
24 | exit
|
---|
25 | fi
|
---|
26 |
|
---|
27 | set -e
|
---|
28 |
|
---|
29 | rm -rf "$CI_PROJECT_DIR"
|
---|
30 | echo "$(date +"%F %T") Extracting tarball into '$CI_PROJECT_DIR'..."
|
---|
31 | mkdir -p "$CI_PROJECT_DIR"
|
---|
32 | tar xzf "$TMP_DIR/$CI_PROJECT_NAME.tar.gz" -C "$CI_PROJECT_DIR"
|
---|
33 | rm -rf "$TMP_DIR"
|
---|
34 | chmod a+w "$CI_PROJECT_DIR"
|
---|
35 |
|
---|
36 | echo "$(date +"%F %T") Git cache download done"
|
---|