feat(ci): own MokoGitea deploy workflows (dev/rc/prod) as canonical synced source #5

Open
jmiller wants to merge 1 commits from feat/own-deploy-workflows into main

1 Commits

Author SHA1 Message Date
jmiller 80d7bd166f feat(ci): own MokoGitea deploy workflows (dev/rc/prod) as canonical synced source
Generic: Repo Health / Site Health (pull_request) Has been skipped
Universal: PR Check / Branch Policy (pull_request) Failing after 2s
Generic: Repo Health / Access control (pull_request) Successful in 1s
Generic: Project CI / Lint & Validate (pull_request) Successful in 8s
Universal: PR Check / Validate PR (pull_request) Failing after 8s
Universal: PR Check / Secret Scan (pull_request) Successful in 9s
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report: Scripts Governance (pull_request) Has been cancelled
Generic: Repo Health / Report: Repository Health (pull_request) Has been cancelled
Add three tier-scoped deploy workflows to the root .mokogitea/workflows/
dir so Template-Go is the canonical source that syncs to Go server repos:

- deploy-dev.yml  : push to `dev`, DEV_* variables
- deploy-rc.yml   : push to `rc`, RC_* variables (reference pattern)
- deploy-prod.yml : push to `main`, PROD_* variables (+ :latest tag push)

All three share identical structure and reuse the org secrets
DEPLOY_SSH_KEY + MOKOGITEA_TOKEN. Deployment config is fully
parameterized via repo Actions variables (nothing hardcoded): quoted
heredoc with TAG/REGISTRY_TOKEN injected via ssh env-prefix, the
${TIER}_TAG_ENV compose env-var driving the shared compose file (no
sed), docker rm -f before --force-recreate, health-check loop, and an
external curl verify.

Closes #3

Claude-Session: https://claude.ai/code/session_01Wsno14cxE49MstXFs9G5KT
2026-07-05 20:19:23 -05:00