本文以一個 Java + Maven + 主機構建部署示例,教您如何快速使用云效流水線 Flow 發布一個項目。
1. 新建流水線
進入云效 > 流水線 Flow 首頁 > 我的流水線,單擊 新建流水線,打開 選擇流水線模板彈窗,選擇對應的開發語言,可以查看當前語言下的默認流水線模板,可以根據模板快速創建流水線。
單擊 Java,選擇 Java · 構建、部署到阿里云ECS/自有主機模板,單擊創建,進入流水線編輯頁面。
2. 編排流水線
2.1 添加流水線源
進入流水線編輯頁 > 流程配置,打開 添加流水線源,選擇 示例代碼源,默認選中 Java 代碼類型,自動填充代碼倉庫地址、默認分支、工作目錄等。本例使用云效示例代碼庫 https://atomgit.com/flow-example/spring-boot,無需修改。
單擊 添加,流水線源區域便會出現已添加的流水線源。
2.2 配置Java構建任務
單擊 Java 構建上傳任務,打開任務配置面板。
查看 Java 構建步驟配置,可按需修改。
查看 構建物上傳步驟配置,可按需修改。本例中,需要將target/application.jar和deploy.sh兩個文件打包到制品中,供后續主機部署任務使用。打包路徑按下圖配置。
2.3 配置主機部署任務
單擊主機部署任務,打開任務配置面板。
配置如下表單:
制品:下拉選擇上游構建階段的產物。
主機組:選擇待部署的主機組。如無主機組,請參考 主機組。如需要多主機組部署可增加并行部署任務。
下載路徑:該路徑為構建上傳步驟中打包的制品下載到您的主機時設置的路徑,如有需要可自由配置。本例中為:
/home/admin/app/package.tgz
執行用戶:填寫執行部署腳本的用戶,如
root
或者admin
等。本例中為:root
。部署腳本:因為實際的部署腳本已經打包到了構建產出的壓縮包中,因此部署腳本可以簡單的進行解壓和執行即可。填寫如下部署腳本:
mkdir -p /home/admin/application
tar zxvf /home/admin/app/package.tgz -C /home/admin/application/
sh /home/admin/application/deploy.sh restart
3. 運行流水線
上述配置完成,單擊 保存并運行,打開 運行配置彈窗。默認 master分支,單擊 運行即可觸發流水線運行,進入流水線運行頁。
4. 查看 Java 構建部署任務運行結果
進入流水線運行頁面,可以查看流水線運行進度和結果。單擊 Java 構建上傳任務卡片上的日志可以查看構建日志。
單擊 主機部署任務卡片上的 部署詳情可以查看部署單詳情:部署耗時、部署狀態、日志等。部署狀態為已完成即項目發布完成。
5. 配置運行時通知
如有需要,流水線中可配置消息通知,可以將流水線運行過程中的信息反饋給相應同學,便于快速定位和排查問題。