我們在 Azure Pipelines 設定變數(Variables)的時候,預設所有變數都會成為每個 Steps 中的預設環境變數,可以直接透過環境變數取用該變數。不過,當你把變數加上鎖頭(Lock)變成了「安全變數」的話,預設環境變數就看不到了,這時該怎麼辦呢?這篇文章告訴你!
... 繼續閱讀 ...
我們有個大型的 Angular 專案,原本在 Azure Pipelines 的 CI 都很順利,但是一個月前開始變的不穩定,常常會掛掉,而掛掉的原因是「記憶體不足」造成的。本篇文章我打算分享本次問題的 Log 內容,並提供一個解決方法。
... 繼續閱讀 ...
上周我在一家公司進行 Azure Pipelines 的企業內訓,在示範在地端架設 Pipeline Agent 的時候,直接就裝在我的 Windows 10 筆電上,過程也都順利的讓 Agent 上線,也可以把 Pipeline 的 Job 排送到這台執行。不過,在跑 Pipeline 的時候卻出現了一個詭異的錯誤訊息,我最後還是去翻出 Azure Pipelines Tasks 的 CmdLineV2 Task 原始碼才得知真相。今天這篇文章我就來說說這個鮮為人知的地雷!
... 繼續閱讀 ...
昨天我建立了一個有 18 個 Repos 的專案,在批次設定的過程,我肯定要用 Azure Pipelines 的 YAML syntax 來撰寫,否則用傳統編輯器設定,肯定按到手酸。不過,在撰寫的過程中,有一次不小心寫壞了,導致一次 18 個 CI 同時啟動,但我只有四條 Pipelines 可用,一想到要等全部跑完才能測試下一輪,就覺得我應該要寫支小程式批次取消。因此這篇文章就是為此而生,讓你快速的取消所有尚未啟動的 Pipelines 作業。
... 繼續閱讀 ...
有時候我們想要在 Azure DevOps Services 上面刪除一些早期的 Pipeline (Build),但是刪除時卻會遇到 One or more builds associated with the requested pipeline(s) are retained by a release. The pipeline(s) and builds will not be deleted. 的問題,導致我們怎樣都無法刪除。這篇文章我打算來說明一下幾個重要觀念,以及如何才能成功刪除這些用不到的 Pipelines。
... 繼續閱讀 ...
我們過往設定 CI/CD 的時候,為了要避免 Pull request 的時候也不小心觸發 Release 部署網站,我們都會建立另外一組 Build pipeline 專門給 Pull request 時使用 ( 特定 Branch 的 Build Validation )。不過,這個額外的 Build pipeline 跟原本分支的 Build pipeline 完全一樣,額外維護這份 Pipelines 顯得非常多餘。我今天終於研究出正確的設定方式,所以這篇文章將來說明正確的設定方式。
... 繼續閱讀 ...
Azure DevOps Services 的 Hosted Agent (vs2017-win2016
) 與 GitHub Actions 的 Runner (windows-2016
) 即將在 2022/03/15 正式移除對 Windows Server 2016 的支援,屆時使用這些 Hosted Agents 的 Pipelines 將無法執行。但我們公司使用 Azure DevOps Services 多年,數百個專案的 CI/CD 很難一個專案一個專案檢查是否選用的 Hosted Agents 即將退役,這篇文章我將分享怎樣可以批次找出有問題的 Pipelines 設定。
... 繼續閱讀 ...
Azure Pipelines 有個 Logging commands 可以用來與 Agent 進行溝通,你可以在執行 Pipelines 的過程中,對 Agent 做出許多設定,可以做的事情還蠻多的,而且我之前也寫過好幾篇文章,今天我想專注在「環境變數」這件事情上,尤其是 PATH
環境變數。
... 繼續閱讀 ...
我之前有在 使用 MSDeploy 部署一個在 Private Link 封閉網路環境下的 Function App 文章中分享透過 MSDeploy 部署到任意網站的方法。今天這篇文章我則是要來分享如何在只有 發行設定檔 (Publish Profile) 的情況且沒有任何 Azure 訂用帳戶權限的情況下,如何順利透過 Azure Pipelines 的 Hosted Agent 將檔案發佈到 Azure App Service 任意站台下。
... 繼續閱讀 ...