2021年4月20日 星期二

如何在CI CD Pipeline中發送LINE通知訊息?

『如何在CI/CD Pipeline中發送LINE通知訊息?』有次,Azure DevOps上課時學員問了這個問題。

我聽到之後忍不住說:『這位同學你問得太好了!!!』
耐不住心中竊喜,繼續說道:『本人剛好有30秒可達成的全球最佳解決方案。😁』

要知道,關於LINE和Azure DevOps這兩個主題,分開來討論時我也向來是不落人後的,現在這兩個主題合在一起,那我當然就更不客氣了。

開啟Pipeline,我說『請看,第一個步驟,在pipeline中,加入『Use .net core』task:
enter image description here

接著,第二步,上LINE Notify官網,建立一個發訊息給你自己(或群組)的LINE Notify Token:
enter image description here

你會取得一個長得像底下這樣的token:
3QrpcH5XauJVoFCoSxbuWJH747TkC7yW5aXfsDk7RsM

然後,第三步驟,在Pipeline中,加入一個PowerShell Task,在inline script中填入底下指令:

dotnet tool install --global line.cli 
line notify -n 3QrpcH5XauJVoFCoSxbuWJH747TxC7yW5aXfsDk7RsM -m "$(Build.BuildNumber) is done. 狀態: $(Agent.JobStatus)"

enter image description here
然後? 然後就完成了。

現在,你可以自由的在上面這段script中發送訊息給自己(或自己的群組),當然還可以帶入環境變數$(…)。如此一來,每當CI build完成之後,不管成功或失敗,你都可以即時地取得通知,例如:
enter image description here

這一招,我們採用的是跨平台的 .net core,因此,不管你的build agent是MAC、Linux、還是Windows通通都支援啦😎。


相關課程:

敏捷開發專案管理與Azure DevOps實戰
https://www.studyhost.tw/NewCourses/ALM

LINE Bot與人工智慧實戰
https://www.studyhost.tw/NewCourses/LineBot

沒有留言:

熱門文章