From 499558b7b7250a19b04cc2f481f3e55e9f485940 Mon Sep 17 00:00:00 2001 From: gunnar Date: Fri, 12 Jun 2026 16:57:15 +0200 Subject: [PATCH] several changes --- .gitea/workflows/build.yml | 53 ++++++++++++++++++++++---------------- renovate.json | 1 + 2 files changed, 32 insertions(+), 22 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 1669034..7cbb5a6 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -51,14 +51,17 @@ jobs: fi - name: Checkout - uses: actions/checkout@v6 + # v6.0.3 - Verhindert Klon-Fehler im act_runner + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v6.0.3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v4 + # v4.0.1 + uses: docker/setup-buildx-action@b5ba51281db4430f3465b52478a8b18538ca9468 # v4.0.1 - name: Image Metadata id: metadata - uses: docker/metadata-action@v6 + # v6.1.0 + uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v6.1.0 with: images: ${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }} tags: | @@ -81,14 +84,16 @@ jobs: - name: Login to Gitea Container Registry if: github.event_name != 'pull_request' - uses: docker/login-action@v4 + # v4.0.0 + uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v4.0.0 with: registry: ${{ env.REGISTRY_HOST }} username: ${{ github.repository_owner }} password: ${{ secrets.REGISTRY }} - name: Build and Push Image (Native OCI via Buildx) - uses: docker/build-push-action@v7 + # v7.1.0 + uses: docker/build-push-action@471d1dc4e07e5cdedd4c2171150001c434f0b7a4 # v7.1.0 id: build_image with: context: . @@ -97,23 +102,27 @@ jobs: tags: ${{ steps.metadata.outputs.tags }} labels: ${{ steps.metadata.outputs.labels }} + - name: Install Cosign + if: github.event_name != 'pull_request' && env.IS_TEST_BUILD == 'false' + # Vollständig gehärteter SHA für cosign-installer v4.1.2 + uses: sigstore/cosign-installer@6f9f177c9960530e461b6c7ed1eec3f02e8e3605 # v4.1.2 + - name: Sign container image if: github.event_name != 'pull_request' && env.IS_TEST_BUILD == 'false' - uses: sigstore/cosign-sign-action@v3.1.1 - with: - # Bild-Referenz ohne Tag, da die Action den Digest oder Tag separat trennt - image-repository: ${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }} - image-tag: ${{ env.IMAGE_TAG }} + env: + COSIGN_PRIVATE_KEY: ${{ secrets.SIGNING_SECRET }} + COSIGN_PASSWORD: "" + run: | + # WICHTIG: Cosign v3 benötigt zwingend den exakten Image-Digest, wenn OCI-Referrers im Spiel sind. + # Wir holen uns den Digest direkt aus dem Output des Buildx-Schritts. + IMAGE_DIGEST="${{ steps.build_image.outputs.digest }}" + IMAGE_REF="${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}@${IMAGE_DIGEST}" - # Authentifizierung für deine Gitea-Registry (wichtig, damit die Action das Image pushen darf) - registry-username: ${{ github.repository_owner }} - registry-password: ${{ secrets.REGISTRY }} - - # Deine Keys aus den Secrets geladen - cosign-private-key: ${{ secrets.SIGNING_SECRET }} - cosign-password: "" - - # Deine spezifischen Flags für den Gitea/bootc Legacy-Bypass: - registry-referrers-api: 'legacy' - cosign-tlog-upload: 'false' - use-signing-config: 'false' + echo "Signiere Image via Digest: ${IMAGE_REF}" + cosign sign -y \ + --key env://COSIGN_PRIVATE_KEY \ + --use-signing-config=false \ + --new-bundle-format=false \ + --tlog-upload=false \ + --registry-referrers-mode=legacy \ + "${IMAGE_REF}" diff --git a/renovate.json b/renovate.json index 6d53081..3ef4b31 100644 --- a/renovate.json +++ b/renovate.json @@ -5,6 +5,7 @@ ], "labels": ["dependencies"], "enabledManagers": ["github-actions"], + "pinDigests": true, "packageRules": [ { "matchManagers": ["github-actions"],