Split flat docs/ into user-docs/ (guides, config, troubleshooting) and dev/ (ADRs, architecture, extension guides, proposals). Updated docs/README.md index to reflect new paths.
62 lines
2 KiB
YAML
62 lines
2 KiB
YAML
# ⚠️ SCAFFOLD ONLY — not active. See docs/proposals/rfc-gitops-branching-strategy.md
|
|
|
|
name: Back-merge Release Fixes
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- "release/**"
|
|
|
|
jobs:
|
|
backmerge:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
pull-requests: write
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
token: ${{ secrets.RELEASE_PAT }}
|
|
|
|
- name: Back-merge to next
|
|
run: |
|
|
git config user.name "github-actions[bot]"
|
|
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
|
|
RELEASE_BRANCH="${GITHUB_REF#refs/heads/}"
|
|
echo "Back-merging $RELEASE_BRANCH → next"
|
|
|
|
git fetch origin next || {
|
|
echo "::warning::next branch does not exist — skipping back-merge"
|
|
exit 0
|
|
}
|
|
|
|
git checkout next
|
|
|
|
if git merge "origin/${RELEASE_BRANCH}" --no-edit; then
|
|
git push origin next
|
|
echo "## ✅ Back-merged \`$RELEASE_BRANCH\` → \`next\`" >> "$GITHUB_STEP_SUMMARY"
|
|
else
|
|
# Conflict — open a PR for manual resolution
|
|
git merge --abort
|
|
gh pr create \
|
|
--base next \
|
|
--head "${RELEASE_BRANCH}" \
|
|
--title "backmerge: ${RELEASE_BRANCH} → next (conflict)" \
|
|
--body "Automated back-merge from \`${RELEASE_BRANCH}\` to \`next\` has a merge conflict.
|
|
|
|
**Action required:** Resolve the conflict manually by checking out \`next\` and merging \`${RELEASE_BRANCH}\`:
|
|
|
|
\`\`\`bash
|
|
git checkout next
|
|
git merge origin/${RELEASE_BRANCH}
|
|
# resolve conflicts
|
|
git commit
|
|
git push origin next
|
|
\`\`\`" \
|
|
|| echo "::warning::PR creation failed"
|
|
echo "## ⚠️ Conflict merging \`$RELEASE_BRANCH\` → \`next\` — PR opened" >> "$GITHUB_STEP_SUMMARY"
|
|
fi
|
|
env:
|
|
GH_TOKEN: ${{ secrets.RELEASE_PAT }}
|