Mattermost 是一個開源、可私有化部署的線上通訊平臺,可以和Github、Jira、Jenkins、Gitlab等做整合,所以也可以作為 ChatOps 的一種實現方式。
很早之前為開源專案 boat-house 做的一個教學,今天偶爾翻筆記的時候找了出來,在這裡也分享一下。
使用docker快速部署
## 預設埠是 8065
docker run --name mattermost-preview -d --publish 8065:8065 mattermost/mattermost-preview
選擇「Create a new team」 >> 輸入team的名字
輸入或者預設當前是後續team的連結地址,點選 Finish
本地設定
在左上角點選使用者名稱旁邊的三道槓,點選「Account Settings」,點選「Display」,點選「Language」,選擇語言為「中文(簡體)」,點選「Save」
進入後臺管理
設定網址,把存取Mattermost的網址輸入進去即可,如果是Azure虛擬機器器的話可以輸入自己設定的DNS名稱再加埠號
設定語言
預設的伺服器端語言、預設使用者端語言、以及可選的語言(如果只選中文的話,使用者端進入display設定時 將看不到language選項)
https://about.mattermost.com/downloads/
收到訊息時提醒
https://about.mattermost.com/mattermost-android-app/
邀請新使用者
建立頻道
可以在公共頻道里面聊天,也可以自己建立私密的私聊頻道
聊天
回覆單條留言資訊
傳送圖片
截圖到聊天視窗,ctrl+enter傳送
https://github.com/mattermost/mattermost-plugin-jenkins
在mattermost中進行設定
在jenkins中進行設定
安裝mattermost外掛,主選單 >> Manage Jenkins >> 選擇「Mange Plugins」 >> Available >> 選擇「Mattermost Notification Plugin」 >> 點選「Install without restart」按鈕
點選使用者名稱,進入後點選左側選單中的Configure,在Current token中輸入Mattermost生成的私鑰,點選「Add new token」生成token
## 複製git上的檔案到本地
sudo apt-get install git
cd /
mkdir hubot
cd hubot
git clone https://github.com/loafoe/hubot-matteruser
建立映象
docker build --build-arg hubot_owner=root \
--build-arg hubot_name=pang \
--build-arg hubot_description=pang \
--tag=hubot-matteruser \
建立容器
docker run -it \
--env MATTERMOST_HOST=jasonchen01.southeastasia.cloudapp.azure.com:8065 \
--env MATTERMOST_GROUP=leansoftx \
--env [email protected] \
--env MATTERMOST_PASSWORD=123456 \
--env MATTERMOST_USE_TLS=false \
-p 8080:8080 \
--name hubot-matteruser \
hubot-matteruser
聊天,使用設定好的hubot_name作為字首,比如 pany help
https://github.com/mattermost/mattermost-plugin-jira
第一步:mattermost上開啟jira外掛
啟用外掛,選擇「true」
複製webhook secret中的文字,組成URL,例如
https://SITEURL/plugins/jira/api/v2/webhook?secret=YB96EBo3lBFfcqTnGItFeSVtTLj0Cy81
第二步:在jira設定webhook
系統 >> 網路勾點
輸入名稱、第一步獲取到的URL,並把所有的相關時間勾選上
第三步:在jira上安裝應用程式
在mattermost的聊天框中,輸入/jira install
根據提示在JIRA上進行設定,尤其注意PUBLIC KEY的部分
輸入mattermost站點的地址
再次輸入mattermost站點的地址
應用程式名稱:Mattermost, 應用型別:通用應用程式
輸入客戶關鍵字、客戶名稱、公共關鍵字
第四步:mattermost上接受jira的資訊
注:現在web版上登入
/jira connect
設定需要接受的專案及資訊
最終效果如下,jira上的操作將推播到mattermost中
存取 https://github.com/settings/applications/new,填寫
Application name: mattermost
Homepage URL: https://github.com/mattermost/mattermost-plugin-github
Authorization callback URL:https://your-mattermost-url.com/plugins/github/oauth/complete
複製對應的資料到對應的框中,「Save」
進入你的rep,「settings」 >> 點選"Add webhook" >> 填寫
選擇Let me select individual events
勾選
Issues, Issue comments, Pull requests, Pull request reviews, Pull request review comments, Pushes, Branch or Tag creation, Branch or Tag deletion
輸入github 註冊郵箱收到的Verification code
點選 「Authorize ******」
/github me 顯示當前賬號的資訊
/git todo 待完成工作列表
歡迎在評論區留下你寶貴的意見,不論好壞都是我前進的動力(cnblogs 排名提升)!
如果喜歡,記得點贊、推薦、關注、收藏、轉發 ... ;)