ci: s/UPSTREAM_URL/FILE_HOST and use mirror-03 as upstream provider

The job is triggered whenever a new target is uploaded. This happens the same
moment the CDN cache is flushed, so it's possible that there is a flaky
situation where the CDN is half way through purging the cache.

Unify the variables for the upstream URL, in Dockerfile it's called FILE_HOST,
in the setup.sh it's called UPSTREAM_URL. Use FILE_HOST everywhere but fallback
to UPSTREAM_URL if defined.

Let's use our own mirror for this.

Signed-off-by: Paul Spooren <mail@aparcar.org>
pull/181/head
Paul Spooren 2025-08-13 12:09:18 +02:00
parent 47d0e61953
commit f88387b06e
2 changed files with 7 additions and 4 deletions

View File

@ -1,6 +1,9 @@
name: Build and push containers
run-name: ${{ inputs.ref }} ${{ inputs.target }}
env:
FILE_HOST: https://mirror-03.infra.openwrt.org
on:
# push:
pull_request:

View File

@ -3,12 +3,12 @@ set -e
# the inputs:
TARGET="${TARGET:-x86/64}"
VERSION_PATH="${VERSION_PATH:-snapshots}"
UPSTREAM_URL="${UPSTREAM_URL:-https://downloads.openwrt.org}"
FILE_HOST="${UPSTREAM_URL:-${FILE_HOST:-https://downloads.openwrt.org}}"
DOWNLOAD_FILE="${DOWNLOAD_FILE:-imagebuilder-.*x86_64.tar.[xz|zst]}"
DOWNLOAD_PATH="$VERSION_PATH/targets/$TARGET"
wget -nv "$UPSTREAM_URL/$DOWNLOAD_PATH/sha256sums" -O sha256sums
wget -nv "$UPSTREAM_URL/$DOWNLOAD_PATH/sha256sums.asc" -O sha256sums.asc
wget -nv "$FILE_HOST/$DOWNLOAD_PATH/sha256sums" -O sha256sums
wget -nv "$FILE_HOST/$DOWNLOAD_PATH/sha256sums.asc" -O sha256sums.asc
gpg --import /builder/keys/*.asc && rm -rf /builder/keys/
gpg --with-fingerprint --verify sha256sums.asc sha256sums
@ -17,7 +17,7 @@ gpg --with-fingerprint --verify sha256sums.asc sha256sums
file_name="$(grep "$DOWNLOAD_FILE" sha256sums | cut -d "*" -f 2)"
# download imagebuilder/sdk archive
wget -nv "$UPSTREAM_URL/$DOWNLOAD_PATH/$file_name"
wget -nv "$FILE_HOST/$DOWNLOAD_PATH/$file_name"
# shrink checksum file to single desired file and verify downloaded archive
grep "$file_name" sha256sums > sha256sums_min