[英]Azure DevOps multiple Release Pipelines for single CI Build Pipelie for multiple Feature Branches ; )
我們最近開始使用 Azure DevOps,我在為 DEV 環境設置發布管道時遇到了麻煩。
當前狀態:
問題:
例子:
開發人員 A 正在為 CarConfigurator 項目開發 ChangeTireColor 功能
開發者 B 正在為 BikeConfigurator 項目開發 ChangeFrameSize 功能
A 提交 --> 觸發 CI 構建
B 提交 --> 觸發 CI 構建
A 現在啟動 CarConfigurator 發布管道
結果:
由於上次提交是針對 BikeConfigurator 項目,因此開發人員 A 所做的更改不在 BuildPipeline 的 output 中,因此 CarConfigurator 的發布對應於舊狀態。
問題:
如何確保 CarConfigurator 發布管道始終發布 CarConfigurator 功能的最新提交? 是否有創建 DEV 分支的替代方法,始終將功能合並到其中,然后使發布管道從 DEV 發布?
您的問題陳述清楚地表明:
CI 構建管道的 output 始終對應於上次提交的功能分支的狀態。 因此,發布管道總是發布最后一個功能分支提交
似乎每個構建似乎都超過了之前的構建。 如果你要這樣做,那么你應該只從一個共享分支構建,正如你提到的:
創建一個 DEV 分支,始終將功能合並到其中,然后使發布管道從 DEV 發布
或者,如果您不想創建共享分支並希望單獨構建每個功能分支,那么一種解決方案是將這些構建工件存儲在其他地方,以便您以后可以獨立部署它們。
吹毛求疵的旁注:我猜這個說法可能並不完全正確:
我有一個 CI 構建管道,它在每次提交到功能分支后自動啟動。
提交通常會在本地進行,因此管道可能會在功能分支上的每次“推送新提交”之后啟動。 (這似乎很明顯,但我建議在此處使用確切的語言以防止任何混淆,特別是對於較新的 Git 用戶。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.