commit
3f4185589d
@ -22,6 +22,10 @@ SMTP_PASS=${SMTP_PASS:-""}
|
|||||||
MAIL_TO=${MAIL_TO:-""}
|
MAIL_TO=${MAIL_TO:-""}
|
||||||
MAIL_FROM=${MAIL_FROM:-"$SMTP_USER"}
|
MAIL_FROM=${MAIL_FROM:-"$SMTP_USER"}
|
||||||
|
|
||||||
|
# 飞书通知配置
|
||||||
|
ENABLE_FEISHU=${ENABLE_FEISHU:-"false"}
|
||||||
|
FEISHU_WEBHOOK_URL=${FEISHU_WEBHOOK_URL:-""}
|
||||||
|
|
||||||
# 跳过的仓库
|
# 跳过的仓库
|
||||||
SKIP_REPOS=${SKIP_REPOS:-"archive,AutoApiSecret, \
|
SKIP_REPOS=${SKIP_REPOS:-"archive,AutoApiSecret, \
|
||||||
backup-openbilibili-go-common, \
|
backup-openbilibili-go-common, \
|
||||||
|
43
feishu_notify.sh
Normal file
43
feishu_notify.sh
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# 参数获取
|
||||||
|
WEBHOOK_URL="$1"
|
||||||
|
TITLE="$2"
|
||||||
|
CONTENT="$3"
|
||||||
|
|
||||||
|
# 飞书通知
|
||||||
|
send_feishu_notification() {
|
||||||
|
local message=$(cat <<EOF
|
||||||
|
{
|
||||||
|
"msg_type": "post",
|
||||||
|
"content": {
|
||||||
|
"post": {
|
||||||
|
"zh_cn": {
|
||||||
|
"title": "$TITLE",
|
||||||
|
"content": [
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"tag": "text",
|
||||||
|
"text": "$CONTENT"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
)
|
||||||
|
curl -s -X POST "$WEBHOOK_URL" -H "Content-Type: application/json" -d "$message"
|
||||||
|
}
|
||||||
|
|
||||||
|
# 主函数
|
||||||
|
main() {
|
||||||
|
if [ -z "$WEBHOOK_URL" ] || [ -z "$TITLE" ] || [ -z "$CONTENT" ]; then
|
||||||
|
echo "错误: 缺少必要的飞书通知参数"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
send_feishu_notification
|
||||||
|
}
|
||||||
|
|
||||||
|
main "$@"
|
15
main.sh
15
main.sh
@ -111,10 +111,23 @@ $(cat "$LOG_FILE")
|
|||||||
"$summary"
|
"$summary"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 准备飞书通知内容
|
||||||
|
feishu_title="GitHub 同步$([ $mirror_exit_code -eq 0 ] && echo "成功" || echo "失败")"
|
||||||
|
feishu_content="GitHub to Gitea 同步报告\n\n$(tail -n 50 "$LOG_FILE")"
|
||||||
|
|
||||||
|
# 如果启用了飞书通知,调用 feishu_notify.sh
|
||||||
|
if [ "$ENABLE_FEISHU" = "true" ]; then
|
||||||
|
bash "$SCRIPT_DIR/feishu_notify.sh" \
|
||||||
|
"$FEISHU_WEBHOOK_URL" \
|
||||||
|
"$feishu_title" \
|
||||||
|
"$feishu_content"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# 清理工作目录
|
# 清理工作目录
|
||||||
[ -d "$WORK_DIR" ] && rm -rf "$WORK_DIR"
|
[ -d "$WORK_DIR" ] && rm -rf "$WORK_DIR"
|
||||||
|
|
||||||
exit $mirror_exit_code
|
exit $mirror_exit_code
|
||||||
}
|
}
|
||||||
|
|
||||||
main "$@"
|
main "$@"
|
||||||
|
Loading…
Reference in New Issue
Block a user