Build and deploy a forgejo runner to use for deployment of docker image to a registry and docker stock to a swarm cluster
  • Dockerfile 100%
Find a file
Julien Mercier eaa6337453
All checks were successful
Build and push docker images / test-runner-docker (push) Successful in 5s
Build and push docker images / test-runner-bitwarden (push) Successful in 28s
Build and push docker images / test-checkout (push) Successful in 8s
Build and push docker images / test-uv (push) Successful in 3s
Build and push docker images / deploy-forgejo-runner (push) Successful in 20s
Fix Bitwarden CLI version
2026-03-19 11:12:28 +01:00
.forgejo/workflows Fix Bitwarden CLI version 2026-03-19 11:12:28 +01:00
Dockerfile Fix Bitwarden CLI version 2026-03-19 11:12:28 +01:00
LICENSE Init 2026-03-02 20:22:28 +01:00
README.md Fix Bitwarden CLI version 2026-03-19 11:12:28 +01:00

forgejo-runner

Custom image to use as a forgejo runner for deployment.

Should include:

  • Bitwarden CLI: To retrieve secrets from Vaultwarden
  • Docker CLI: To connect to the docker swarm daemon
  • SSH Client: To connect to the docker swarm host
  • NodeJS: For the forgejo git clone action
  • Uv

Warning

: Bitwarden CLI is limited to version 2026.1.0

Build requirements:

Requirements to build and push this image to the registry

Connect to a docker daemon to build the image

  • secrets.SSH_PRIVATE_KEY
  • vars.SSH_HOST
  • vars.SSH_USER

Connect to the registry to push the image

  • secrets.DR_PASSWORD
  • vars.DR_LOGIN

Usage requirements

Access to Vault

To connect to the Vaultwaarden, this environment variables should be set from secrets:

  • BW_CLIENTID
  • BW_CLIENTSECRET
  • BW_SERVER
  • BW_PASSWORD

Example:

    - name: Login to Bitwarden (API key)
    env:
        BW_CLIENTID: ${{ secrets.BITWARDEN_CLIENT_ID }}
        BW_CLIENTSECRET: ${{ secrets.BITWARDEN_CLIENT_SECRET }}
        BW_SERVER: ${{ secrets.BITWARDEN_SERVER }}
        BW_PASSWORD: ${{ secrets.BITWARDEN_PASSWORD }}

Access to docker

  • SSH_PRIVATE_KEY
  • SSH_HOST
  • SSH_USER