1

内部テスト ステージとすべての運用ステージが Octopus を使用してデプロイされるまで、ビルドとリリース パイプラインに AzureDevOps を使用しています。Azure の最初のステージは、Octopus でリリースを作成するように構成されており、作業項目の内部テストへの展開を正常に示しています。下の画像を参照

ここに画像の説明を入力

ここで、octopus でプロモートして後の本番ステージに移行するすべてのデプロイメントをここにも表示するか、関連するステージに移動する octopus の URL へのリンクを表示したいと考えています。

これは可能ですか?

4

1 に答える 1

1

Octopus デプロイ URL は、azure Devops 作業項目のデプロイ、開発、および関連作業フィールドに表示できません。これらのフィールドでは、Azure DevOps からの作業項目、Azure ビルド、PR などへのリンクのみがサポートされます。

Octopus についてはよくわかりませんが、リリースに含まれるパッケージに関連付けられているビルド情報から azure devops 作業項目 ID を取得できるツールまたは octopus API があれば、azure devops rest apiを使用してハイパーリンクを追加できます。 azure Devops 作業項目の octopus url へ。以下のスクリーンショットのように、[リンク] タブでハイパーリンクを見つけることができます。

ここに画像の説明を入力

最初のステップは、Azure DevOps を Octopus と統合することです。手順はこちらでご確認ください。

次に、Azure DevOps パイプラインを構成して、作業項目を含むビルド情報を Octopus にプッシュします。タコのドキュメントAzure DevOps 作業項目追跡統合を確認してください。

次に、 Octopus のスクリプトの下に実行するスクリプト ステップs を追加して、octopus の URL へのハイパーリンクを使用して Azure の作業項目を更新します。(以下のスクリプトを実行する前に、octopus で作業項目の ID を取得する必要があります)

$url= "https://dev.azure.com/{azure devops organization}/{azure devops organization project}/_apis/wit/workitems/{workitem id}?api-version=5.1"

$body='[{
    "op": "add",
    "path": "/relations/-",
    "value": {
      "rel": "Hyperlink",
      "url": "octopus url"
    }
  }]'

$wicrpat ="Personal access token from azure devops"

$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($wicrpat)"))

Invoke-RestMethod -Uri $url -Headers @{authorization = "Basic $base64AuthInfo"} -ContentType "application/json-patch+json" -Method patch -Body $body

パーソナル アクセス トークンを取得するには、こちらの手順を確認してください。

ワークアイテム更新APIの詳細については、こちらをご確認ください。

また、ダッシュボードにウィジェットを追加して、azure Devops プロジェクトで Octopus デプロイを表示することもできます。

上記の希望が役立ちます!

于 2020-03-05T09:32:06.077 に答える