mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-02 14:56:38 +08:00
67 lines
2.0 KiB
Bash
Executable File
67 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# Example: post_merge hook
|
|
#
|
|
# This hook runs after a successful merge into the target branch.
|
|
# Use it to trigger deployments, close issues, notify teams, etc.
|
|
|
|
set -e
|
|
|
|
echo "[Hook] Post-merge processing for $DMUX_SLUG → $DMUX_TARGET_BRANCH"
|
|
|
|
cd "$DMUX_ROOT"
|
|
|
|
# Push to remote if merging to main/master
|
|
if [ "$DMUX_TARGET_BRANCH" = "main" ] || [ "$DMUX_TARGET_BRANCH" = "master" ]; then
|
|
echo "[Hook] Pushing to origin/$DMUX_TARGET_BRANCH"
|
|
git push origin "$DMUX_TARGET_BRANCH"
|
|
|
|
# Optional: Trigger deployment
|
|
# if [ -n "$VERCEL_TOKEN" ]; then
|
|
# echo "[Hook] Triggering Vercel deployment..."
|
|
# curl -X POST "https://api.vercel.com/v1/deployments" \
|
|
# -H "Authorization: Bearer $VERCEL_TOKEN" \
|
|
# -H "Content-Type: application/json" \
|
|
# -d '{
|
|
# "name": "my-project",
|
|
# "gitSource": {
|
|
# "type": "github",
|
|
# "ref": "main"
|
|
# }
|
|
# }'
|
|
# fi
|
|
fi
|
|
|
|
# Close related GitHub issue (if prompt contains #123 format)
|
|
ISSUE_NUM=$(echo "$DMUX_PROMPT" | grep -oP '#\K\d+' | head -1)
|
|
if [ -n "$ISSUE_NUM" ]; then
|
|
echo "[Hook] Closing GitHub issue #$ISSUE_NUM"
|
|
if command -v gh &> /dev/null; then
|
|
gh issue close "$ISSUE_NUM" \
|
|
-c "Resolved in branch $DMUX_SLUG, merged to $DMUX_TARGET_BRANCH" \
|
|
2>/dev/null || echo "[Hook] Warning: Failed to close issue (maybe already closed?)"
|
|
else
|
|
echo "[Hook] GitHub CLI (gh) not found, skipping issue close"
|
|
fi
|
|
fi
|
|
|
|
# Send notification to Slack
|
|
# if [ -n "$SLACK_WEBHOOK" ]; then
|
|
# echo "[Hook] Sending Slack notification"
|
|
# curl -s -X POST "$SLACK_WEBHOOK" \
|
|
# -H "Content-Type: application/json" \
|
|
# -d "{
|
|
# \"text\": \"Merged: $DMUX_SLUG → $DMUX_TARGET_BRANCH\",
|
|
# \"blocks\": [
|
|
# {
|
|
# \"type\": \"section\",
|
|
# \"text\": {
|
|
# \"type\": \"mrkdwn\",
|
|
# \"text\": \"*Branch Merged* :rocket:\n\n*From:* \`$DMUX_SLUG\`\n*To:* \`$DMUX_TARGET_BRANCH\`\n*Task:* $DMUX_PROMPT\"
|
|
# }
|
|
# }
|
|
# ]
|
|
# }" > /dev/null
|
|
# fi
|
|
|
|
echo "[Hook] Post-merge processing complete"
|