From 27e3ad16772af93eaf3c3519b84bb8d8a5a881de Mon Sep 17 00:00:00 2001 From: fithwum Date: Thu, 17 Jul 2025 11:28:07 -0700 Subject: [PATCH] test --- .gitea/workflows/pipeline.yml | 45 +++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/.gitea/workflows/pipeline.yml b/.gitea/workflows/pipeline.yml index 6532c12..bfa99fb 100644 --- a/.gitea/workflows/pipeline.yml +++ b/.gitea/workflows/pipeline.yml @@ -168,16 +168,6 @@ jobs: with: fetch-depth: 0 - - name: Get base image digests - id: get_digest - run: | - alpine_digest=$(docker inspect --format='{{index .RepoDigests 0}}' alpine:latest || echo "unknown") - debian_digest=$(docker inspect --format='{{index .RepoDigests 0}}' gitea.fithwum.tech/${{ secrets.GIT_USERNAME }}/debian-base:bookworm || echo "unknown") - basic_digest=$(docker inspect --format='{{index .RepoDigests 0}}' gitea.fithwum.tech/${{ secrets.GIT_USERNAME }}/debian-base:bookworm || echo "unknown") - echo "alpine_digest=$alpine_digest" - echo "debian_digest=$debian_digest" - echo "basic_digest=$basic_digest" - - name: Generate build-info.json only for updated variants env: IMAGE_REGISTRY: ${{ env.IMAGE_REGISTRY }} @@ -212,25 +202,40 @@ jobs: versions+=("basic") fi + # Pull and get digests of base images ONCE + alpine_base_digest=$(docker inspect --format='{{index .RepoDigests 0}}' alpine:latest || echo "unknown") + debian_base_digest=$(docker inspect --format='{{index .RepoDigests 0}}' gitea.fithwum.tech/${{ secrets.GIT_USERNAME }}/debian-base:bookworm || echo "unknown") + basic_base_digest=$debian_base_digest + for version in "${versions[@]}"; do echo "[INFO] Generating build-info.json for $version" mkdir -p "$version" infofile="$version/build-info.json" image="${IMAGE_REGISTRY}/${IMAGE_ORG}/${IMAGE_REPO_TS}:$version" - alpine_digest=$(docker inspect --format='{{index .RepoDigests 0}}' alpine:latest || echo "unknown") - debian_digest=$(docker inspect --format='{{index .RepoDigests 0}}' gitea.fithwum.tech/${{ secrets.GIT_USERNAME }}/debian-base:bookworm || echo "unknown") - basic_digest=$(docker inspect --format='{{index .RepoDigests 0}}' gitea.fithwum.tech/${{ secrets.GIT_USERNAME }}/debian-base:bookworm || echo "unknown") + echo "[DEBUG] Inspecting image: $image" + + docker pull "$image" || echo "[WARN] Failed to pull $image" + + digest=$(docker inspect --format='{{index .RepoDigests 0}}' "$image" 2>/dev/null || echo "unknown") + size_bytes=$(docker inspect --format='{{.Size}}' "$image" 2>/dev/null || echo "0") size_human=$(human_size "$size_bytes") base_digest="unknown" - if [ "$version" = "alpine" ]; then - base_digest="${alpine_digest:-unknown}" - elif [ "$version" = "debian" ]; then - base_digest="${debian_digest:-unknown}" - elif [ "$version" = "basic" ]; then - base_digest="${basic_digest:-unknown}" - fi + case "$version" in + alpine) base_digest="$alpine_base_digest" ;; + debian) base_digest="$debian_base_digest" ;; + basic) base_digest="$basic_base_digest" ;; + esac + + # base_digest="unknown" + # if [ "$version" = "alpine" ]; then + # base_digest="${alpine_digest:-unknown}" + # elif [ "$version" = "debian" ]; then + # base_digest="${debian_digest:-unknown}" + # elif [ "$version" = "basic" ]; then + # base_digest="${basic_digest:-unknown}" + # fi echo "[DEBUG] base_digest for $version = $base_digest"