Google Cloud Messsaging Notification Plugin
前言:建構任務後希望能及時得到建構結果,發送郵件隻能上班時會看到,是以希望能在手機上及時得到結果
當然以notification形式如果手機沒開網絡的話也常常是不能及時收到的,若有發短信的接口當然更好了,這裡是求其次的方案
GCM插件還有個好處是點選通知後,可以直接在手機浏覽器上打開Jenkins(前提是手機網絡能通路Jenkins,即處于同一内網環境或Jenkins可通過外網通路)
配置需求
1.Jenkins 1.466+版本
2.一個google賬号
3.運作android2.2或以上以上系統的終端手機裝置
4.在手機上能通路Jenkins(例如與Jenkins處于同一内網環境,可直接通路Jenkins連結)
Jenkins端配置
1.安裝Google Cloud Messsaging Notification Plugin插件
2.安裝好插件後注冊登入google apis賬戶
https://code.google.com/apis/console/
3.建立一個新的project
4.選擇左邊Services項,右邊Google Cloud Messaging for Android置為on
5.選擇左邊API Access項,建立一個新的Server Key并記錄下"API key"的值
6.在Overview頁, 記錄下"Project Number"的值
7.進入Jenkins的Manage Jenkins → Configure System頁面,Google Cloud Messaging Notifications項填入相應的project number和app API key
android手機終端配置
1.下載下傳并安裝BuildWatch應用
2.在Jenkins中以使用者形式登入
3.登入後點選右上角使用者名,進入個人頁面,點選左邊“設定”
4.在Google Cloud Messaging Token項中點選“show QR code”
5.啟動手機上的BuildWatch應用,點選Auto setup(若沒有安裝條碼掃描器,會提示安裝,請先安裝條碼掃描器),掃描Jenkins中的二維碼即可獲得token
6.在要建構的項目中,配置裡輸入要發送的使用者名,建構後即可在手機終端收到通知了
官網WIKI
https://wiki.jenkins-ci.org/display/JENKINS/GCM+Notification+Plugin
問題:
運作過程中報錯:
com.google.android.gcm.server.InvalidRequestException: HTTP Status Code: 401
解決:
由于發送限制,通知發送不成功了
登入google apis賬戶,進入API Access 在Edit allowed IPs中不輸入任務IP,即允許任何IP