diff --git a/.forgejo/runner/Dockerfile b/.forgejo/runner/Dockerfile new file mode 100644 index 0000000..6e3bfa1 --- /dev/null +++ b/.forgejo/runner/Dockerfile @@ -0,0 +1,7 @@ +FROM code.forgejo.org/oci/docker:cli + +# Install Node 24 from Alpine +RUN apk add --no-cache nodejs-current npm bash curl + +# Verify installations +RUN docker --version && node --version && npm --version \ No newline at end of file diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index 25a5d56..13c76a6 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -8,9 +8,28 @@ on: - "v*.*.*" # only match version tags like v1.0.0 jobs: + prepare: + name: Build & push runner image + runs-on: docker-cli-node24 + steps: + - name: Checkout runner Dockerfile + uses: actions/checkout@v5 + with: + sparse-checkout: | + .forgejo/runner/Dockerfile + sparse-checkout-cone-mode: false + fetch-depth: 1 + + - name: Build & push runner image + run: | + docker build --network=host -t ${{ vars.REGISTRY_URL }}/minecraftstatus/runner:latest -f .forgejo/runner/Dockerfile . + docker push ${{ vars.REGISTRY_URL }}/minecraftstatus/runner:latest + build-and-deploy: name: Build, push & deploy runs-on: docker-cli-node24 + container: + image: ${{ vars.REGISTRY_URL }}/minecraftstatus/runner:latest steps: - name: Checkout code uses: actions/checkout@v5