fix: cleanup filesystem between runs

This commit is contained in:
ThetaDev
2024-03-03 01:15:29 +01:00
parent 2dd5475afb
commit ddf6ce124e
2 changed files with 12 additions and 12 deletions

View File

@@ -22,11 +22,11 @@ RUN set -eux; \
tar -xzf crane.tar.gz; \ tar -xzf crane.tar.gz; \
mv crane /kaniko; \ mv crane /kaniko; \
rm *; \ rm *; \
mkdir /build; mkdir /kaniko/build;
COPY entrypoint.sh / COPY entrypoint.sh /kaniko/entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"] ENTRYPOINT ["/kaniko/entrypoint.sh"]
LABEL repository="https://code.thetadev.de/ThetaDev/action-kaniko" \ LABEL repository="https://code.thetadev.de/ThetaDev/action-kaniko" \
maintainer="ThetaDev <thetadev@magenta.de>" maintainer="ThetaDev <thetadev@magenta.de>"

View File

@@ -1,4 +1,4 @@
#!/bin/sh #!/busybox/sh
set -e pipefail set -e pipefail
if [ "$INPUT_DEBUG" = "true" ]; then if [ "$INPUT_DEBUG" = "true" ]; then
@@ -77,7 +77,7 @@ runKaniko() {
# https://github.com/GoogleContainerTools/kaniko/issues/1803 # https://github.com/GoogleContainerTools/kaniko/issues/1803
# https://github.com/GoogleContainerTools/kaniko/issues/1349 # https://github.com/GoogleContainerTools/kaniko/issues/1349
IFS='' IFS=''
kaniko_cmd="executor ${1} --reproducible --force" kaniko_cmd="executor ${1} --reproducible --force --cleanup"
echo "Running kaniko command: ${kaniko_cmd}" echo "Running kaniko command: ${kaniko_cmd}"
eval "${kaniko_cmd}" eval "${kaniko_cmd}"
IFS=$OLDIFS IFS=$OLDIFS
@@ -93,12 +93,12 @@ if [ -n "$INPUT_PLATFORMS" ]; then
platformFn=$(echo "$platform" | sed 's#/#-#g') platformFn=$(echo "$platform" | sed 's#/#-#g')
DESTINATION="--no-push --tarPath /build/${platformFn}.tar --destination $IMAGE" DESTINATION="--no-push --tarPath /kaniko/build/${platformFn}.tar --destination $IMAGE"
DIGEST="--image-name-tag-with-digest-file=/build/${platformFn}_image-tag-digest" DIGEST="--image-name-tag-with-digest-file=/kaniko/build/${platformFn}_image-tag-digest"
runKaniko "${ARGS} --custom-platform=${platform} $DESTINATION $DIGEST" runKaniko "${ARGS} --custom-platform=${platform} $DESTINATION $DIGEST"
echo "$platform image built: $(head -n 1 "/build/${platformFn}_image-tag-digest")" echo "$platform image built: $(head -n 1 "/kaniko/build/${platformFn}_image-tag-digest")"
done done
echo; echo "🚀 Pushing images" echo; echo "🚀 Pushing images"
@@ -106,10 +106,10 @@ if [ -n "$INPUT_PLATFORMS" ]; then
DIGESTS="" DIGESTS=""
for platform in $platformArray; do for platform in $platformArray; do
platformFn=$(echo "$platform" | sed 's#/#-#g') platformFn=$(echo "$platform" | sed 's#/#-#g')
digest=$(head -n 1 "/build/${platformFn}_image-tag-digest") digest=$(head -n 1 "/kaniko/build/${platformFn}_image-tag-digest")
echo "Pushing $platform img $digest" echo "Pushing $platform img $digest"
crane push "/build/${platformFn}.tar" "$digest" crane push "/kaniko/build/${platformFn}.tar" "$digest"
DIGESTS="$DIGESTS -m $digest" DIGESTS="$DIGESTS -m $digest"
done done
@@ -129,10 +129,10 @@ else
if [ -n "$IMAGE_LATEST" ]; then if [ -n "$IMAGE_LATEST" ]; then
DESTINATION="$DESTINATION --destination $IMAGE_LATEST" DESTINATION="$DESTINATION --destination $IMAGE_LATEST"
fi fi
DIGEST="--image-name-tag-with-digest-file=/build/image-tag-digest" DIGEST="--image-name-tag-with-digest-file=/kaniko/build/image-tag-digest"
runKaniko "${ARGS} $DESTINATION $DIGEST" runKaniko "${ARGS} $DESTINATION $DIGEST"
IMAGE_TAG_DIGEST=$(head -n 1 /build/image-tag-digest) IMAGE_TAG_DIGEST=$(head -n 1 /kaniko/build/image-tag-digest)
fi fi
DIGEST=$(echo "$IMAGE_TAG_DIGEST" | cut -f2 -d '@') DIGEST=$(echo "$IMAGE_TAG_DIGEST" | cut -f2 -d '@')