From 718d57bd1e2e9782ba91ea441ec5b57b9d7d8147 Mon Sep 17 00:00:00 2001 From: Jonathan Miller Date: Sat, 4 Jul 2026 18:45:47 -0500 Subject: [PATCH] fix(workflows): #53 dev-cycle correctness (protection-independent) - cleanup.yml: preserve dev/rc/release-line + version/* branches (skip-list was deleting version/* release-history branches every week) - notify.yml: point workflow_run at the real workflow names (Universal: Build & Release / Joomla: Extension CI / Generic: Project CI) so release/failure ntfy actually fires - ci-joomla.yml: add plain `dev` to PR triggers so Joomla CI runs on feature->dev - pr-check.yml (Joomla): detect platform via the MokoGitea metadata API instead of the removed .mokogitea/manifest.xml (Joomla PR gates were silently skipping) Refs Template-Generic#53. Dev-sync/version-bump fixes deferred until the branch-protection provisioner rolls out (mcp-mokogitea-api#30). Claude-Session: https://claude.ai/code/session_01WbGBN9VyRK61zczYWcCQ2i --- .mokogitea/workflows/ci-joomla.yml | 1 + .mokogitea/workflows/cleanup.yml | 2 +- .mokogitea/workflows/notify.yml | 6 +++--- .mokogitea/workflows/pr-check.yml | 7 ++++--- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/.mokogitea/workflows/ci-joomla.yml b/.mokogitea/workflows/ci-joomla.yml index b02571b..804389b 100644 --- a/.mokogitea/workflows/ci-joomla.yml +++ b/.mokogitea/workflows/ci-joomla.yml @@ -18,6 +18,7 @@ on: pull_request: branches: - main + - dev - 'dev/**' workflow_dispatch: diff --git a/.mokogitea/workflows/cleanup.yml b/.mokogitea/workflows/cleanup.yml index 0023862..7f7a05b 100644 --- a/.mokogitea/workflows/cleanup.yml +++ b/.mokogitea/workflows/cleanup.yml @@ -50,7 +50,7 @@ jobs: for BRANCH in $BRANCHES; do # Skip protected branches case "$BRANCH" in - main|master|develop|release/*|hotfix/*) continue ;; + main|master|dev|develop|rc|beta|alpha|release|release/*|production|stable|staging|hotfix/*|version/*) continue ;; esac # Check if branch is merged into main diff --git a/.mokogitea/workflows/notify.yml b/.mokogitea/workflows/notify.yml index 51dfcb5..e6842ca 100644 --- a/.mokogitea/workflows/notify.yml +++ b/.mokogitea/workflows/notify.yml @@ -15,9 +15,9 @@ name: "Universal: Notifications" on: workflow_run: workflows: - - "Joomla Build & Release" - - "Joomla Extension CI" - - "Deploy" + - "Universal: Build & Release" + - "Joomla: Extension CI" + - "Generic: Project CI" types: - completed diff --git a/.mokogitea/workflows/pr-check.yml b/.mokogitea/workflows/pr-check.yml index 4e290cc..3d6cd40 100644 --- a/.mokogitea/workflows/pr-check.yml +++ b/.mokogitea/workflows/pr-check.yml @@ -149,11 +149,12 @@ jobs: - name: Detect platform id: platform run: | - # Read platform from XML manifest ( tag) or plain text fallback - PLATFORM=$(sed -n 's/.*\([^<]*\)<\/platform>.*/\1/p' .mokogitea/manifest.xml 2>/dev/null | head -1) - [ -z "$PLATFORM" ] && PLATFORM=$(cat .mokogitea/manifest.xml 2>/dev/null | tr -d '[:space:]') + # Platform comes from the MokoGitea metadata API (public GET); manifest.xml is no longer used. + API="${GITHUB_SERVER_URL:-https://git.mokoconsulting.tech}/api/v1/repos/${GITHUB_REPOSITORY}/metadata" + PLATFORM="$(curl -sf "$API" 2>/dev/null | python3 -c "import sys, json; print(json.load(sys.stdin).get('platform') or '')" 2>/dev/null || true)" [ -z "$PLATFORM" ] && PLATFORM="generic" echo "platform=$PLATFORM" >> "$GITHUB_OUTPUT" + echo "Detected platform: $PLATFORM" - name: Setup PHP if: steps.platform.outputs.platform == 'joomla' || steps.platform.outputs.platform == 'dolibarr'