Azure DevOps、YAMLリリースパイプライン?[閉まっている]


87

このプロセスに従って、.NET Core WebAPIプロジェクトのYAMLビルドパイプラインを作成します。

https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started-yaml?view=vsts

それをリリースすることになると、(最近名前が変更された)AzureDevOpsはリリースパイプラインを定義するためのYAMLをサポートしていないようです。ただし、展開タスクが定義されていることがわかります。例:

https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-rm-web-app-deployment?view=vsts

YAMLをサポートするためのリリースパイプライン機能のアップグレードを期待していますか?サポートしている場合はいつですか?


間もなく、ビルド2019で:youtube.com/watch?v = ORy3OeqLZlEマルチステージパイプライン(およびリリースYAML)がプレビューされます。[機能のプレビュー]メニュー項目で有効にします。
nullforce

2
誰かがこの質問がトピックから外れている理由を理解するのを手伝ってもらえますか?私にとっては、stackoverflowにとって良い質問のようです。
Tobske

回答:


59

この応答を書いている時点で、機能のタイムラインはyamlのリリースが2018年第3四半期に予定されていることを反映しています。

https://docs.microsoft.com/en-us/azure/devops/release-notes/

更新:これは数回ぶつかりました。以下のコメントを確認することをお勧めします。人々はそれらを見つけたときに更新を提供しているからです。

更新

コメントによると、これは現在可能です:https//devblogs.microsoft.com/devops/whats-new-with-azure-pipelines/。以下を記事からコピーして貼り付け、さまざまな段階を使用して説明します。

stages:
- stage: Build
  jobs:
  - job: Build
    pool:
      vmImage: 'Ubuntu-16.04'
    continueOnError: true
    steps:
    - script: echo my first build job
- stage: Deploy
  jobs:
    # track deployments on the environment
  - deployment: DeployWeb
    pool:
      vmImage: 'Ubuntu-16.04'
    # creates an environment if it doesn’t exist
    environment: 'smarthotel-dev'
    strategy:
      # default deployment strategy
      runOnce:
        deploy:
          steps:
          - script: echo my first deployment

9
現在、2018年第4四半期の機能に含まれています。
sschoof


6
昨日ツイッターで連絡しました。YAMLリリース定義は、3月末までにプライベートプレビューに入る予定で、現在作業中です。twitter.com/gopinach/status/1088320931745935360?s=21
rh0720 0519年

5
これを追跡し、最新の作業項目- dev.azure.com/mseng/AzureDevOpsRoadmap/_workitems/edit/1364226
antmeehan


6

YAMLビルドパイプラインの作成エクスペリエンスはプレビュー中です。(今日は2018-12-04です)

リリースパイプラインのYAMLはまだ道のりが遠いようです:2019 Q2

プレビュー機能は、次のようにプロファイルから有効にできます。

プロファイルメニュー

YAML機能

編集: nullforceがコメントで指摘しているように、これはビルドパイプラインのYAMLエクスペリエンスのみを有効にし、リリースパイプラインは有効にしません。

更新(2019-05-16): Microsoftの「Build2019」に続いて、ビルドとデプロイの両方の完全なYAMLエクスペリエンスが同じYAMLパイプラインファイルで可能になるはずです。


3
この質問は、ビルドパイプラインではなく、リリースパイプラインについて尋ねています。指定したプレビュー機能は、ビルドパイプラインYAMLのみをオンにします。
nullforce 2018

@nullforceありがとうございます。私の回答に修正を追加しました。これがリリースパイプラインで有効になっている場合、またはyamlがプレビューから外れた場合も、最新の状態に保つように努めます。
ジム・ウォルフ

1
それはまだ利用できません。
ATL_DEV

@ATL_DEVは、状態について詳しく説明したり、これに関するリソースにリンクしたりできるので、答えを修正できます。それが利用可能だように私には見えます:ドキュメント
ジム・ウォルフ

