From 84de57cadc155f6c7ce513f5618139e57ccb74d9 Mon Sep 17 00:00:00 2001 From: Daniel Liu <139250065@qq.com> Date: Fri, 16 Jan 2026 18:17:16 +0800 Subject: [PATCH] cicd: store git commit hash into docker image (#1931) --- .github/workflows/ci.yml | 4 ++-- cicd/Dockerfile | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 027e2ffb98..be4b301861 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -70,7 +70,7 @@ jobs: - name: Login to Docker Hub run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin - name: Build Docker image - run: docker build -t xinfinorg/xdposchain:${GITHUB_REF#refs/tags/} -f cicd/Dockerfile . + run: docker build --build-arg GIT_COMMIT=${GITHUB_SHA} -t xinfinorg/xdposchain:${GITHUB_REF#refs/tags/} -f cicd/Dockerfile . - name: Push Docker image run: docker push xinfinorg/xdposchain:${GITHUB_REF#refs/tags/} @@ -92,7 +92,7 @@ jobs: docker pull xinfinorg/devnet:latest docker tag xinfinorg/devnet:latest xinfinorg/devnet:previous docker rmi xinfinorg/devnet:latest - docker build -t xinfinorg/devnet:latest -f cicd/Dockerfile . + docker build --build-arg GIT_COMMIT=${GITHUB_SHA} -t xinfinorg/devnet:latest -f cicd/Dockerfile . docker tag xinfinorg/devnet:latest $image_name docker push $image_name docker push xinfinorg/devnet:latest diff --git a/cicd/Dockerfile b/cicd/Dockerfile index b5f55a7334..b072f890fe 100644 --- a/cicd/Dockerfile +++ b/cicd/Dockerfile @@ -1,3 +1,7 @@ +# Support setting various labels on the final image +ARG GIT_COMMIT="" +ENV GIT_COMMIT="$GIT_COMMIT" + FROM golang:1.25-alpine AS builder RUN apk add make build-base linux-headers @@ -51,3 +55,8 @@ EXPOSE 8555 EXPOSE 30303 ENTRYPOINT ["bash","/work/entry.sh"] + +# Add some metadata labels to help programmatic image consumption +ARG GIT_COMMIT="" +ENV GIT_COMMIT="$GIT_COMMIT" +LABEL git_commit="$GIT_COMMIT"