Skip to content

Instantly share code, notes, and snippets.

@kkamegawa
Last active April 23, 2023 01:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kkamegawa/6c3f4ea2e0c4b3e18b78699286402a8b to your computer and use it in GitHub Desktop.
Save kkamegawa/6c3f4ea2e0c4b3e18b78699286402a8b to your computer and use it in GitHub Desktop.

パイプラインエージェントの更新に関するお知らせと、Azure Boards プライベートプレビューへの参加するチャンスを提供します - Sprint219

今回の更新の重要なポイントは、Pipeline agent v3 の展開と v2 アップデートの終了です。エージェント v3 でサポートされていないオペレーティングシステムで実行されるパイプラインは、エラーが発生します。

さらに、ふたつのAzure Boardsプライベートプレビューへの参加機会がありますので、お見逃しなく。

詳細は、リリースノートをご覧ください。

Azure DevOps組織にAzure Active Directory(Azure AD)サービスプリンシパルおよびマネージドIDを追加し、組織のリソースへのアクセスを付与できるようになりました。多くのチームにとって、この機能は、自動化ツールを駆動するアプリケーションを安全に認証する際に、パーソナルアクセストークン(PAT)に代わる実行可能な選択肢となり得ます。

この機能の詳細については、devblogまたはAzure AD service principals & managed identitiesを参照してください。

Azure BoardsとGitHubの連携は、数年前から提供されています。BoardsのワークアイテムにGitHubのコミット、pull request、issueの連携が可能です。しかし、現在の統合は、チームプロジェクトあたり、接続可能なGitHubリポジトリは250までに限定されており、APIもサポートされていません。

これは現在の実装上の制限となっています。そこで、250以上のGitHubリポジトリをプロジェクトに追加したいお客様を対象に、限定プライベートプレビューを実施することになりました。このプレビューでは、一つのService Connectionあたり最大2,000のリポジトリを独自に接続するためのツールが構築できる、新しいREST APIのセットへのアクセスが可能になっています。

これらのエンドポイントは以下の通りです:

  • 現在の接続のリスト
  • 接続されているリポジトリ一覧
  • リポジトリの追加と削除

新しいAPIを使いこなすためのドキュメントやコードサンプルはすべて提供します。プライベートプレビューへの参加にご興味がある方は、直接メールでお問い合わせください。その際、必ず組織名(dev.azure.com/{organization})を明記してください。

スイムレーンルールは、スタイルルールに似ていますが、自動的にレーンの移動ができませんでした。その代わりに、カンバンボードに条件を設定して、ワークアイテムを特定のレーンに自動的に移動できるようにします。例えば、チーム内の各人にレーンを設定したい場合があります。作業項目を割り当てると、そのレーンに配置されます。

Gif to demo editing of shareable picklist fields.

この機能は、ワークアイテム分野で上位に投票された項目のひとつであり、ようやくお客様にお届けできることを嬉しく思っています。

私たちは、この機能が本番に間に合うかどうかを確認するために、限られた数のプライベートプレビューに追加されるリクエストを受け付けています。この機能への早期アクセスにご興味のある方は、電子メールをお送りください。その際、組織名(dev.azure.com/{organization})を明記してください。

Community suggestion ticket

注意事項

この機能は新しいボードハブプレビューでのみ利用可能です。

エージェント v3 の展開が完了し、エージェント v2 のライフサイクルが終わりに近づいています。

エージェントのバージョン2.218から、エージェントv3がサポートしなくなったオペレーティングシステムで実行されるパイプラインは、以下のエラーメッセージで失敗します:

(エラーメッセージ)
This operating system will stop receiving updates of the Pipelines Agent in the future. To be able to continue to run pipelines please upgrade the operating system or set an environment variable or agent knob “AGENT_ACKNOWLEDGE_NO_UPDATES” to “true”. See https://aka.ms/azdo-pipeline-agent-v2-eos for more information.

(日本語訳)
このオペレーティングシステムは、将来的にPipelinesエージェントのアップデートの受信を停止します。パイプラインの実行を継続するには、オペレーティングシステムをアップグレードするか、環境変数またはエージェントノブ"AGENT_ACKNOWLEDGE_NO_UPDATES"を"true"に設定してください。詳しくは、https://aka.ms/azdo-pipeline-agent-v2-eos を参照してください。

パイプラインの上記のエラーに対処するために、2つのオプションがあります。

  1. 推奨されるオプションは、エージェントをより新しいオペレーティングシステムを搭載したマシンに移動することです。これは、エージェントの将来のアップデートを取得することができるため、好ましいオプションです。
  2. エージェントにAGENT_ACKNOWLEDGE_NO_UPDATESを指定します。

Pipeline agent v2がアップデートを受け取らなくなったということを認識しメッセージを表示させないようにするには、エージェントが実行されるOSの環境変数に以下の値を設定します(例:/etc/environment、/etc/profile.d、Windowsシステム環境変数設定)。

AGENT_ACKNOWLEDGE_NO_UPDATES=true
You can also set a pipeline variable from a YAML pipeline:
jobs:
- job: 'agentWithVariables'
  displayName: 'Agent with variables'

  variables:
    AGENT_ACKNOWLEDGE_NO_UPDATES: 'true' # Required to not fail job on operating system that is not supported by .NET 6

次に、クラシックパイプラインでパイプライン変数を設定する例を紹介します。

Update AZ Pipelines

上記のいずれかの方法でAGENT_ACKNOWLEDGE_NO_UPDATES=trueを設定すると、エージェントv3がサポートしていないOSでも2.218以降の2.xエージェントが動作を継続するようになります。

注意事項

ここで議論されている機能は今後二~三週にわたって順次展開されます。

Azure DevOpsサービスを体験してみてください。

これらの機能についてどう思っているかお聞きしたいと思います。 フィードバックメニューを使用して問題を報告するか、提案を提出してください。

Make a suggestion

アドバイスや回答を必要とする質問がある場合、Stack Overflowコミュニティで聞いてください。

ありがとうございました。

Dan Hellem

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment