mirror of
https://gitlab.archlinux.org/archlinux/archlinux-docker.git
synced 2025-08-05 21:57:13 +02:00
scripts/make-dockerfile.sh: rework TEMPLATE_ROOTFS_DOWNLOAD handling
Currently the TEMPLATE_ROOTFS_DOWNLOAD handling is overly complicated. For the local builds, we set a ROOTFS=$GROUP.tar.zst. While for remote builds, we: - invoke curl to fetch the remote tarball - ok - do curl and shell escaping contortions to prints the filename - ehhh - that we already now - and rely upon to not change, otherwise sha256sum will fail Just use a dummy "true", for the local builds and a normal curl command otherwise. v2: - don't call curl in a sub-shell - no longer needed Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
This commit is contained in:
parent
2f43fc413a
commit
a972ead2e0
@ -243,10 +243,11 @@ release:
|
||||
curl -sSf --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file output/${group}.tar.zst ${PACKAGE_REGISTRY_URL}/${group}-${BUILD_VERSION}.tar.zst
|
||||
echo "Uploading ${group}.tar.zst.SHA256"
|
||||
curl -sSf --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file output/${group}.tar.zst.SHA256 ${PACKAGE_REGISTRY_URL}/${group}-${BUILD_VERSION}.tar.zst.SHA256
|
||||
sed "/TEMPLATE_ROOTFS_FILE/d" Dockerfile.template > output/Dockerfile.${group}
|
||||
sed "/COPY TEMPLATE_ROOTFS_FILE/d" Dockerfile.template > output/Dockerfile.${group}
|
||||
sed -i "s|TEMPLATE_ROOTFS_FILE|${group}.tar.zst|" output/Dockerfile.${group}
|
||||
package_url=$(./ci/get-public-download-for-generic-package.sh ${group}-${BUILD_VERSION}.tar.zst)
|
||||
sed -i "s|TEMPLATE_ROOTFS_RELEASE_URL|https://gitlab.archlinux.org/archlinux/archlinux-docker/-/releases/v${BUILD_VERSION}|" output/Dockerfile.${group}
|
||||
sed -i "s|TEMPLATE_ROOTFS_DOWNLOAD|ROOTFS=\"\$(curl -sOJL -w \"%{filename_effective}\" \"${package_url}\")\"|" output/Dockerfile.${group}
|
||||
sed -i "s|TEMPLATE_ROOTFS_DOWNLOAD|curl -sOJL \"${package_url}\"|" output/Dockerfile.${group}
|
||||
sed -i "s|TEMPLATE_ROOTFS_HASH|$(cat output/${group}.tar.zst.SHA256)|" output/Dockerfile.${group}
|
||||
sed -i "s|TEMPLATE_TITLE|Arch Linux ${group} Image|" output/Dockerfile.${group}
|
||||
sed -i "s|TEMPLATE_VERSION_ID|${BUILD_VERSION}|" output/Dockerfile.${group}
|
||||
|
@ -20,7 +20,7 @@ RUN TEMPLATE_ROOTFS_DOWNLOAD && \
|
||||
echo "TEMPLATE_ROOTFS_HASH" > /tmp/sha256sums.txt && \
|
||||
sha256sum -c /tmp/sha256sums.txt && \
|
||||
mkdir /rootfs && \
|
||||
tar -C /rootfs --extract --file "${ROOTFS}"
|
||||
tar -C /rootfs --extract --file TEMPLATE_ROOTFS_FILE
|
||||
|
||||
FROM scratch AS root
|
||||
|
||||
|
@ -7,7 +7,7 @@ declare -r OUTPUTDIR="$2"
|
||||
|
||||
sed -e "s|TEMPLATE_ROOTFS_FILE|$GROUP.tar.zst|" \
|
||||
-e "s|TEMPLATE_ROOTFS_RELEASE_URL|Local build|" \
|
||||
-e "s|TEMPLATE_ROOTFS_DOWNLOAD|ROOTFS=\"$GROUP.tar.zst\"|" \
|
||||
-e "s|TEMPLATE_ROOTFS_DOWNLOAD|true|" \
|
||||
-e "s|TEMPLATE_ROOTFS_HASH|$(cat $OUTPUTDIR/$GROUP.tar.zst.SHA256)|" \
|
||||
-e "s|TEMPLATE_TITLE|Arch Linux Dev Image|" \
|
||||
-e "s|TEMPLATE_VERSION_ID|dev|" \
|
||||
|
Loading…
Reference in New Issue
Block a user