fix: staging deploy via needs no CI, não workflow_run
Some checks failed
CI / static (push) Successful in 2m35s
CI / unit (push) Successful in 3m36s
CI / feature (push) Successful in 2m31s
CI / container (push) Successful in 1m0s
CI / browser (push) Successful in 4m11s
CI / deploy-staging (push) Failing after 6m19s

workflow_run nunca disparou no Gitea 1.24 com CI multi-job.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-12 15:33:29 -03:00
parent 91c0d412fa
commit ac08b5f064
3 changed files with 26 additions and 14 deletions

View File

@@ -275,3 +275,18 @@ jobs:
docker logs "$HEALTH_NAME"
exit 1
# Staging deploy runs in-process after gates. workflow_run never fired on
# this Gitea 1.24 multi-job CI setup (0 deploy runs after green CI).
deploy-staging:
name: deploy-staging
needs: [static, unit, feature, browser, container]
if: gitea.event_name == 'push' && gitea.ref == 'refs/heads/main'
uses: ./.gitea/workflows/deploy-staging.yml
secrets:
REGISTRY_USER: ${{ secrets.REGISTRY_USER }}
REGISTRY_PAT: ${{ secrets.REGISTRY_PAT }}
DOKPLOY_URL: ${{ secrets.DOKPLOY_URL }}
DOKPLOY_API_KEY: ${{ secrets.DOKPLOY_API_KEY }}
DOKPLOY_STAGING_COMPOSE_ID: ${{ secrets.DOKPLOY_STAGING_COMPOSE_ID }}
STAGING_URL: ${{ secrets.STAGING_URL }}

View File

@@ -1,10 +1,11 @@
name: Deploy staging
# Invoked from ci.yml after all gates pass on main (workflow_call).
# workflow_run is unreliable on Gitea 1.24 with multi-job CI (never fired).
# workflow_dispatch keeps a manual re-deploy path.
on:
workflow_run:
workflows: [CI]
types: [completed]
branches: [main]
workflow_call:
workflow_dispatch:
permissions:
contents: read
@@ -21,21 +22,15 @@ env:
jobs:
deploy:
name: publish-and-deploy-staging
if: >-
gitea.event.workflow_run.conclusion == 'success' &&
gitea.event.workflow_run.event == 'push' &&
gitea.event.workflow_run.head_branch == 'main'
runs-on: ubuntu-latest
steps:
- name: Checkout deployed SHA
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ gitea.event.workflow_run.head_sha }}
- name: Set image metadata
id: meta
run: |
SHA="${{ gitea.event.workflow_run.head_sha }}"
SHA="${{ gitea.sha }}"
SHORT_SHA="${SHA:0:7}"
IMAGE="${REGISTRY}/${IMAGE_NAME}"
IMAGE="$(echo "$IMAGE" | tr '[:upper:]' '[:lower:]')"