如何将Outgoing Webhook部署到中国版Azure
在這篇文章中,我們主要來如何將Azure DevOps中的項目作為應用發布到中國版Azure的App Service中。
什么是Azure DevOps
Azure DevOps, 原名為VSTS, 全稱是Visual Studio Team System,是由微軟開發的一套具有高生產力、高集成性、可擴展的生命周期開發工具,免費,無限個數的私有repo,GitHub的public repo是無限的,但是私有repo要收費
Azure App Service
- Azure App Service的優點
- 讓開發人員更容易在Azure上構建可擴展的Web和移動應用程序后端
- 讓開發人員更容易在Azure上組合服務
- 讓開發人員更容易將Azure應用程序與記錄系統整合起來
- 降低了運行應用程序后端的成本
部署步驟
- 1、在Azure DevOps中新建Repo, 本地Clone,Push代碼
- 2、在Azure DevOps中并編譯生成一個 .NET Core應用, 配置持續集成環境
- 3、將Azure添加到Azure DevOps的Service Endpoint(僅限中國區的Azure)
- 4、在Azure中創建App Service
- 5、配置Azure DevOps中構建的應用Release到Azure App Service
必備條件:
1、Azure訂閱
2、Azure DevOps環境
3、Git?
4、Visual Studio 2017 or Visual Studio Code
一、在VSTS中新建Repo, 本地Clone,Push代碼
1、在VSTS中新建git代碼倉庫?
創建完成,得到git的orgin地址
在本地新建文件夾,git獲取代碼路徑
c:\Microsoft Teams> mkdir CITest c:\Microsoft Teams> git clone https://qiuyuhua.visualstudio.com/CITest/_git/CITest安裝dotnet的模板
c:\Microsoft Teams> dotnet new -i MicrosoftTeams.Templates2、根據git的項目地址,上傳我們的項目文件代碼
二、在Azure DevOps中并編譯生成一個 .NET Core應用, 配置持續集成環境
1、在Azure DevOps中,導航到“Code”下的的 “文件” 選項卡,然后單擊“設置生成”
2、選擇代碼源, 這里選中?VSTS Git, 點擊Continue
3、選擇Build的模板, 搜索框中輸入?Core,點擊選中 ASP.NET Core, 然后點擊Apply
現在,可以看到所有由模板自動添加到構建管道中的任務。這些是每當我們推代碼更改時自動運行的Build任務, 這里我們進行Build的相關配置
4、配置代理隊列:
Azure DevOps: 設置Build的名稱,選擇Hosted VS2017. 這就是如何使用我們的代理池來構建應用程序所需的軟件。
依次對Restore、Build、Test、Publish,進行響應的配置
5、點擊Triggers Tab頁在生成管道中.勾選 Enable the Continuous Integration trigger.?
這將確保每次提交到存儲庫的更改時自動觸發生成過程
6、點擊?Save & queue?開始進行一個build
我們在頁面上,可以看到剛剛配置的Build已經啟動,并且在進行相關環境的初始化
整個Build構建完成時,我們會收到一封通知郵件
7、?Save & queue?開始進行一個build
查看Build的總體情況
生成完成,選擇生成號以查看生成的簡要信息
下載Artifact,查看剛剛Build完成,Publish后的文件
可以看到和我們在本地進行Publish操作,生成的文件是一樣的,以上就是在Azure DevOps中構建Build的一個完整過程。
三、將Azure添加到Azure DevOps的Service Endpoint
1、把中國區的Azure添加到 Azure DevOps的 Service Endpoint
這個是使用 Azure DevOps 自動部署到中國區Azure的前置條件。Service Endpoint是以項目為單位進行配置的
點擊?設置?按鈕 -> 選擇 Service -> 點擊左側 New service connection -> 選中點擊 Azure Resource Manager -> 彈出框點擊最最下方的 “use the full version of the service connection dialog”
這里關鍵的幾個信息填寫:
- Connection name (可以自由填寫)
- Enviroment (選擇: AzureChinaColud)
- Subscription ID (Azure的訂閱ID)
- Subscription name (Azure的訂閱名稱)
- Service principal client ID (重點: 下文會說到)
- Service principal key (重點: 下文會說到)
- Tenant ID (Azure Active Directory -> 屬性 -> 目錄Id)
2、配置Service principal client ID和Service principal key
打開http://portal.azure.cn -> 選擇左側 Azure Active Directory -> 到 用戶設置 -> 確保應用注冊狀態時可用狀態
然后點擊 應用注冊 -> 新應用程序注冊
然后打開 屬性 -> 修改應用程序的ID URI 規則
接著,打開密鑰 -> 添加密鑰
點擊左側菜單 成本管理+計費 -> 訂閱 -> 選擇對應的訂閱。然后點擊 訪問控制(標識和訪問管理)添加權限,給咱們剛剛創建的應用程序添加 參與者 權限
這里回到上文中,Azure Resource Manager的配置,填寫上文設置的Service principal client ID和Service principal key
配置完成后,點擊?Verify connection, 驗證配置是否成功
四、在Azure中創建App Service
1、選擇左側導航欄?應用程序服務, 點擊```添加`` 新建 應用程序服務
2、選擇?Web應用, 點擊?創建
3、輸入應用程序名稱,完成創建
4、回到應用程序列表,看到剛剛新建的App Service,已經初始化成功,并且處于Running的狀態
5、打開訪問地址,出現下圖,說明應用是創建成功的
五、配置Azure DevOps中構建的應用Release到Azure App Service
首先,導航到Release頁面,新建一個Release Pipeline
選擇Release的模板,這里選擇Azure App Service deployment, 點擊Apply
添加Artifact, 選中之前定義的Build名稱,可以進行別名命名
配置deployment trigger, 目的是當關聯的Build生成成功后,會自動發布到我們的App Service上
配置Deploy Azure App Service, 找到App Service Url, 填入新建的Azure服務名稱
當我們的Build被觸發時,且成功執行完成后,可以看到配置好的Release已經啟動
直到Release完成, 此時已經將應用發布到了Azure
回到Miecrosoft Teams中,將Outgoing Webhook的地址修改為Azure App Service的地址
修改完成后,我們@機器人,看看消息的響應
參考文檔
- 1、Build your ASP.NET 4 app
- 2、Deploy a web app to Azure App Services
- 3、Create an Azure service connection
- 4、Troubleshoot Azure Resource Manager service connections
- 5、中國區的Azure添加到 Azure DevOps 的 Service Endpoint
總結
以上是生活随笔為你收集整理的如何将Outgoing Webhook部署到中国版Azure的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: J-link固件修复记录
- 下一篇: 『树形DP·换根法』Accumulati