使用pipeline view建立pipeline project
接下來記錄如何使用pipeline view建立 build pipeline.
我們要建立新的Jenkins專案, 但還是使用相同的github專案.
- 需要的plugin
build pipeline plugin
copy artifact
deploy to container
- 準備stage環境
在另外一個VM安裝tomcat, 資訊如下:
ip: 192.168.157.1
port : 8080
需要修改 tomcat_dir/conf/tomcat-users.xml , 目的是讓deploy to container plugin可以有權限登入.
在最下方改為:
<!--
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat" roles="manager-script,manager-gui"/>
-->
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat" roles="manager-gui,admin-gui,manager-script"/>
</tomcat-users>
重點是要加入manager-script 與 admin-gui, manager-gui 這三個role,
而tomcat user 擁有這兩個role的權限.
圖示如下:
補充一下:
設定好了之後, 若是有出現下列錯誤訊息:
Caused by: org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: The username you provided is not allowed to use the text-based Tomcat Manager (error 403)
那可以照著下方的連結進行修改tomcat設定檔.
ps: 還是覺得要修改這個設定當有點奇怪.
- 建立與設定Jenkins專案
專案名稱為 pipeline_view_package, 而且是個Maven project
在設定畫面中, Source Code Management 輸入 https://github.com/masonwu1762/maven-project.git
在Build Triggers section 不用勾任何選, 我們自己手動執行建置
在Build section, 輸入 clean package
在Post-build Actions 增加一個action: Archive the artifacts,
輸入 **/*.war
在Post-build Actions 再增加一個action: Build other projects, 但現在我們還沒有另一個專案, 所以先不設定.
下圖是建立好專案的畫面
接下來建立第二個專案:
第二個專案名稱為 pipeline_view_deploy_staging, 而且選 Freestyle project
在build section 加入 action: Copy artifacts from another project.
Project name 輸入 pipeline_view_package,
Artifacts to copy輸入 **/*.war
然後在Post-build Actions section中加入 Deploy war/ear to a container
WAR/EAR files : **/*.war
Context path: maven-project
加入一個Container, 選 Tomcat 7.x
並且輸入「準備stage環境」的在tomcat設定的帳密 與 URL
完成後的畫面
還要再回去第一個專案: pipeline_view_package,
在Post-build Actions section中加入Build other projects action
在Projects to build 輸入 pipeline_view_deploy_staging
郅這裡專案算是設定好了.
- 建立 pipeline view
回到專案列表畫面
在All的旁及有個 + 號, 點下去.
給他一個名字, 例如 My View , 再選Build Pipeline View選項.
在下一個畫面的 pipeline Flow section中,
Select Initial Job 選第一個專案的名稱: pipeline_view_package
然後按OK然後, 你會看到這樣的畫面. 在畫面中可以看出pipeline的順序或關係.
可以點下點的 Run icon 以執行建置.
黃色底表示正在進行建置, 而藍色底表示還在等待.
完成建置後, 畫面變為綠色:
最後, 我們來看一下在staging environment中是否成功佈署應用程式:
從下圖可以看出成功顯示網頁:
完成!