variables: - &app_name "mission-control" when: - event: release steps: build-web: image: woodpeckerci/plugin-docker-buildx privileged: true settings: build_args: APP_VERSION: ${CI_COMMIT_TAG} platforms: linux/amd64 registry: git.georgew.dev repo: git.georgew.dev/georgew/mission-control-web tags: - latest - ${CI_COMMIT_TAG##v} dockerfile: Dockerfile tags: [ latest ] username: { from_secret: FORGEJO_USER } password: { from_secret: FORGEJO_TOKEN } build-worker: image: woodpeckerci/plugin-docker-buildx privileged: true settings: platforms: linux/amd64 registry: git.georgew.dev repo: git.georgew.dev/georgew/mission-control-worker dockerfile: Worker.Dockerfile tags: [ latest ] username: { from_secret: FORGEJO_USER } password: { from_secret: FORGEJO_TOKEN } deploy: image: docker:28-cli privileged: true volumes: - /var/run/docker.sock:/var/run/docker.sock - /home/george:/home/george environment: APP_NAME: *app_name FORGEJO_USER: { from_secret: FORGEJO_USER } FORGEJO_TOKEN: { from_secret: FORGEJO_TOKEN } commands: - echo $FORGEJO_TOKEN | docker login git.georgew.dev -u $FORGEJO_USER --password-stdin - mkdir -p /home/george/$APP_NAME/data - cp -r . /home/george/$APP_NAME/ - docker compose -p $APP_NAME -f /home/george/$APP_NAME/docker-compose.yaml pull - docker compose -p $APP_NAME -f /home/george/$APP_NAME/docker-compose.yaml up -d --force-recreate --remove-orphans