From 8b83350cb17bff605302b938f1c39eebc4fc39e3 Mon Sep 17 00:00:00 2001 From: rock Date: Sun, 6 Sep 2026 21:47:07 -0700 Subject: [PATCH] chore: remove custom runner Dockerfiles and build workflow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No longer needed — runner labels now point to official language images (golang:1.26-bookworm, node:22-bookworm, rust:1-bookworm) which already have the language tools. Docker CLI installed via apt-get in workflow steps. --- .gitea/workflows/build-runner-images.yml | 65 ---------------------- k8s/infra/forgejo-runner/Dockerfile.golang | 16 ------ k8s/infra/forgejo-runner/Dockerfile.node | 16 ------ k8s/infra/forgejo-runner/Dockerfile.rust | 20 ------- 4 files changed, 117 deletions(-) delete mode 100644 .gitea/workflows/build-runner-images.yml delete mode 100644 k8s/infra/forgejo-runner/Dockerfile.golang delete mode 100644 k8s/infra/forgejo-runner/Dockerfile.node delete mode 100644 k8s/infra/forgejo-runner/Dockerfile.rust diff --git a/.gitea/workflows/build-runner-images.yml b/.gitea/workflows/build-runner-images.yml deleted file mode 100644 index 12d1621..0000000 --- a/.gitea/workflows/build-runner-images.yml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and push runner images - -on: - push: - paths: - - 'k8s/infra/forgejo-runner/Dockerfile.golang' - - 'k8s/infra/forgejo-runner/Dockerfile.rust' - - 'k8s/infra/forgejo-runner/Dockerfile.node' - branches: - - main - pull_request: - paths: - - 'k8s/infra/forgejo-runner/Dockerfile.golang' - - 'k8s/infra/forgejo-runner/Dockerfile.rust' - - 'k8s/infra/forgejo-runner/Dockerfile.node' - - '.gitea/workflows/build-runner-images.yml' - -jobs: - build-runners: - runs-on: golang - # Unified CI pattern: golang label → golang:1.26-bookworm (Debian, root, apt-get) - # Install Node.js + docker in steps. actions/checkout@v4 needs Node.js. - steps: - - name: Install dependencies - run: | - apt-get update - apt-get install -y --no-install-recommends nodejs docker.io - rm -rf /var/lib/apt/lists/* - - - uses: actions/checkout@v4 - - - name: Get commit SHA - id: sha - run: | - SHORT_SHA=$(git rev-parse --short HEAD) - echo "short_sha=${SHORT_SHA}" >> $GITHUB_OUTPUT - - - name: Build all runner images - run: | - set -e - for RUNNER in golang rust node; do - echo "📦 Building ${RUNNER}-runner..." - docker build -f "k8s/infra/forgejo-runner/Dockerfile.${RUNNER}" \ - -t "${IMAGE_BASE}/forgejo-runner-${RUNNER}:${{ steps.sha.outputs.short_sha }}" \ - -t "${IMAGE_BASE}/forgejo-runner-${RUNNER}:latest" \ - . - echo "✅ Built ${RUNNER}-runner" - done - - - name: Push images (main only) - if: github.event_name == 'push' - run: | - echo "${REGISTRY_TOKEN}" | docker login "${REGISTRY}" \ - --username "${REGISTRY_USER}" --password-stdin - for RUNNER in golang rust node; do - docker push "${IMAGE_BASE}/forgejo-runner-${RUNNER}:${{ steps.sha.outputs.short_sha }}" - docker push "${IMAGE_BASE}/forgejo-runner-${RUNNER}:latest" - echo "✅ Pushed ${RUNNER}-runner" - done - env: - REGISTRY_USER: ${{ secrets.FORGEJO_REGISTRY_USER }} - REGISTRY_TOKEN: ${{ secrets.FORGEJO_REGISTRY_TOKEN }} - env: - REGISTRY: forgejo.riotpiao.com - IMAGE_BASE: forgejo.riotpiao.com/rock diff --git a/k8s/infra/forgejo-runner/Dockerfile.golang b/k8s/infra/forgejo-runner/Dockerfile.golang deleted file mode 100644 index 0a994c6..0000000 --- a/k8s/infra/forgejo-runner/Dockerfile.golang +++ /dev/null @@ -1,16 +0,0 @@ -FROM code.forgejo.org/forgejo/runner:6 - -# Switch to root to install packages (Alpine) -USER root - -# Alpine uses apk, not apt-get -RUN apk update && apk add --no-cache \ - nodejs \ - npm \ - docker - -# Verify installations -RUN docker --version && node --version && git --version - -# Switch back to runner user -USER 1000:1000 diff --git a/k8s/infra/forgejo-runner/Dockerfile.node b/k8s/infra/forgejo-runner/Dockerfile.node deleted file mode 100644 index 580f024..0000000 --- a/k8s/infra/forgejo-runner/Dockerfile.node +++ /dev/null @@ -1,16 +0,0 @@ -FROM code.forgejo.org/forgejo/runner:6 - -# Switch to root to install packages (Alpine) -USER root - -# Alpine uses apk, not apt-get -RUN apk update && apk add --no-cache \ - docker \ - nodejs \ - npm - -# Verify installations -RUN node --version && docker --version && git --version - -# Switch back to runner user -USER 1000:1000 diff --git a/k8s/infra/forgejo-runner/Dockerfile.rust b/k8s/infra/forgejo-runner/Dockerfile.rust deleted file mode 100644 index 51eab38..0000000 --- a/k8s/infra/forgejo-runner/Dockerfile.rust +++ /dev/null @@ -1,20 +0,0 @@ -FROM code.forgejo.org/forgejo/runner:6 - -# Switch to root to install packages (Alpine) -USER root - -# Alpine uses apk, not apt-get -RUN apk update && apk add --no-cache \ - nodejs \ - npm \ - curl \ - docker - -# Install Rust (as root, skip verification for now) -RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable || true - -# Verify core installations -RUN docker --version && node --version && git --version - -# Switch back to runner user -USER 1000:1000