k3s/scripts/package-airgap

32 lines
931 B
Bash
Executable File

#!/bin/bash
set -e -x
cd $(dirname $0)/..
. ./scripts/version.sh
if [ "${OS}" != "linux" ]; then
exit
fi
# Used by GHA to inject --platform=linux/(NON_x86_ARCH) on amd64 runners
OPT_ARCH=${1:-""}
if [ -n "${OPT_ARCH}" ]; then
ARCH=${OPT_ARCH}
if [ "${ARCH}" = "arm" ]; then
OPT_PLATFORM="--platform=linux/arm/v7"
else
OPT_PLATFORM="--platform=linux/${ARCH}"
fi
fi
airgap_image_file='scripts/airgap/image-list.txt'
images=$(cat "${airgap_image_file}")
xargs -n1 docker pull ${OPT_PLATFORM} <<< "${images}"
docker save ${images} -o dist/artifacts/k3s-airgap-images-${ARCH}.tar
zstd --no-progress -T0 -16 -f --long=25 dist/artifacts/k3s-airgap-images-${ARCH}.tar -o dist/artifacts/k3s-airgap-images-${ARCH}.tar.zst
pigz -v -c dist/artifacts/k3s-airgap-images-${ARCH}.tar > dist/artifacts/k3s-airgap-images-${ARCH}.tar.gz
if [ ${ARCH} = amd64 ]; then
cp "${airgap_image_file}" dist/artifacts/k3s-images.txt
fi