176 lines
6.3 KiB
YAML
176 lines
6.3 KiB
YAML
name: deploy & notify
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
# ---------- 设置安全 commit message ----------
|
|
- name: 设置安全 commit message
|
|
run: |
|
|
MSG="${{ github.event.head_commit.message }}"
|
|
SAFE_COMMIT=$(echo "$MSG" | tr -d '\r\n')
|
|
if [ -z "$SAFE_COMMIT" ]; then
|
|
SAFE_COMMIT="${{ github.actor }}触发了Git构建"
|
|
fi
|
|
echo "SAFE_COMMIT=$SAFE_COMMIT" >> $GITHUB_ENV
|
|
|
|
# ---------- 开始构建通知 ----------
|
|
- name: 设置开始时间
|
|
run: |
|
|
START_TIME=$(TZ='Asia/Shanghai' date '+%Y-%m-%d %H:%M:%S')
|
|
echo "START_TIME=$START_TIME" >> $GITHUB_ENV
|
|
|
|
- name: debug raw wecom webhook
|
|
env:
|
|
RAW_WECOM_WEBHOOK: ${{ secrets.WECOM_WEBHOOK_KEY }}
|
|
run: |
|
|
printf 'RAW_WECOM_WEBHOOK=<%s>\n' "$RAW_WECOM_WEBHOOK"
|
|
|
|
- name: 通知-构建开始
|
|
uses: https://gitea.com/seepine/action-wechat-work.git@1.0.8
|
|
env:
|
|
WECHAT_WORK_BOT_WEBHOOK: ${{ secrets.WECOM_WEBHOOK_KEY }}
|
|
with:
|
|
msgtype: template_card
|
|
template_card: |
|
|
{
|
|
"card_type": "text_notice",
|
|
"source": {
|
|
"icon_url": "https://gitea.com/assets/img/favicon.png",
|
|
"desc": "Gitea Actions",
|
|
"desc_color": 0
|
|
},
|
|
"main_title": {
|
|
"title": "${{ github.repository }}"
|
|
},
|
|
"emphasis_content": {
|
|
"title": "running",
|
|
"desc": "BUILD_RUNNING"
|
|
},
|
|
"quote_area": {
|
|
"quote_text": "${{ env.SAFE_COMMIT }}"
|
|
},
|
|
"sub_title_text": "[${{ github.ref_name }}] 分支开始构建",
|
|
"horizontal_content_list": [
|
|
{"keyname": "构建编号", "value": "#${{ github.run_number }}"},
|
|
{"keyname": "构建分支", "value": "${{ github.ref_name }}"},
|
|
{"keyname": "触发用户", "value": "${{ github.actor }}"},
|
|
{"keyname": "触发时间", "value": "${{ env.START_TIME }}"}
|
|
],
|
|
"card_action": {
|
|
"type": 1,
|
|
"url": "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
|
|
}
|
|
}
|
|
|
|
# ---------- 检出 + 你的构建步骤 ----------
|
|
- name: 开始构建
|
|
uses: actions/checkout@v3
|
|
|
|
- name: create a folder
|
|
run: mkdir test-folder
|
|
|
|
- name: create a file
|
|
run: |
|
|
cd test-folder
|
|
touch a.txt
|
|
echo "hello Gitea 123" > a.txt
|
|
cat a.txt
|
|
|
|
- name: delete a file
|
|
run: rm -rf test-folder/a.txt
|
|
|
|
# ---------- 构建成功通知 ----------
|
|
- name: 设置完成时间
|
|
if: ${{ success() }}
|
|
run: |
|
|
FINISHED_TIME=$(TZ='Asia/Shanghai' date '+%Y-%m-%d %H:%M:%S')
|
|
echo "FINISHED_TIME=$FINISHED_TIME" >> $GITHUB_ENV
|
|
|
|
- name: 通知-构建成功
|
|
if: ${{ success() }}
|
|
uses: https://gitea.com/seepine/action-wechat-work.git@1.0.8
|
|
env:
|
|
WECHAT_WORK_BOT_WEBHOOK: ${{ secrets.WECOM_WEBHOOK_KEY }}
|
|
with:
|
|
msgtype: template_card
|
|
template_card: |
|
|
{
|
|
"card_type": "text_notice",
|
|
"source": {
|
|
"icon_url": "https://gitea.com/assets/img/favicon.png",
|
|
"desc": "Gitea Actions",
|
|
"desc_color": 0
|
|
},
|
|
"main_title": {
|
|
"title": "${{ github.repository }}"
|
|
},
|
|
"emphasis_content": {
|
|
"title": "success",
|
|
"desc": "BUILD_SUCCESS"
|
|
},
|
|
"quote_area": {
|
|
"quote_text": "${{ env.SAFE_COMMIT }}"
|
|
},
|
|
"sub_title_text": "[${{ github.ref_name }}] 分支构建成功",
|
|
"horizontal_content_list": [
|
|
{"keyname": "构建编号", "value": "#${{ github.run_number }}"},
|
|
{"keyname": "构建分支", "value": "${{ github.ref_name }}"},
|
|
{"keyname": "触发用户", "value": "${{ github.actor }}"},
|
|
{"keyname": "完成时间", "value": "${{ env.FINISHED_TIME }}"}
|
|
],
|
|
"card_action": {
|
|
"type": 1,
|
|
"url": "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
|
|
}
|
|
}
|
|
|
|
# ---------- 构建失败通知 ----------
|
|
- name: 设置失败时间
|
|
if: ${{ failure() }}
|
|
run: |
|
|
FAILED_TIME=$(TZ='Asia/Shanghai' date '+%Y-%m-%d %H:%M:%S')
|
|
echo "FAILED_TIME=$FAILED_TIME" >> $GITHUB_ENV
|
|
|
|
- name: 通知-构建失败
|
|
if: ${{ failure() }}
|
|
uses: https://gitea.com/seepine/action-wechat-work.git@1.0.8
|
|
env:
|
|
WECHAT_WORK_BOT_WEBHOOK: ${{ secrets.WECOM_WEBHOOK_KEY }}
|
|
with:
|
|
msgtype: template_card
|
|
template_card: |
|
|
{
|
|
"card_type": "text_notice",
|
|
"source": {
|
|
"icon_url": "https://gitea.com/assets/img/favicon.png",
|
|
"desc": "Gitea Actions",
|
|
"desc_color": 0
|
|
},
|
|
"main_title": {
|
|
"title": "${{ github.repository }}"
|
|
},
|
|
"emphasis_content": {
|
|
"title": "failed",
|
|
"desc": "BUILD_FAILED"
|
|
},
|
|
"quote_area": {
|
|
"quote_text": "${{ env.SAFE_COMMIT }}"
|
|
},
|
|
"sub_title_text": "[${{ github.ref_name }}] 分支构建失败",
|
|
"horizontal_content_list": [
|
|
{"keyname": "构建编号", "value": "#${{ github.run_number }}"},
|
|
{"keyname": "构建分支", "value": "${{ github.ref_name }}"},
|
|
{"keyname": "触发用户", "value": "${{ github.actor }}"},
|
|
{"keyname": "完成时间", "value": "${{ env.FAILED_TIME}}"}
|
|
],
|
|
"card_action": {
|
|
"type": 1,
|
|
"url": "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
|
|
}
|
|
}
|