2021ironman
26 篇文章
鳴人

設定Pipeline的識別編號格式

不知道各位在前面建立Pipeline執行之後,有沒有發現Pipeline執行結果列表的識別文字是像下圖的格式?Build pipeline修改識別文字前 Release pipeline修改識別文字前 如上圖的兩張截圖,不是以日期加序號的方式呈現,就是名稱加上序號,...

鳴人

Build Pipeline的YAML結構描述:多個Agent Job

前一篇的「YAML格式以外的Pipeline傳統編輯器(Classic Editor)」文章內容中看到了一個Pipeline中可以有多個不同的Agent Job,在每一個Agent Job底下再各自加入不同的Task,在前面文章的範例中都只是很單純的加入Task,只在一個Age...

鳴人

YAML格式以外的Pipeline傳統編輯器(Classic Editor)

先前在「CI/CD從這裡:設定第一個Pipeline(範本與編輯介面介紹)」這篇文章內容建立Pipeline的時候是使用新版本的YAML格式編輯器,Pipeline的所有設定都會以文字格式儲存(即Configuration as code),但是其實在早期建立Pipeline的時候是透過UI畫面建立的。

鳴人

接收Azure DevOps的通知:Microsoft Teams頻道中的連結器

我相信如果是使用微軟產品的公司,大多數也都有使用Microsoft Teams作為公司內部的IM訊息軟體,所以這一篇就來看一下同為微軟產品的Azure DevOps與Teams的整合度如何吧!Teams可以發送訊息的地方分為Chat與Teams底下的Channel,這篇主要是設...

鳴人

設定Build Pipeline與Release Pipeline的執行權限

先前我們建立Build pipeline和Release pipeline的時候使用的都是管理者的帳號,可以建立Pipeline自然在執行的部份也是沒有任何問題。問題是Pipeline建立完成之後,接下來手動觸發執行的動作可能是交待給別人去執行,所以就會需要替實際執行者設定權限才行。

鳴人

CI/CD從這裡:建立第一個Releases Pipeline

這篇我們來建立Release pipeline吧!從Azure DevOps Project左邊的Pipelines選單底下的Releases點擊之後,第一次進入會看到下面這個空的畫面: 點擊New pipeline之後右邊會跳出選擇範本的畫面,我們選擇Empty...

鳴人

建立自管的Azure DevOps Agent(Linux Container agent)

前一篇文章建立了Azure DevOps Agent的Windows Container Image,已經知道了基本的概念就是: 選擇基底映像檔安裝所需要的額外套件與程式將Azure DevOps Agent的開始程式start.ps/start.sh複製進去 既然...

鳴人

建立自管的Azure DevOps Agent(Windows Container agent)

前一篇提到了在Windows VM中安裝Azure DevOps Agent,步驟非常的簡單,不過Azure DevOps Agent也可以在Container內執行,這一篇就來看看如何在Windows Container內執行Azure DevOps Agent。

鳴人

建立自管的Azure DevOps Agent(Windows VM agent)

前一篇已經簡單的介紹了Azure DevOps Agent,這篇還是實際來操作一次在Windows VM中安裝Azure DevOps Agent吧!首先,我們必須要先產生一個等一下安裝Agent後會需要使用到的PAT(Personal access token),在登入的情況...

鳴人

CI/CD的關鍵:Azure DevOps Agent

先前介紹Azure DevOps的Pipelines的時候有提到過Azure DevOps Agent,它是Pipelines與Releases執行的基礎,前面的範例都是使用微軟Host在雲端的Agent來執行,其實我們也可以在自己的機房內安裝Agent的程式在VM或Conta...

鳴人

CI/CD從這裡:Pipeline設定Yaml以外的Trigger方式

前一篇提到了Build pipeline的排程除了可以在Yaml內設定之外,也可以透過傳統UI的方式設定。同樣的,Repo內的檔案異動觸發的方式也分為Yaml設定和傳統UI設定兩種方式,而且在前一篇的截圖畫面中就有透露了唷!Yaml設定的方式其實在範本中最上面的trigger那...

鳴人

CI/CD從這裡:Pipeline設定Schedule,每日晚上排程執行

現在有不少的軟體會有一個特殊的版本叫Nightly,從字面上的意思就可以得知是指每個晚上發行的版本,而這個每晚發佈一個版本基本上都是靠Pipeline在晚上的時候執行build的動作,完成之後將該版發佈出來,是一個比alpha、beta這些迭代更快速的版本,如果要達成這樣的排程...

鳴人

Artifacts應用:讓外部合作夥伴也可以從Private nuget安裝Package

前面幾篇文章都在提Azure DevOps Artifacts,也就是如何利用這個服務來達成私有化的nuget套件庫。雖然私有的套件庫可以不需要將公司專案的package上傳到網路公開的nuget.org,但是如果是有部份外包的專案,或是有外部合作夥伴的時候,要如何讓他們也可以存取私有的套件庫呢?

鳴人

Pipeline與Artifacts應用:覆寫C#專案屬性資訊

前面文章透過Pipeline上傳nuget package到Artifact feed的時候因為產生的版本已經在之前上傳過了,所以造成Pipeline最後執行失敗。為了要解決這個問題,希望能夠在Pipeline執行的時候自動覆寫版本的資訊,利用Pipeline的BuildId或...

鳴人

Pipeline與Artifacts應用:Build nuget package上傳到Private nuget

前一篇內容設定了C#專案裡的Generate NuGet package on build,讓專案編譯的時候自動產生nupkg檔案,接著手動使用cli工具將nupkg檔案push到Azure DevOps Artifacts,這篇就來看看如何將這些動作設計在Pipeline裡面吧!

鳴人

Artifacts應用:上傳第一個package

前一篇文章簡單介紹了Azure DevOps Artifacts,知道了它就是用來存放私有套件的套件庫,這一篇我們就來將C# Project產生的nuget package上傳上去吧!首先,要產生nuget package最簡單的方式,就是在C#專案中的屬性中勾選Generat...

鳴人

Azure DevOps Artifacts簡介

前面連續好幾篇的Pipeline,是不是有點膩了呢?這一篇讓我們暫時來換換口味吧!這裡的Artifacts指的是Project左邊選單中的Artifacts,和前幾篇Pipeline裡面所指的Artifacts並不相同,只是剛好英文名稱一樣而已。

鳴人

CI/CD從這裡:編譯專案與上傳成品

前面的文章都是在介紹Pipeline介面、範本內容,這一篇終於要真正進入正題,將Repo中的ConsoleApp透過Pipeline來編譯,並且將編譯完成的成品放到Pipeline的成品庫(Artifacts,但是這個並不是Project左邊選單的Artifacts)。

鳴人

CI/CD從這裡:設定第一個Pipeline(成功與失敗)

前一篇文章介紹了Pipeline的範本與編輯介面,並且比較了.NET Desktop範本與Starter範本的內容,這一篇用Starter範本來介紹Pipeline執行之後的介紹與顯示的資訊。如果是在Yaml編輯介面按下Save and run,那麼應該會直接來到執行的畫面,有...

鳴人

CI/CD從這裡:設定第一個Pipeline(範本與編輯介面)

前一篇介紹了要用來作為建立Pipeline的材料,這篇就要開始來建立第一個Build Pipeline,也是CI(Continue Integration)的第一步。在Azure DevOps中建立Pipeline有兩個入口,一個是直接從程式碼倉庫Repos底下的Files功能...