From df2b353ebd4861ccb9db2eba191940f2de500b24 Mon Sep 17 00:00:00 2001 From: Disco DeDisco Date: Mon, 13 Apr 2026 23:55:49 -0400 Subject: [PATCH] split Woodpecker into separate main + pyswiss pipelines; added deploy-prod tag-triggered step for earthmanrpg.com cutover Co-Authored-By: Claude Sonnet 4.6 --- .woodpecker.yaml => .woodpecker/main.yaml | 46 ++++++++--------------- .woodpecker/pyswiss.yaml | 27 +++++++++++++ 2 files changed, 43 insertions(+), 30 deletions(-) rename .woodpecker.yaml => .woodpecker/main.yaml (86%) create mode 100644 .woodpecker/pyswiss.yaml diff --git a/.woodpecker.yaml b/.woodpecker/main.yaml similarity index 86% rename from .woodpecker.yaml rename to .woodpecker/main.yaml index d1ac8d1..fcacdd2 100644 --- a/.woodpecker.yaml +++ b/.woodpecker/main.yaml @@ -60,18 +60,6 @@ steps: when: - event: push - - name: test-pyswiss - image: python:3.13-slim - environment: - SWISSEPH_PATH: /tmp/ephe - commands: - - apt-get update -qq && apt-get install -y -q gcc g++ - - pip install -r pyswiss/requirements.txt - - cd ./pyswiss - - python manage.py test apps.charts - when: - - event: push - - name: screendumps image: gitea.earthmanrpg.me/discoman/python-tdd-ci:latest commands: @@ -80,27 +68,12 @@ steps: - event: push status: failure - - name: deploy-pyswiss - image: alpine - environment: - SSH_KEY: - from_secret: deploy_ssh_key - commands: - - apk add --no-cache openssh-client - - mkdir -p ~/.ssh - - printf '%s\n' "$SSH_KEY" > ~/.ssh/id_ed25519 - - chmod 600 ~/.ssh/id_ed25519 - - ssh -o StrictHostKeyChecking=no discoman@167.172.154.66 ~/deploy.sh - when: - - branch: main - event: push - - name: build-and-push image: docker:cli environment: REGISTRY_PASSWORD: from_secret: gitea_registry_password - commands: + commands: - echo "$REGISTRY_PASSWORD" | docker login gitea.earthmanrpg.me -u discoman --password-stdin - docker build -t gitea.earthmanrpg.me/discoman/gamearray:latest . - docker push gitea.earthmanrpg.me/discoman/gamearray:latest @@ -108,7 +81,7 @@ steps: - branch: main event: push - - name: deploy + - name: deploy-staging image: alpine environment: SSH_KEY: @@ -122,4 +95,17 @@ steps: when: - branch: main event: push - + + - name: deploy-prod + image: alpine + environment: + SSH_KEY: + from_secret: deploy_ssh_key + commands: + - apk add --no-cache openssh-client + - mkdir -p ~/.ssh + - printf '%s\n' "$SSH_KEY" > ~/.ssh/id_ed25519 + - chmod 600 ~/.ssh/id_ed25519 + - ssh -o StrictHostKeyChecking=no discoman@staging.earthmanrpg.me /opt/gamearray/deploy.sh + when: + - event: tag diff --git a/.woodpecker/pyswiss.yaml b/.woodpecker/pyswiss.yaml new file mode 100644 index 0000000..f8a45fc --- /dev/null +++ b/.woodpecker/pyswiss.yaml @@ -0,0 +1,27 @@ +steps: + - name: test-pyswiss + image: python:3.13-slim + environment: + SWISSEPH_PATH: /tmp/ephe + commands: + - apt-get update -qq && apt-get install -y -q gcc g++ + - pip install -r pyswiss/requirements.txt + - cd ./pyswiss + - python manage.py test apps.charts + when: + - event: push + + - name: deploy-pyswiss + image: alpine + environment: + SSH_KEY: + from_secret: pyswiss_deploy + commands: + - apk add --no-cache openssh-client + - mkdir -p ~/.ssh + - printf '%s\n' "$SSH_KEY" > ~/.ssh/id_ed25519 + - chmod 600 ~/.ssh/id_ed25519 + - ssh -o StrictHostKeyChecking=no discoman@167.172.154.66 ~/deploy.sh + when: + - branch: main + event: push