延續前篇文章,接著從無到有在 Azure DevOps 建立 CI/CD 專案,讓自己更清楚操作方式,並且更細緻化處理
想要的設定。
另外補充一個概念,在 Azure DevOps 中 CI 使用 Pipelines Build 功能,CD 使用 Pipelines Release 功能。
⬇ 在AzureDevOps建立Project
⬇ 模擬正式生產環境選擇 Private
專案
⬇ 接著 Clone Git 專案到電腦,我簡單寫一個.NET Core網頁小程式跟鐵人賽說你好~
public class Startup
{
public void Configure(IApplicationBuilder app) => app.Run(async (context) =>{
await context.Response.WriteAsync("IT鐵人賽,你好!!");
});
}
並且在 Azure 建立一個新的 .NET Core Web App 專案
將專案內容 commit and push 到 Azure DevOps Repos 版控
⬇ 點擊 Use the visual designer
不用 YAML
,要使用哪個習慣問題,讀者可以自己選擇。
⬇ 選擇Git平台,這邊選擇 Azure Repos Git
⬇ 選擇自己網頁專案對應的範本,我這邊使用 ASP.NET Core (.NET Framework)
建立
⬇ 選擇你想要的CI邏輯,我使用基本功能:NuGet、Build、Test、Publish。特別注意一點,這邊需要Publish Artifact
負責跟CD做串接,假如只要CI可以去掉。
另外之後CI運行的邏輯也會照這順序由上而下
運行。
⬇ 假如想要每次Git有更新要跑一次CI/CD,需要建立一個Trigger 允許 Enable continuous integration
、Batch changes while a build is in progress
假如覺得功能不夠可以自行添加task
⬇ 保存記得選擇Save
不要Save&Queue
,因為還沒有建立Release-CD
,現在運行在Publish那一關會失敗。
⬇ 點擊 Releases > New Pipeline
⬇ 搜尋Azure App Service deployment
> Apply 應用
點擊新建的stage task,選擇對應 Azure帳號 > 授權給Azure DevOps > 選擇剛剛建立好的WebApp
⬇ 點擊 Add Arifacts
選擇剛剛建立的CI
⬇ 接著點擊 閃電圖案
> 准許 每次CI結束後建立一個新的CD
最後修改本基程式內容 commit push 到 DevOps Repos 看CI/CD有沒有正確運行
可以看到Azure DevOps照我們設定的邏輯跑CI跟CD邏輯
等CD跑完後查看網頁可以看到 Azure DevOps 幫忙更新網頁內容