Modify Skopeo command to use podman unshare

Wrap the Skopeo command in 'podman unshare' to resolve rootless permission issues on the GitHub runner.
This commit is contained in:
humocs-man
2026-05-17 17:31:31 +02:00
committed by GitHub
parent 30e6f06bc3
commit 4d2b265511
+11 -9
View File
@@ -107,15 +107,17 @@ jobs:
export REGISTRY_AUTH_FILE=$HOME/.docker/config.json
REGISTRY_PATH="${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}"
# Kopiert das Image direkt aus dem lokalen Speicher des Runners hoch
# und wendet dabei die performante ZSTD-Kompression an.
for tag in ${{ steps.metadata.outputs.tags }}; do
skopeo copy \
--dest-compress-format=zstd \
--dest-compress-level=5 \
containers-storage:localhost/${{ env.IMAGE_NAME }}:${{ env.DEFAULT_TAG }} \
docker://$REGISTRY_PATH:$tag
done
# Wir packen den gesamten Skopeo-Aufruf in "podman unshare",
# um das rootless Rechteproblem auf dem GitHub-Runner zu lösen.
podman unshare bash -c "
for tag in ${{ steps.metadata.outputs.tags }}; do
skopeo copy \
--dest-compress-format=zstd \
--dest-compress-level=5 \
containers-storage:localhost/${{ env.IMAGE_NAME }}:${{ env.DEFAULT_TAG }} \
docker://$REGISTRY_PATH:\$tag
done
"
# Den echten, finalen Registry-Digest abfragen
FINAL_REGISTRY_DIGEST=$(skopeo inspect docker://$REGISTRY_PATH:${{ env.DEFAULT_TAG }} --format '{{.Digest}}')