i18n(uk): add missing files, translate P4 root docs
- Copy code/image/config files across all modules - Translate brand-voice and code-review templates - Translate CONTRIBUTING, CODE_OF_CONDUCT, SECURITY, STYLE_GUIDE - Copy CHANGELOG as-is (technical log) Ref: luongnv89/claude-howto#63
This commit is contained in:
68
uk/06-hooks/notify-team.sh
Normal file
68
uk/06-hooks/notify-team.sh
Normal file
@@ -0,0 +1,68 @@
|
||||
#!/bin/bash
|
||||
# Send notifications on events
|
||||
# Hook: PostToolUse (matcher: Bash) — run after bash commands; filter for git push in script logic
|
||||
# Note: Claude Code has no native PostPush event. To trigger on git push, check the bash command
|
||||
# string for "git push" using a matcher or conditional logic within this script.
|
||||
|
||||
REPO_NAME=$(basename $(git rev-parse --show-toplevel 2>/dev/null) 2>/dev/null)
|
||||
COMMIT_MSG=$(git log -1 --pretty=%B 2>/dev/null)
|
||||
AUTHOR=$(git log -1 --pretty=%an 2>/dev/null)
|
||||
BRANCH=$(git rev-parse --abbrev-ref HEAD 2>/dev/null)
|
||||
|
||||
echo "📢 Sending notification to team..."
|
||||
|
||||
# Slack webhook example (replace with your webhook URL)
|
||||
SLACK_WEBHOOK="${SLACK_WEBHOOK_URL:-}"
|
||||
|
||||
if [ -n "$SLACK_WEBHOOK" ]; then
|
||||
curl -X POST "$SLACK_WEBHOOK" \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d "{
|
||||
\"text\": \"New push to *$REPO_NAME*\",
|
||||
\"attachments\": [{
|
||||
\"color\": \"good\",
|
||||
\"fields\": [
|
||||
{\"title\": \"Branch\", \"value\": \"$BRANCH\", \"short\": true},
|
||||
{\"title\": \"Author\", \"value\": \"$AUTHOR\", \"short\": true},
|
||||
{\"title\": \"Commit\", \"value\": \"$COMMIT_MSG\"}
|
||||
]
|
||||
}]
|
||||
}" \
|
||||
--silent --output /dev/null
|
||||
|
||||
echo "✅ Slack notification sent"
|
||||
fi
|
||||
|
||||
# Discord webhook example (replace with your webhook URL)
|
||||
DISCORD_WEBHOOK="${DISCORD_WEBHOOK_URL:-}"
|
||||
|
||||
if [ -n "$DISCORD_WEBHOOK" ]; then
|
||||
curl -X POST "$DISCORD_WEBHOOK" \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d "{
|
||||
\"content\": \"**New push to $REPO_NAME**\",
|
||||
\"embeds\": [{
|
||||
\"title\": \"$COMMIT_MSG\",
|
||||
\"color\": 3066993,
|
||||
\"fields\": [
|
||||
{\"name\": \"Branch\", \"value\": \"$BRANCH\", \"inline\": true},
|
||||
{\"name\": \"Author\", \"value\": \"$AUTHOR\", \"inline\": true}
|
||||
]
|
||||
}]
|
||||
}" \
|
||||
--silent --output /dev/null
|
||||
|
||||
echo "✅ Discord notification sent"
|
||||
fi
|
||||
|
||||
# Email notification example
|
||||
EMAIL_TO="${TEAM_EMAIL:-}"
|
||||
|
||||
if [ -n "$EMAIL_TO" ]; then
|
||||
echo "New push to $REPO_NAME by $AUTHOR" | \
|
||||
mail -s "Git Push: $BRANCH" "$EMAIL_TO"
|
||||
|
||||
echo "✅ Email notification sent"
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Reference in New Issue
Block a user