You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2026/09/03 12:21:43 UTC

(skywalking-ai-sessionizer) branch main updated: Tag images and artifacts with the complete commit id

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-ai-sessionizer.git


The following commit(s) were added to refs/heads/main by this push:
     new 9e62195  Tag images and artifacts with the complete commit id
9e62195 is described below

commit 9e621957706a2dda0c25886404cb0c395cdbdf39
Author: Wu Sheng <wu...@foxmail.com>
AuthorDate: Thu Sep 3 20:21:37 2026 +0800

    Tag images and artifacts with the complete commit id
    
    A commit build was tagged sha- and eight characters. It is now the
    whole 40-character id, which is what a person copies from git and what
    the revision label already carried. The binaries artifact and the
    version stamped into a non-release build use the same id.
---
 .github/workflows/ci.yaml        | 9 +++++----
 README.md                        | 4 ++--
 docs/en/guides/how-to-release.md | 2 +-
 docs/en/setup/container-image.md | 7 ++++---
 4 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 0073ed7..bf34c8a 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -109,7 +109,7 @@ jobs:
           if [ "$EVENT" = "workflow_dispatch" ]; then ref="refs/tags/$INPUT_TAG"; fi
           case "$ref" in
             refs/tags/v*) v="${ref#refs/tags/v}" ;;
-            *) v="$(git rev-parse --short=8 HEAD)" ;;
+            *) v="$(git rev-parse HEAD)" ;;
           esac
           echo "version=$v" >> "$GITHUB_OUTPUT"
       # Every platform is cross-compiled from one runner: Go needs no
@@ -177,8 +177,9 @@ jobs:
           set -eu
           image=$(echo "$IMAGE" | tr '[:upper:]' '[:lower:]')
           sha=$(git rev-parse HEAD)
-          tags="$image:sha-${sha::8}"
-          version="sha-${sha::8}"
+          # Every build is tagged with its complete commit id, never moved.
+          tags="$image:$sha"
+          version="$sha"
           ref="$GITHUB_REF"
           if [ "$EVENT" = "workflow_dispatch" ]; then ref="refs/tags/$INPUT_TAG"; fi
           case "$EVENT:$ref" in
@@ -187,7 +188,7 @@ jobs:
               tags="$tags,$image:main" ;;
             push:refs/tags/v*)
               # A tag is a release candidate until the vote passes, so a tag
-              # push publishes the immutable sha tag and nothing else.
+              # push publishes the commit tag and nothing else.
               echo "::notice::${ref#refs/tags/} is a candidate; version tags are attached when its GitHub release is published" ;;
             release:refs/tags/v*|workflow_dispatch:refs/tags/v*)
               version="${ref#refs/tags/v}"
diff --git a/README.md b/README.md
index 0b3ffbe..8a914a7 100644
--- a/README.md
+++ b/README.md
@@ -125,10 +125,10 @@ docker run --rm -p 8787:8787 -v "$PWD/data:/asz/data" \
 | `0.1` | the newest patch of that line |
 | `latest` | the newest release |
 | `main` | the development head |
-| `sha-<commit>` | one commit, never moved |
+| `<commit id>` | one commit, by its complete id, never moved |
 
 A `v*` tag is a release candidate until the Apache vote passes, so pushing one
-publishes only its `sha-` tag. The version tags are attached when the GitHub
+publishes only its commit tag. The version tags are attached when the GitHub
 release is published. Any `asz` command runs the same way: put it after the
 image name. See [Container Image](docs/en/setup/container-image.md).
 `make docker` builds the image locally.
diff --git a/docs/en/guides/how-to-release.md b/docs/en/guides/how-to-release.md
index 32fa3d8..6c7dbfb 100644
--- a/docs/en/guides/how-to-release.md
+++ b/docs/en/guides/how-to-release.md
@@ -38,7 +38,7 @@ The platforms are the `PLATFORMS` list in the Makefile: macOS on Apple silicon a
 x86-64 and ARM 64, and Windows on x86-64. Every one is cross-compiled from the release manager's
 machine, with the Go version the module declares.
 
-Pushing the tag builds the container image and publishes it under its `sha-` tag only, and builds
+Pushing the tag builds the container image and publishes it under its commit id only, and builds
 the same binary packages as a workflow artifact. The version tags and the release assets wait for
 the vote.
 
diff --git a/docs/en/setup/container-image.md b/docs/en/setup/container-image.md
index cd22b36..c7d6dfa 100644
--- a/docs/en/setup/container-image.md
+++ b/docs/en/setup/container-image.md
@@ -20,14 +20,15 @@ read the same way it is on a host.
 | `0.1` | the newest patch release of that line | on each patch |
 | `latest` | the newest release | on each release |
 | `main` | the development head | on each push to `main` |
-| `sha-<commit>` | one commit | never |
+| `<commit id>` | one commit, by its complete 40-character id | never |
 
 A `v*` tag is a release candidate until the Apache vote has passed. Pushing one publishes only its
-`sha-` tag. The version tags are attached when the GitHub release is published, which happens after
+commit tag. The version tags are attached when the GitHub release is published, which happens after
 the vote. A pre-release version such as `0.2.0-rc1` gets its own tag and moves nothing else.
 
 Every image carries `org.opencontainers.image.version` and `org.opencontainers.image.revision`
-labels, and `asz version` inside it prints the same version.
+labels, and `asz version` inside it prints the same version: the release version, or the complete
+commit id for a build that is not a release.
 
 ## Serve a storage root