私はこれで一日以上戦ってきました。私は、パターンrelease/*
またはhotfix/*
のパターンに従うどのブランチも、QA環境への展開をトリガーする必要があることを構築しようとしているVSTS CI/CDパイプラインの単純な要件を持っています。予想通り、この構成では、展開をトリガしませんCI/CDの展開条件がトリガーされない
:ここに私の支店ベースの設定です。下のスクリーンショットでわかるように、リリースは実行されましたが、私の環境のいずれに対しても起動しませんでした。 (QAは右から2番目の灰色の四角で、展開が成功したか失敗したかによって、緑色または赤色になります)。この問題を回避するための試みにおいて
、私の代わりにタグを作成し使用してみました。私は条件付きでビルドタグをブランチの名前に基づいて追加するPowershellのステップを追加しました。
$branchName = $Env:BUILD_SOURCEBRANCH
if ($branchName -like '*release/*')
{
Write-Host "##vso[build.addbuildtag]release"
}
if ($branchName -like '*hotfix/*')
{
Write-Host "##vso[build.addbuildtag]hotfix"
}
ビルドの成果物とログに、このタグが適用されていることがわかるように、ビルドタグが正しく設定されます。しかし、枝を使用して私の試みと全く同じ動作にタグを認識結果であることを私の展開条件を変更する:
EDIT:要求されたよう 、ここでソースを取得してCI定義がありますステップが表示されます。ここに複数の分岐条件を追加するオプションはありません。それらはトリガセクションで設定されます。
ワイルドカードパターンの代わりに1つのブランチで試しましたか? –
@DanielMannはい、特定のブランチ名を指定すると、トリガーするのは唯一の時間です。一時的な回避策として、リリース/修正プログラムブランチを手動で追加することはできますが、VSTSはよりインテリジェントな展開条件をサポートすることになっています。 UIを介してパターンマッチングを行うことができます –
リリースアーティファクトの設定も共有できますか?それはビルドですか? 「はい」の場合は、ビルド定義の「ソースの取得」の設定も共有します。 –