???如何使用
- 自定義機器人使用指南飛書官網(wǎng)https://open.feishu.cn/document/client-docs/bot-v3/add-custom-bot
![]()
??在linux 上安裝python 環(huán)境
yum install python3 python3-devel python3-pip
# 請求工具
python3 -m pip install requests
??發(fā)送消息python腳本
- 我這個設(shè)置了簽名的,具體怎么設(shè)置簽名可以查看飛書官方文檔
![]()
#!/usr/bin/env python
# -*- encoding:utf-8 -*-
import sys
import requests
import time
import hashlib
import base64
import hmac
import calendar
def gen_sign(timestamp, secret):
string_to_sign = '{}\n{}'.format(timestamp, secret)
hmac_code = hmac.new(string_to_sign.encode("utf-8"), digestmod=hashlib.sha256).digest()
# 對結(jié)果進行base64處理
sign = base64.b64encode(hmac_code).decode('utf-8')
return sign
JOB_URL = sys.argv[1]
JOB_NAME = sys.argv[2]
BUILD_NUMBER = sys.argv[3]
isFinish = "開始構(gòu)建" if str(sys.argv[4]) == str(0) else "構(gòu)建完成"
timestamp = str(calendar.timegm(time.gmtime()))
currenttime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
sign_key = '你的簽名'
sgin = gen_sign(timestamp, sign_key)
url = '你的webhook 地址'
method = 'post'
headers = {
'Content-Type': 'application/json'
}
json = {
"timestamp": "" + timestamp + "",
"msg_type": "interactive",
"sign": "" + sgin + "",
"card": {
"config": {
"wide_screen_mode": True,
"enable_forward": True
},
"elements": [{
"tag": "div",
"text": {
"content": "項目名稱:" + JOB_NAME + "\n構(gòu)建編號:第" + BUILD_NUMBER + "次構(gòu)建\n運行時間:" + currenttime,
"tag": "lark_md"
}
}, {
"actions": [{
"tag": "button",
"text": {
"content": "查看報告",
"tag": "lark_md"
},
"url": JOB_URL,
"type": "default",
"value": {}
}],
"tag": "action"
}],
"header": {
"title": {
"content": JOB_NAME + " "+isFinish+"",
"tag": "plain_text"
}
}
}
}
requests.request(method=method, url=url, headers=headers, json=json)
??把腳本上傳倒linux上
可以看到上傳去是沒有執(zhí)行權(quán)限的,一定要記得叫上執(zhí)行權(quán)限文章來源:http://www.zghlxwxcb.cn/news/detail-616056.html
chmod +x sendMsg.py
??jenkins 上執(zhí)行腳本
- 最后一個參數(shù)標識 0 開始構(gòu)建 1 構(gòu)建完成
/opt/java/script/sendMsg.py
這一段不要跟著我寫 根據(jù)自己存放的位置和名字來
python3 /opt/java/script/sendMsg.py $JOB_URL $JOB_NAME $BUILD_NUMBER 0
文章來源地址http://www.zghlxwxcb.cn/news/detail-616056.html
??步驟總結(jié)
- 在Linux環(huán)境下使用Jenkins來構(gòu)建和部署項目,并通過飛書機器人發(fā)送通知的步驟如下:
- 安裝和配置Jenkins:首先,需要在Linux服務(wù)器上安裝和配置Jenkins??梢园凑認enkins官方文檔提供的步驟進行安裝,并確保Jenkins服務(wù)器正常運行。
- 創(chuàng)建Jenkins任務(wù):使用Jenkins的Web界面創(chuàng)建一個新的任務(wù)或者選擇現(xiàn)有的任務(wù)。任務(wù)可以是一個構(gòu)建或部署項目的作業(yè)。
- 配置構(gòu)建步驟:在任務(wù)的配置頁面上,配置構(gòu)建步驟,例如從代碼倉庫拉取代碼、編譯項目、運行測試等。根據(jù)項目的需求和具體操作,可以添加一系列構(gòu)建步驟。
- 安裝和配置飛書機器人插件:在Jenkins的插件管理頁面中,搜索并安裝飛書機器人插件。安裝完成后,在全局配置頁面中,配置飛書機器人的Webhook URL,這將用于發(fā)送通知消息到飛書。
- 添加Post-build Actions:在任務(wù)的配置頁面上,找到“Post-build Actions”部分,選擇“Send notification to Feishu”選項。在該選項中,填寫消息的標題、內(nèi)容等信息,可以使用Jenkins的環(huán)境變量來動態(tài)地生成通知內(nèi)容。
- 保存并觸發(fā)構(gòu)建:完成所有配置后,保存任務(wù)的設(shè)置。然后,手動觸發(fā)構(gòu)建,或者設(shè)置定時觸發(fā)構(gòu)建等方式啟動任務(wù)。
- 查看飛書通知:一旦Jenkins任務(wù)完成構(gòu)建,飛書機器人將根據(jù)配置的Webhook URL發(fā)送通知消息。在飛書中登陸相應(yīng)的機器人賬號,即可查看接收到的通知信息。
- 通過上述步驟,你可以在Linux環(huán)境下使用Jenkins進行項目構(gòu)建和部署,并通過飛書機器人實現(xiàn)通知功能。這樣可以及時了解項目構(gòu)建的狀態(tài)或者其他相關(guān)信息,提高開發(fā)和運維的效率。
到了這里,關(guān)于linux+Jenkins+飛書機器人發(fā)送通知(帶簽名)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!