From aa7b777a2eb40ae16e889eb85bd5d3adba53d3e9 Mon Sep 17 00:00:00 2001 From: merlin Date: Sat, 1 Nov 2025 16:39:38 +0000 Subject: [PATCH 1/8] fix(ci): add clean logic --- .gitea/workflows/dev.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index 36a463d..77244ea 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -31,3 +31,6 @@ jobs: echo "Pushing image: ${IMAGE_NAME}" docker push ${IMAGE_NAME} echo "Successfully pushed: ${IMAGE_NAME}" + - name: Clean env + run: docker rmi $(docker images -q) + -- 2.49.1 From 3ca5a6e0ec34d85afbd4b2322d8c62d1e61bd23f Mon Sep 17 00:00:00 2001 From: merlin Date: Sat, 1 Nov 2025 16:41:17 +0000 Subject: [PATCH 2/8] fix(ci): fix clean logic --- .gitea/workflows/dev.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index 77244ea..dbc31ca 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -32,5 +32,5 @@ jobs: docker push ${IMAGE_NAME} echo "Successfully pushed: ${IMAGE_NAME}" - name: Clean env - run: docker rmi $(docker images -q) + run: docker rmi -f $(docker images -q) -- 2.49.1 From 8a1c11746cd51a1a9777141717b81f4e8908cc40 Mon Sep 17 00:00:00 2001 From: merlin Date: Sun, 2 Nov 2025 01:00:09 +0800 Subject: [PATCH 3/8] fix(ci): fix cleaning logic --- .gitea/workflows/dev.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index dbc31ca..10b95c0 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -31,6 +31,6 @@ jobs: echo "Pushing image: ${IMAGE_NAME}" docker push ${IMAGE_NAME} echo "Successfully pushed: ${IMAGE_NAME}" - - name: Clean env - run: docker rmi -f $(docker images -q) + docker rmi ${IMAGE_NAME} + echo "cleaned up local image" -- 2.49.1 From ac03276f0e67184e1fac9b15f3d11fddc941fa7f Mon Sep 17 00:00:00 2001 From: merlin Date: Sun, 2 Nov 2025 01:03:44 +0800 Subject: [PATCH 4/8] feat(ci): update builder to release version --- .gitea/workflows/dev.yaml | 2 +- .gitea/workflows/tag.yaml | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index 10b95c0..be17ec3 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -8,7 +8,7 @@ jobs: build: runs-on: gitea-official-runner container: - image: harbor.merlin.xin/testing/merlin/action_builder:471389b69e23417ab4e86981d109c79635d7219b + image: harbor.merlin.xin/release/merlin/action_builder:v0.0.1 steps: - name: Checkout code uses: actions/checkout@v4 diff --git a/.gitea/workflows/tag.yaml b/.gitea/workflows/tag.yaml index 89cf697..1f70955 100644 --- a/.gitea/workflows/tag.yaml +++ b/.gitea/workflows/tag.yaml @@ -8,7 +8,7 @@ jobs: build: runs-on: gitea-official-runner container: - image: harbor.merlin.xin/testing/merlin/action_builder:471389b69e23417ab4e86981d109c79635d7219b + image: harbor.merlin.xin/release/merlin/action_builder:v0.0.1 steps: - name: Checkout code uses: actions/checkout@v4 @@ -30,3 +30,5 @@ jobs: echo "Pushing image: ${IMAGE_NAME}" docker push ${IMAGE_NAME} echo "Successfully pushed: ${IMAGE_NAME}" + docker rmi ${IMAGE_NAME} + echo "cleaned up local image" -- 2.49.1 From b4a18dd4850546a80dd4e5aabd40fa1b09472bc1 Mon Sep 17 00:00:00 2001 From: merlin Date: Thu, 6 Nov 2025 11:49:49 +0800 Subject: [PATCH 5/8] feat: add helm package ability --- Dockerfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Dockerfile b/Dockerfile index 8798c88..2e15977 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,6 +3,12 @@ FROM harbor.merlin.xin/mirrors/docker.io/library/docker:24.0.6-dind # 安装 Node.js RUN apk add --no-cache bash curl git nodejs npm +# 安装 helm CLI +RUN curl -fsSL https://get.helm.sh/helm-v3.13.2-linux-amd64.tar.gz -o helm.tar.gz \ + && tar -zxvf helm.tar.gz \ + && mv linux-amd64/helm /usr/local/bin/helm \ + && rm -rf linux-amd64 helm.tar.gz + WORKDIR /workspace ENTRYPOINT [ "/bin/bash" ] \ No newline at end of file -- 2.49.1 From 8cad9e0651839763cab06472c3f8e25b1ea27a5b Mon Sep 17 00:00:00 2001 From: merlin Date: Thu, 5 Mar 2026 14:57:08 +0800 Subject: [PATCH 6/8] chore: change for fitting new server system --- .gitea/workflows/dev.yaml | 72 +++++++++++++++++++-------------------- .gitea/workflows/tag.yaml | 68 ++++++++++++++++++------------------ Dockerfile | 26 +++++++------- README.md | 8 ++--- 4 files changed, 86 insertions(+), 88 deletions(-) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index be17ec3..67a59a7 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -1,36 +1,36 @@ -name: Docker Image CI -on: - push: - branches: - - dev - -jobs: - build: - runs-on: gitea-official-runner - container: - image: harbor.merlin.xin/release/merlin/action_builder:v0.0.1 - steps: - - name: Checkout code - uses: actions/checkout@v4 - - name: docker login - env: - HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} - HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} - HARBOR_URL: ${{ vars.HARBOR_URL }} - run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} - - name: Build and push Docker images - env: - HARBOR_URL: ${{ vars.HARBOR_URL }} - TAG: ${{ github.sha }} - REPOSITORY: ${{ github.repository }} - run: | - ROOT_DIR=$(pwd) - IMAGE_NAME="${HARBOR_URL}/testing/$REPOSITORY:${TAG}" - echo "Building image: ${IMAGE_NAME}" - docker build -t ${IMAGE_NAME} . - echo "Pushing image: ${IMAGE_NAME}" - docker push ${IMAGE_NAME} - echo "Successfully pushed: ${IMAGE_NAME}" - docker rmi ${IMAGE_NAME} - echo "cleaned up local image" - +name: Docker Image CI +on: + push: + branches: + - dev + +jobs: + build: + runs-on: gitea-official-runner + container: + image: registry.merlin.xin/candlelight/action_builder:v0.0.1 + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: docker login + env: + HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} + HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} + HARBOR_URL: ${{ vars.HARBOR_URL }} + run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} + - name: Build and push Docker images + env: + HARBOR_URL: ${{ vars.HARBOR_URL }} + TAG: ${{ github.sha }} + REPOSITORY: ${{ github.repository }} + run: | + ROOT_DIR=$(pwd) + IMAGE_NAME="${HARBOR_URL}/testing/candlelight/$REPOSITORY:${TAG}" + echo "Building image: ${IMAGE_NAME}" + docker build -t ${IMAGE_NAME} . + echo "Pushing image: ${IMAGE_NAME}" + docker push ${IMAGE_NAME} + echo "Successfully pushed: ${IMAGE_NAME}" + docker rmi ${IMAGE_NAME} + echo "cleaned up local image" + diff --git a/.gitea/workflows/tag.yaml b/.gitea/workflows/tag.yaml index 1f70955..aeefb36 100644 --- a/.gitea/workflows/tag.yaml +++ b/.gitea/workflows/tag.yaml @@ -1,34 +1,34 @@ -name: Docker Image CI -on: - push: - tags: - - '*' - -jobs: - build: - runs-on: gitea-official-runner - container: - image: harbor.merlin.xin/release/merlin/action_builder:v0.0.1 - steps: - - name: Checkout code - uses: actions/checkout@v4 - - name: docker login - env: - HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} - HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} - HARBOR_URL: ${{ vars.HARBOR_URL }} - run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} - - name: Build and push Docker images - env: - HARBOR_URL: ${{ vars.HARBOR_URL }} - REPOSITORY: ${{ github.repository }} - run: | - ROOT_DIR=$(pwd) - IMAGE_NAME="${HARBOR_URL}/release/$REPOSITORY:$GITHUB_REF_NAME" - echo "Building image: ${IMAGE_NAME}" - docker build -t ${IMAGE_NAME} . - echo "Pushing image: ${IMAGE_NAME}" - docker push ${IMAGE_NAME} - echo "Successfully pushed: ${IMAGE_NAME}" - docker rmi ${IMAGE_NAME} - echo "cleaned up local image" +name: Docker Image CI +on: + push: + tags: + - '*' + +jobs: + build: + runs-on: gitea-official-runner + container: + image: registry.merlin.xin/candlelight/action_builder:v0.0.1 + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: docker login + env: + HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} + HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} + HARBOR_URL: ${{ vars.HARBOR_URL }} + run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} + - name: Build and push Docker images + env: + HARBOR_URL: ${{ vars.HARBOR_URL }} + REPOSITORY: ${{ github.repository }} + run: | + ROOT_DIR=$(pwd) + IMAGE_NAME="${HARBOR_URL}/candlelight/$REPOSITORY:$GITHUB_REF_NAME" + echo "Building image: ${IMAGE_NAME}" + docker build -t ${IMAGE_NAME} . + echo "Pushing image: ${IMAGE_NAME}" + docker push ${IMAGE_NAME} + echo "Successfully pushed: ${IMAGE_NAME}" + docker rmi ${IMAGE_NAME} + echo "cleaned up local image" diff --git a/Dockerfile b/Dockerfile index 2e15977..8c1f8c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,14 +1,14 @@ -FROM harbor.merlin.xin/mirrors/docker.io/library/docker:24.0.6-dind - -# 安装 Node.js -RUN apk add --no-cache bash curl git nodejs npm - -# 安装 helm CLI -RUN curl -fsSL https://get.helm.sh/helm-v3.13.2-linux-amd64.tar.gz -o helm.tar.gz \ - && tar -zxvf helm.tar.gz \ - && mv linux-amd64/helm /usr/local/bin/helm \ - && rm -rf linux-amd64 helm.tar.gz - -WORKDIR /workspace - +FROM registry.merlin.xin/library/docker:24.0.6-dind + +# 安装 Node.js +RUN apk add --no-cache bash curl git nodejs npm + +# 安装 helm CLI +RUN curl -fsSL https://get.helm.sh/helm-v3.13.2-linux-amd64.tar.gz -o helm.tar.gz \ + && tar -zxvf helm.tar.gz \ + && mv linux-amd64/helm /usr/local/bin/helm \ + && rm -rf linux-amd64 helm.tar.gz + +WORKDIR /workspace + ENTRYPOINT [ "/bin/bash" ] \ No newline at end of file diff --git a/README.md b/README.md index 459a2ec..26fe8ef 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,3 @@ -# action_builder - -自己构建的一个方便使用的docker构建器 - -他一定不是最快的,但是一定是最方便、最直观的 \ No newline at end of file +# action_builder for gitea_action + +全量的镜像构建器,可以独立构建应用镜像和chart包 \ No newline at end of file -- 2.49.1 From f24993bd5180fac7d5d045b2929b4028de9931b7 Mon Sep 17 00:00:00 2001 From: merlin Date: Thu, 5 Mar 2026 15:01:19 +0800 Subject: [PATCH 7/8] workflows: use correct runner label --- .gitea/workflows/dev.yaml | 2 +- .gitea/workflows/tag.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index 67a59a7..3eb8749 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -6,7 +6,7 @@ on: jobs: build: - runs-on: gitea-official-runner + runs-on: gitea-runner-group-candlelight container: image: registry.merlin.xin/candlelight/action_builder:v0.0.1 steps: diff --git a/.gitea/workflows/tag.yaml b/.gitea/workflows/tag.yaml index aeefb36..11ed489 100644 --- a/.gitea/workflows/tag.yaml +++ b/.gitea/workflows/tag.yaml @@ -6,7 +6,7 @@ on: jobs: build: - runs-on: gitea-official-runner + runs-on: gitea-runner-group-candlelight container: image: registry.merlin.xin/candlelight/action_builder:v0.0.1 steps: -- 2.49.1 From 2281229dcff3ea7b06a15caa2925ed123e1afae9 Mon Sep 17 00:00:00 2001 From: merlin Date: Thu, 5 Mar 2026 15:20:31 +0800 Subject: [PATCH 8/8] fix: workflow --- .gitea/workflows/dev.yaml | 2 +- .gitea/workflows/tag.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml index 3eb8749..2682b95 100644 --- a/.gitea/workflows/dev.yaml +++ b/.gitea/workflows/dev.yaml @@ -25,7 +25,7 @@ jobs: REPOSITORY: ${{ github.repository }} run: | ROOT_DIR=$(pwd) - IMAGE_NAME="${HARBOR_URL}/testing/candlelight/$REPOSITORY:${TAG}" + IMAGE_NAME="${HARBOR_URL}/testing/$REPOSITORY:${TAG}" echo "Building image: ${IMAGE_NAME}" docker build -t ${IMAGE_NAME} . echo "Pushing image: ${IMAGE_NAME}" diff --git a/.gitea/workflows/tag.yaml b/.gitea/workflows/tag.yaml index 11ed489..b9ccb9c 100644 --- a/.gitea/workflows/tag.yaml +++ b/.gitea/workflows/tag.yaml @@ -24,7 +24,7 @@ jobs: REPOSITORY: ${{ github.repository }} run: | ROOT_DIR=$(pwd) - IMAGE_NAME="${HARBOR_URL}/candlelight/$REPOSITORY:$GITHUB_REF_NAME" + IMAGE_NAME="${HARBOR_URL}/$REPOSITORY:$GITHUB_REF_NAME" echo "Building image: ${IMAGE_NAME}" docker build -t ${IMAGE_NAME} . echo "Pushing image: ${IMAGE_NAME}" -- 2.49.1