Skip to content
Snippets Groups Projects

arch_boxes_sync: Pull the artifacts from GitLab's package registry

Merged Kristian Klausen requested to merge klausenbusk/infrastructure:arch-boxes-sha256 into master
1 file
+ 5
3
Compare changes
  • Side-by-side
  • Inline
@@ -2,7 +2,6 @@
set -o nounset -o errexit -o pipefail
# https://docs.gitlab.com/ee/api/README.html#namespaced-path-encoding
readonly PROJECT_ID="archlinux%2Farch-boxes"
readonly JOB_NAME="build:secure"
readonly ARCH_BOXES_PATH="/srv/ftp/images"
readonly MAX_RELEASES="6" # 3 months
@@ -36,14 +35,17 @@ while IFS= read -r FILE; do
FILE_NAME="$(jq -r .file_name <<< "${FILE}")"
FILE_SHA256="$(jq -r .file_sha256 <<< "${FILE}")"
# People should download the vagrant images from Vagrant Cloud
if [[ $FILE_NAME =~ .*\.box(|\..*)$ ]]; then
continue
fi
curl --silent --show-error --fail --output "files/${FILE_NAME}" "https://gitlab.archlinux.org/api/v4/projects/${PROJECT_ID}/packages/generic/${PACKAGE_NAME}/${LATEST_VERSION}/${FILE_NAME}"
sha256sum --quiet -c <<< "${FILE_SHA256} files/${FILE_NAME}"
touch --no-create --date="@$(date -d "${FILE_CREATED_AT}" +%s)" "files/${FILE_NAME}"
done < <(jq -c .[] <<< "${PACKAGE_FILES}")
mkdir "${LATEST_VERSION}"
# People should download the vagrant images from Vagrant Cloud
rm files/*.box{,.*}
mv files/* "${LATEST_VERSION}"
for FILE in "${LATEST_VERSION}"/*; do
Loading