This is an automated email from the ASF dual-hosted git repository.

wu-sheng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-horizon-ui.git


The following commit(s) were added to refs/heads/main by this push:
     new 419b83c  ci: SHA-pin docker actions + repo guard for publish-image
419b83c is described below

commit 419b83c455fa1b1ddd46e6e4e16e6949de95025c
Author: Wu Sheng <[email protected]>
AuthorDate: Thu May 14 20:19:06 2026 +0800

    ci: SHA-pin docker actions + repo guard for publish-image
    
    The first run of publish-image landed with `startup_failure` and zero
    scheduled jobs — Apache org policy mirrors `apache/skywalking`'s
    publish-docker.yaml: third-party actions must be SHA-pinned. Refs
    re-pinned to the same SHAs upstream uses, `actions/checkout@v6`
    downgraded to `@v4` to match, and a `github.repository ==` guard
    added so fork pushes don't try to publish.
---
 .github/workflows/publish-image.yaml | 29 +++++++++++++++++------------
 1 file changed, 17 insertions(+), 12 deletions(-)

diff --git a/.github/workflows/publish-image.yaml 
b/.github/workflows/publish-image.yaml
index 37c0fc3..031ac1e 100644
--- a/.github/workflows/publish-image.yaml
+++ b/.github/workflows/publish-image.yaml
@@ -18,10 +18,14 @@
 #   - push to `main`  (tagged with `main` + the full commit SHA)
 #   - any `v*` tag    (tagged with the version + the full commit SHA)
 #
-# The full commit SHA is the canonical, immutable identifier — moving tags
-# like `main` and `vX.Y.Z` are conveniences that *also* point at the same
-# SHA-pinned image. Operators should pull by SHA in production.
-name: Publish image
+# The full commit SHA is the canonical, immutable identifier — moving
+# tags like `main` and `vX.Y.Z` are conveniences that *also* point at
+# the same SHA-pinned image. Operators should pull by SHA in production.
+#
+# Third-party actions are SHA-pinned per ASF infra policy (mirrors the
+# `apache/skywalking` publish-docker.yaml). `if: github.repository ==`
+# also matches that pattern — fork pushes don't run the publish job.
+name: publish-image
 
 on:
   push:
@@ -44,22 +48,23 @@ env:
 
 jobs:
   build-and-push:
-    name: Build + push (${{ github.ref_type }} ${{ github.ref_name }})
+    if: github.repository == 'apache/skywalking-horizon-ui'
+    name: Build + push
     runs-on: ubuntu-latest
     timeout-minutes: 30
     steps:
-      - uses: actions/checkout@v6
+      - uses: actions/checkout@v4
         with:
           persist-credentials: false
 
       - name: Set up QEMU
-        uses: docker/setup-qemu-action@v3
+        uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392
 
       - name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v3
+        uses: 
docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f
 
       - name: Log in to GHCR
-        uses: docker/login-action@v3
+        uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9
         with:
           registry: ${{ env.REGISTRY }}
           username: ${{ github.actor }}
@@ -67,10 +72,10 @@ jobs:
 
       # The canonical tag is the full 40-char commit SHA. We also publish
       # moving tags so common workflows ("pull :main", "pull :v1.2.3")
-      # work — they all resolve back to the same SHA-tagged image.
+      # work — they all resolve back to the same SHA-pinned image.
       - name: Compute image tags
         id: meta
-        uses: docker/metadata-action@v5
+        uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
         with:
           images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
           tags: |
@@ -87,7 +92,7 @@ jobs:
             org.opencontainers.image.licenses=Apache-2.0
 
       - name: Build + push
-        uses: docker/build-push-action@v6
+        uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75
         with:
           context: .
           file: Dockerfile

Reply via email to