mac下Jenkins + Git 自動化打包並生成二維碼


以上就是本篇文章要記錄的jerkins自動打包並生成二維碼的效果截圖!

1.安裝jenkins(命令行)

brew install Jenkins
如果提示jenkins: Java 1.8 is required to install this formula.
則還需要配置Java環境
brew tap caskroom/versions
brew cask install java8(brew cask install java則表示最新版本)
安裝成功後輸入命令行
jenkins (啓動)

2.在瀏覽器輸入localhost:8080

3.安裝插件

Git
Gradle
這些肯定是必須的,還有一些輔助的可以安裝


上圖是我安裝過程中用到的,如果缺少什麼會有提示,按照提示安裝就好,一種是在插件管理裏面直接安裝,還有一種方式是Jenkins插件下載地址下完了本地上傳,看網絡情況。

因爲其他設置或配置都依賴插件才能顯示,所以插件安裝放在首位。

4.系統設置

Jenkins首頁系統管理下有個系統設置,主要需要設置一下環境變量,以及Jenkins URL,如下


5.全局安全設置


我只改了這一處,主要是爲了生成二維碼能夠顯示出來,會用到

6.全局工具配置

主要需要設置git和gradle



git目錄選擇自己電腦下git的目錄


gradle選好自己的版本就好

7.項目構建配置

配置完成全局的相關設定後,接下來就是針對項目的了
首先是新建一個job或者new 任務,Jenkins首頁左上角第一個菜單項就是,根據需要選擇不同的風格,我選的是構建一個自由風格的軟件項目
,然後就進入的項目配置的頁面了。

git配置如下
gradle配置如下
add build step 執行shell

截圖爲mac上的方法,Windows可以選執行Windows批處理命令
用python在本地生成二維碼,qrcode.py代碼如下

import os, sys, ssl
import urllib
workspace = sys.argv[1] #jobs/project/workspace/
buildDir = sys.argv[2] # app/build/outputs/apk/
urlPrefix = sys.argv[3] # http://192.168.1.1:8080/job/project/35/

fileNames = []

absoluteBuildPath = workspace + buildDir
print absoluteBuildPath

for fileName in os.listdir(absoluteBuildPath):
  tmpPath = os.path.join(absoluteBuildPath, fileName)
  if os.path.isfile(tmpPath) and fileName.endswith(".apk"):
        fileNames.append(fileName)

for index, fileName in enumerate(fileNames):
    downloadUrl = urlPrefix + 'artifact/' + buildDir + fileName

apiUrl = "https://api.qrserver.com/v1/create-qr-code/?  size=150x150&data=" + downloadUrl

print apiUrl

savePath = workspace + 'qrcode/qrcode' + str(index) + '.png'

if not os.path.exists(os.path.dirname(savePath)):
    os.makedirs(os.path.dirname(savePath))

urllib.urlretrieve(apiUrl, savePath)

以上僅供參考,可以自行定義

Post-build Actions(展示apk鏈接和二維碼)

以上配置完成後,保存,然後點立即構建就可以得到文章開始展示的二維碼了。

中間確實碰到了很多坑,所以從最開始的截圖可以看到,我是在第33次構建後才成功的,所以也是記錄下,方便以後自己能快速集成!當然還有一些功能未完待續,比如參數化構建,設置名字之類的,後續補充。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章