VSTS以Azure DevOps服務(wù)形式推出,新特性一覽
9月10 日,微軟官方博客宣布推出 Azure DevOps 服務(wù)。Azure DevOps 是對微軟的應(yīng)用程序生命周期管理系統(tǒng) Visual Studio Team Services(VSTS)進行的重大改組和品牌重塑,此后 VSTS 將不再是單一的 Visual Studio 服務(wù),而是被分成五個獨立的 Azure 服務(wù),包含在 Azure DevOps 平臺服務(wù)之中。這五個單獨的服務(wù)分別是:
- Azure Pipelines:用于持續(xù)構(gòu)建、測試和部署到任何云平臺。
- Azure Boards:可進行工作管理。
- Azure Artifacts:適用于 Maven、npm 和 NuGet。
- Azure Repos:提供***制的云托管私有 Git 存儲庫。
- Azure Test Plans:用于計劃和探索性測試。
新特性一覽
以下功能將在接下來幾天推出。
Azure Pipelines
從 GitHub Marketplace 添加 Azure Pipelines
GitHub Marketplace 中提供的*** Azure Pipelines 應(yīng)用程序擴展了與 GitHub 存儲庫的集成,并簡化了并行作業(yè)的購買。
以前,用戶可以通過 OAuth 認(rèn)證啟用與 GitHub 存儲庫的持續(xù)集成。在使用 OAuth 時,Azure Pipelines 通過個人的 GitHub 標(biāo)識來獲取代碼并更新 GitHub 上的構(gòu)建狀態(tài)。但是,由于團隊成員可能會發(fā)生人員變動,使用個人的 GitHub 身份和權(quán)限并不是一個很好的辦法。通過安裝 Azure Pipelines 應(yīng)用程序,用戶可以授權(quán)它來執(zhí)行操作。
另外,如果使用了這個應(yīng)用程序,就可以在 GitHub 的 Checks 頁面看到構(gòu)建結(jié)果,其中包含構(gòu)建、測試和代碼覆蓋率的詳細(xì)信息。
要使用這個功能,需要從 GitHub Marketplace 中安裝這個應(yīng)用程序。用戶可以使用現(xiàn)有的 GitHub 支付帳戶而不是 Azure 帳戶來購買其他并行作業(yè),價格是一樣的。
使用 Azure Pipelines 免費構(gòu)建開源項目
Azure Pipelines 提供了 Linux、macOS 和 Windows 的云托管管道,開源項目可以享受無時間限制和 10 個免費的并行作業(yè)。
使用 YAML 配置構(gòu)建
基于 YAML 的構(gòu)建管道現(xiàn)在普遍可用,用戶可以使用與其他代碼存放在一起的 YAML 文件來自動執(zhí)行持續(xù)集成管道。單個作業(yè)的構(gòu)建變得相當(dāng)容易。隨著需求的增長,可以使用 multiple jobs、external templates 和 matrix execution 來擴展到更多作業(yè)。
使用新向?qū)?chuàng)建 YAML 構(gòu)建管道
新的向?qū)Ш喕耸褂?GitHub 和 Azure Repos 創(chuàng)建基于 YAML 的構(gòu)建管道的過程。在選擇了要構(gòu)建的存儲庫后,如果其中包含了 YAML 文件,就會自動創(chuàng)建管道。否則,Azure Pipelines 將分析存儲庫,并推薦一個 YAML 模板用來構(gòu)建項目。用戶只需單擊“保存并運行”即可為建議的 YAML 創(chuàng)建拉取請求,并進行***個構(gòu)建。持續(xù)集成和拉取請求觸發(fā)器將自動被啟用。
使用新的 Builds 頁面管理構(gòu)建管道
微軟正在做一些改進,并推出新版本的 Builds 頁面。新版本將所有構(gòu)建管道目錄和當(dāng)前構(gòu)建列表結(jié)合在一起,用戶可以快速瀏覽項目構(gòu)建以查看它們的狀態(tài)。它還提供了管道的測試分析預(yù)覽信息。
重新啟動 GitHub 拉取請求構(gòu)建
當(dāng)用戶向 GitHub 存儲庫提交拉取請求時,拉取請求構(gòu)建可能會因間歇性故障(例如包注冊表不可用或其他測試所導(dǎo)致)而失敗。在這些情況下,用戶可能希望再次運行構(gòu)建。之前,用戶需要推送另一個拉取請求更新,而現(xiàn)在,在新的 Builds 頁面,只需選擇失敗的構(gòu)建,并向構(gòu)建隊列中添加一個新的構(gòu)建請求。
這種方式僅適用于拉開請求構(gòu)建,微軟正在考慮為所有失敗的構(gòu)建提供類似的功能。
新的構(gòu)建狀態(tài) badge URL
嵌入在存儲庫主頁的構(gòu)建 badge 是顯示存儲庫健康狀態(tài)的常用方法。微軟添加了新的 URL 來幫助用戶創(chuàng)建 badge。新 URL 允許用戶發(fā)布分支狀態(tài),并可以讓用戶瀏覽所選分支的***版本。用戶可以通過新 Builds 頁面上的 Status badge 菜單來獲取新的狀態(tài) URL 的 Markdown 代碼。為了向后兼容,將繼續(xù)支持舊的 URL。
在微軟托管的 Linux 代理上可以使用更多工具
在新版本中,微軟托管的 Linux 代理添加了多個構(gòu)建、測試和部署工具(具體如下),用戶無需在構(gòu)建或發(fā)布期間自行安裝它們。
- Erlang/OTP
- Firefox
- Haskell
- Heroku CLI
- ImageMagick
- Mercurial
- Microsoft SQL Server Client Tools
- MySQL Server
- PhantomJS
- Pollinate
- PyPy2 and PyPy3
- rebar
- rsync
- ShellCheck
- Sphinx
- Terraform
- Xvfb
跟蹤 GitHub 的代碼提交和相關(guān)問題
現(xiàn)在,用戶可以獲取與某個發(fā)布版本相關(guān)的代碼提交清單和問題。
使用改進的格式更好地管理構(gòu)建和部署電子郵件通知
更新過的構(gòu)建和部署電子郵件通知可以通過電子郵件規(guī)則進行過濾。現(xiàn)在,郵件主題中包含更多相關(guān)信息,正文也包含更多細(xì)節(jié)和***的風(fēng)格。
新格式的元素:
- [Build result] [pipeline name] - [repository:branch] - [project name] - [commit]
- [Deployment result] [pipeline name] > [release name] : [stage name]
一些例子:
- [Build succeeded] IdentityService.CI - MyRepo:master - MyProject - d3b90b80
- [Deployment succeeded] New release pipeline > NotificationSpecialRelease-1 : Stage 1
遵循統(tǒng)一的 Azure Pipelines 術(shù)語
因為歷史原因,在構(gòu)建和發(fā)布過程中,相似的概念可能會使用不同的術(shù)語。在其他某些情況下,有些術(shù)語的含義模棱兩可。例如,agent pool(代理池)和 agent queue(代理隊列)之間的區(qū)別就難說清楚。
術(shù)語在 Azure Pipelines 中得到了統(tǒng)一,以便更清晰地闡明相關(guān)概念。
Marketplace
新的擴展類別
Marketplace 中的擴展類別已經(jīng)過調(diào)整,以便與重命名的 Azure DevOps 服務(wù)保持一致。雖然之前的類別已自動映射到新類別,用戶***還是更新一下自己的 manifest,以便切換到新類別。
Administration
現(xiàn)有組織可以使用新域名 URL
新的域名是 dev.azure.com,不過用戶仍然可以像往常一樣繼續(xù)使用 visualstudio.com。如果想要將 URL 更改為 dev.azure.com,可以讓組織管理員(Project Collection Administrator)在組織設(shè)置頁面做出更改。雖然采用新域名并不會重定向每個請求,但任何發(fā)給 root URL 的請求以及電子郵件中的鏈接和 Web 鏈接都將發(fā)生變化。
微軟將根據(jù)客戶反饋逐步遷移到新 URL。先是將它作為可選項,后續(xù)會將它作為組織的默認(rèn)選項。不過讓組織棄用 visualstudio.com 的具體時間表還沒有確定。
添加利益相關(guān)者用戶,以節(jié)省 Azure Pipelines 許可成本
如果只使用 Azure Pipelines 服務(wù),在基本許可之外無需為其他用戶付費。所有用戶都可以免費使用 Azure Pipelines 的所有功能。在向項目中添加更多用戶時,可以將他們視為利益相關(guān)者,他們可以創(chuàng)建、查看、更新和批準(zhǔn)構(gòu)建管道,只要給他們分配適當(dāng)?shù)臋?quán)限。以下是有關(guān)該許可變更的一些附加說明:
- 用戶只需為 Azure Pipelines 的其他并行作業(yè)付費。用戶數(shù)沒有限制。
- 所有對 Azure Pipelines 功能的訪問仍受安全和權(quán)限模型的監(jiān)管。
- 如果用戶要使用其他 Azure DevOps 服務(wù),必須在免費限制之后為這些服務(wù)支付許可費用。
- 在現(xiàn)有組織中,利益相關(guān)者默認(rèn)情況下不會獲得免費的 Azure Pipelines 權(quán)限。組織管理員必須啟用這個預(yù)覽版功能,這樣利益相關(guān)者就可以執(zhí)行相關(guān)操作。目前,他們無法管理構(gòu)建或發(fā)布。但是,一旦啟用了這個預(yù)覽版功能,Azure Pipelines 的基本用戶和利益相關(guān)者之間就沒有權(quán)限差別。所以,是否允許利益相關(guān)者成為免費的 Azure Pipelines 用戶是由組織管理員決定的。
反饋
用戶可以使用反饋菜單報告問題或提供建議。