From e937907edff4bb8aefe02cfa8ef2f757705a451b Mon Sep 17 00:00:00 2001 From: merlin Date: Thu, 6 Nov 2025 15:41:30 +0800 Subject: [PATCH] feat: add action_dployer specialized image --- .gitea/workflows/dev.yaml | 36 ++++++++++++++++++++++++++++++++++++ .gitea/workflows/tag.yaml | 34 ++++++++++++++++++++++++++++++++++ Dockerfile | 8 ++++++++ README.md | 3 +++ 4 files changed, 81 insertions(+) create mode 100644 .gitea/workflows/dev.yaml create mode 100644 .gitea/workflows/tag.yaml create mode 100644 Dockerfile create mode 100644 README.md diff --git a/.gitea/workflows/dev.yaml b/.gitea/workflows/dev.yaml new file mode 100644 index 0000000..be17ec3 --- /dev/null +++ b/.gitea/workflows/dev.yaml @@ -0,0 +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" + diff --git a/.gitea/workflows/tag.yaml b/.gitea/workflows/tag.yaml new file mode 100644 index 0000000..1f70955 --- /dev/null +++ b/.gitea/workflows/tag.yaml @@ -0,0 +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" diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..9e204c5 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,8 @@ +FROM docker.io/alpine/k8s:1.30.4 + +ENV TZ=Asia/Shanghai \ + LANG=C.UTF-8 + +RUN apk add --no-cache nodejs git + +WORKDIR /workspace \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..a6d3348 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# action_dployer + +自己构建的action部署镜像,依赖chart包来部署应用到rke2集群 \ No newline at end of file