From 9fdf43bbf71564a3b508868f1a65399220e8060d Mon Sep 17 00:00:00 2001 From: rock Date: Sat, 5 Sep 2026 13:47:30 -0700 Subject: [PATCH] ci: add Forgejo CI/CD workflow for memory image build & push --- .gitea/workflows/build-push.yml | 53 +++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .gitea/workflows/build-push.yml diff --git a/.gitea/workflows/build-push.yml b/.gitea/workflows/build-push.yml new file mode 100644 index 0000000..cae0d4f --- /dev/null +++ b/.gitea/workflows/build-push.yml @@ -0,0 +1,53 @@ +name: Build & Push Memory Image + +on: + push: + branches: + - main + +jobs: + build-push: + runs-on: golang + container: + image: docker:27-cli + volumes: + - /docker-certs/client:/docker-certs/client:ro + env: + DOCKER_HOST: tcp://localhost:2376 + DOCKER_TLS_VERIFY: "1" + DOCKER_CERT_PATH: /docker-certs/client + REGISTRY: forgejo.riotpiao.com + IMAGE: forgejo.riotpiao.com/rock/poimen-memory + steps: + - name: Install git + run: apk add --no-cache git + + - name: Checkout code + uses: actions/checkout@v4 + + - name: Get short SHA + id: sha + run: | + SHORT_SHA=$(git rev-parse --short HEAD) + echo "short_sha=${SHORT_SHA}" >> $GITHUB_OUTPUT + + - name: Registry login + run: | + echo "${REGISTRY_TOKEN}" | docker login "${REGISTRY}" \ + --username "${REGISTRY_USER}" --password-stdin + env: + REGISTRY_USER: ${{ secrets.FORGEJO_REGISTRY_USER }} + REGISTRY_TOKEN: ${{ secrets.FORGEJO_REGISTRY_TOKEN }} + + - name: Build image + run: | + docker build --no-cache \ + -t "${IMAGE}:${{ steps.sha.outputs.short_sha }}" \ + -t "${IMAGE}:latest" \ + . + + - name: Push image + run: | + docker push "${IMAGE}:${{ steps.sha.outputs.short_sha }}" + docker push "${IMAGE}:latest" + echo "✓ Image pushed: ${IMAGE}:${{ steps.sha.outputs.short_sha }}"