@ Jim Wolff--マイクロソフトは嘘つきです!リリースとデプロイメントのパーツは、その安っぽいUIを介してのみ構成できます。
ATL_DEV

5

製品チームはそれに取り組んでいます。リリースノートから更新を追跡できます


1
「製品チーム」は1年経っても何もしていません。Azure Dev Ops UIは依然としてひどいものであり、デプロイメントのyamlサポートは、すべての空の約束にもかかわらず、まだ存在していません。ドキュメントは存在せず、ネット全体に散らばっています。AzureDevOpsは使用するのが大変です。Microsoftは、行うには何か他のものを見つける必要があります
ATL_DEV

技術的な正確さのために-2019年11月に投稿されたコメントにもかかわらず、デプロイのYAMLサポートは「まだありません」と述べていますが、実際には2019年5月にAzure DevOps(スペースなし)に追加されました。その他の回答とコメントはこれにもっと入ります。これを読んでいる誰かが間違った考えを持っていることを確認したかっただけです。
–MikeBaz

4

私は今まさにこのようなことをしている最中ですが、現在のRESTAPIを使用しています。ここで説明したのと同様のことを行っています(VSTSでリリース定義をインポートするにはどうすればよいですか?)。基本的に、テンプレート化されたJSONリリースパイプラインファイルを、変数プレースホルダーとバージョン番号が埋め込まれたソースコードリポジトリに保存しています。次に、Azure DevOpsを呼び出すPowerShellスクリプトを用意します(これは長い言葉です。VSTSと入力することをお勧めします。ADと入力し始めるかもしれません)。

  • リリースパイプラインをチェックするためのRESTAPIが存在します-動作します
  • 存在しない場合は作成します-動作します
  • 埋め込まれたバージョンと更新を比較し、必要に応じて(ここで立ち往生していますが、解決します。パイプラインを変更しても、パイプラインが変更されていないというエラーが返されます)。

ビルドパイプライン中にこれを実行して、同様のリリースパイプラインを手動で変更する必要がないようにします。これもYAMLファイルにしたいのですが、これが今日の私です。これがお役に立てば幸いです。


1
私は立ち往生していて、UPDATEプロセスでの作業を停止しました。どうして?リリース定義jsonテンプレートには、各ビルドステップのIDがあります。IDは、リリースパイプラインの作成時に特定の番号である必要があります。ID番号は作成後に変更されます。したがって、リリースパイプラインを更新すると、「新しい」ステージID番号を使用できなくなります(リリースパイプラインを最初に作成するときに予約されます)が、代わりに、現在有効なステージIDを使用する必要があります。
アンテビオス

したがって、実際のプロセスは次のようになります。プロセスの作成にはテンプレートを使用します。更新プロセスでは、リリース定義をダウンロードしてテンプレートと比較し、ダウンロードしたリリース定義を更新してから、それをVSTSに更新し直します。ふぅ!つまり、独自の比較プロセスとエラーチェックを作成する必要があります。
アンテビオス

実際、新しいリリース定義(POST)の場合、idプロパティを無視できます-リリース定義idオブジェクトの場合、すべての environmentオブジェクトで無視できます-rankプロパティの設定で十分です(他の必要なものと一緒に)-POST呼び出しで自動的に作成されますIDと応答オブジェクトを返します。リリース定義が作成されたら、組織内のすべての定義を取得するために、リリース定義で実行できますLIST-GET呼び出しはここに
難読化

-5

パイプラインは1つ以上のジョブで構成され、リソースと変数が含まれる場合があります。ジョブは、1つ以上のステップといくつかのジョブ固有のデータで構成されます。ステップは、タスク、スクリプト、または外部テンプレートへの参照です。これはYAMLファイルの構造に反映されています。ご覧ください、ここで詳細について


5
投稿に署名を追加しないでください。それらはスパムと見なされる可能性があります。
ゾーイ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.