Create a gist now

Instantly share code, notes, and snippets.

Embed
Translate to Japanese to VSTS release notes from https://docs.microsoft.com/ja-jp/vsts/release-notes/2018/may-30-vsts

リリース進行状況の視覚化 – VSTS Sprint 135 Update

Visual Studio Team Services(VSTS)のSprint 135アップデートでは、すべてのリリースアクティビティを視覚化する新しい方法をもたらしました。新しいリリースの進行状況ビューでは、昨年開発されたグラフィカルなリリース定義エディタを使用して、進行状況とステータスを表示して、リリースを追跡し、どんな状況でもアクションが実行できます。

Work, Code, Build, Release, さらには認証にも数多くの新機能があります。詳細は以下の機能一覧をご覧ください。

Next steps

注意事項

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

これらの新機能を読んだ後、次のリンクからぜひご自身でVSTSを体験してみてください。

Go to VSTS

Features

Work

Code

Build and Release

Authentication

Work

継承されたプロセステンプレートのインポートとエクスポート

Inherited Processのインポートとエクスポートに役立つ新しいツールが、GitHubで公開されました。テストアカウントで設定を行うことで、より複雑な変更を行った場合でも、他のユーザーと簡単に構成を共有でき、自信を得ることができるようになりました。このツールは、アジャイルチームのひとつで開発されたソースをオープンソースにすることを決めました。理由としては、新しいAPIの実装方法の例として機能し、実際のワークフローへの統合を向上させる方法を示したいからです。詳細は、継承プロセスモデルのドキュメントを参照してください。

Work Items ハブでの列オプションのカスタマイズ

QueriesのようなColumnオプションを、Work Itemsハブで使用できるようになり、最も重要な作業項目をさらにパーソナルに整理できます。複数の列を並べ替える場合は、複数列の並べ替えも可能です。詳細については、Work Items hubのドキュメントを参照してください。

Column Options in the Work Items hub

Code

pull requestのポリシーを上書きしたときに通知を受け取る

Pull Request(PR)とBranch policiesを使用するチームにおいて、致命的な問題に対して夜間でも急遽修正プログラムを導入しなければならない場合など、ポリシーを変更してバイパスする必要が生じることがあります。開発者が適切なことを行い、オーバーライド機能を控えめに使用することを信頼することは理にかなっています。同時に、チームは適切な状況でポリシーの上書きが使用されていることを検証する方法が必要です。これをサポートするため、新しい通知フィルタを追加して、ポリシーがバイパスされるたびにユーザーとチームが電子メールアラートを受信できるようにしました。まずA pull request created or updatedテンプレートを使用し、フィルターのリストからPolicy Bypassを選択します。Policies were bypassedを選択すると、PRが完了し、ポリシーがバイパスされると通知されます。

Bypass policy notification

pull requestでブランチをお気に入りにする

Pull Requestを見ながらついでに、ソースブランチをお気に入りへ追加する操作が簡単になりました。スターをクリックするだけで、お気に入りのブランチのリストに追加できます。ブランチは、Pull Request画面のMineの下に表示され、すべてのブランチのリストの検索時間を節約します。詳細については、ブランチ管理のドキュメントを参照してください。

Build and Release

リリース進行状況を視覚化する

重要!

この機能を使うためには、あなたのプロファイルもしくはアカウントのpreview featureからNew release progress viewsを有効にする必要があります。

新しいリリースの進行状況ビューが使用可能になったことにより、展開の進捗状況やワンクリックでの詳細情報へのライブアップデートが提供されます。新しいビューはリリースパイプラインを視覚化し、何が起こっているのかを理解しやすくし、リリースのさまざまな段階で適切な詳細とアクションを記述します。

Release Pipeline view

パイプライン、リリース詳細、環境

Pipelineビューには、リリースの成果物と展開される環境が表示されます。Release領域には、リリーストリガ、成果物のバージョン、タグなどのリリースの詳細が表示されます。

Environmentsには、詳細な進捗とともに、現在の状態を理解するために役立つ方法でモデル化されています。いつでも、Environments内の状態のリンクをクリックすることにより、ログにアクセスできます。

Release artifacts and environments

事前展開条件と展開後条件

環境への事前展開条件または展開後条件が設定されている場合、承認とゲートの存在が環境に示されます。承認とゲートの進捗状況は、環境の状況にも反映されます。環境の右または左側にぶら下がっている環境のstatusアイコンをクリックすることで、アクションを実行したり、詳細を表示したりできます。

Release environment actions

ゲートをグラフィカルに表示し、ログを表示するための迅速なアクションは、リリースへすばやく移動させられます。

Release environment actions

コミットと作業項目

環境をクリックすることによって、新しいリリース毎に、関連するコミットと各環境の作業項目のリストを個別に表示することができます。リストが長い場合、フィルタを使用して、関心のあるコミットまたは作業項目を探します。

Release environment commits and work items

デプロイ進捗状況とログ

Environmentでは、完了したフェーズとタスクの数や実行時間など、進行中のデプロイメントのライブアップデートが表示されます。環境のstatusをクリックすると、ログを含むビューが開き、現在アクティブなものを中心に表示されます。

Release environment logs

さらに、ログをクリックするとログ中心のビューに入ることができ、すぐにビューを構築してテストすることもできます。

Release environment logs detail

テスト結果と拡張機能

テスト実行の結果は、各環境でも生成されます。test resultsをクリックすると、リリースプロセスに使用している他の拡張機能の結果を含むテストの詳細が表示されます。

Release test results

既存の拡張機能はこの新しいビューで機能します。さらに、拡張機能が開発環境でより多くの情報を表示できるようにするための新しい拡張ポイントがあります。詳細については、コントリビュートと拡張機能のドキュメントを参照してください。

パイプライン内でPythonスクリプトをファイル、もしくはインラインで実行する

新しいPython Scriptタスクは、Pythonスクリプトのパイプラインでの実行を簡素化します。Pythonタスクでは、リポジトリのPythonファイル(.py)からスクリプトを実行するか、タスクの設定に手動でスクリプトを入力して、パイプラインの一部として保存できます。タスクは、パスでPythonのバージョンを使用するか、使用するPythonインタプリタへの絶対パスを指定することができます。

パイプライン内でデータサイエンティスト向けAnacondaツールを使う

Minicondaがマイクロソフトが提供するHosted Agentで利用できるようになりました。condaパッケージと仮想環境マネージャは、SciPyスタック、scikit-learn、CNTK、TensorFlowなどの複雑なデータサイエンスやマシン学習環境のインストール、実行、アップグレードを容易にします。また、パイプラインに必要なPythonのバージョンもインストールされます。

組み込みの新しいConda Environmentタスクは、conda環境を作成するのにも役立ちます。それは、後続のパイプライン・ステップのための環境をアクティブにし、パッケージの依存関係をインストールし、パスにcondaを追加し、オプションでエージェントを最新バージョンのcondaにアップグレードします。

複数のエージェントレスタスクを簡単に実行する

エージェントレスフェーズのタスクは、サーバー上で編成され、サーバー上で実行されます。エージェントレスフェーズでは、エージェントやターゲットコンピュータは必要ありません。エージェントフェーズとは異なり、定義内の各エージェントレスフェーズには1つのタスクしか追加できません。これは、エージェントレスタスクを使う場合、複数のフェーズを使用しなければならないことを意味していました。この制約を緩和して、エージェントレスフェーズで複数のタスクを管理できるようになりました。エージェントフェーズと同じように、同じフェーズのタスクが順番に実行されます。 詳細については、server phaseのドキュメントを参照してください。

プライベートエージェントで並列CI/CDジョブの制限を管理する

重要!

もしもCI/CDで独自にエージェントを運用している場合、並列上限を確認し、意図しないビルドとリリースの待ちが発生しないように計画してください。

VSTSのCI/CDの価格モデルは、自己ホスト型(プライベート)エージェントまたはMicrosoftホスト型エージェントの同時ジョブ数に基づいています。各VSTSアカウントには、並行性の一定の無料クォータが与えられます。それを超えると、Visual Studio EnterpriseサブスクリプションまたはVisual Studio Marketplaceを通じてさらに並行性を得ることができます。

この数ヶ月間、お客様が報告した問題に対処するためにサービスのその部分を再設計したため、自己ホスト(プライベート)エージェントで実行するジョブの並行性チェックを無効にしました。その結果、自己ホスト(プライベート)エージェントが許可されているのと同じくらい多くのジョブを同時に実行することができるようになりました。

6月からは、自己ホスト(プライベート)ホストジョブの並行性チェックを徐々に有効にします。したがって、実行中の他のジョブによってスロットが占有されていると、ビルドとデプロイメントがキュー内で長時間待機することがあります。ビルドまたはリリースのログページは、他のジョブが完了するのを待っているときにこれを示します。

並行処理制限の詳細については、Team ServicesドキュメントのCI/CD Concurrent Jobsを参照してください。Account Setting → Build and Release → Resource limitsに移動することで、VSTSの並行性制限を確認できます。

Azure リソースマネージャーで展開されたVMにおいて、エージェントを簡単に認証する

ビルドエージェントとリリースエージェントを実行するには、複数の方法があります。Azureで実行する場合、簡単で安全です。Azure Active Directory(Azure AD)にAzure仮想マシン(VM)ベースのエージェントをAzure管理サービスアイデンティティで設定できるようになりました。Azure VMに割り当てられたIDを与えることで、そのサービスプリンシパル情報を使用して、エンドポイントのVSTS内の資格情報を保持するのではなく、Key VaultなどのAzure ADをサポートするAzureリソースにVMアクセスを許可できます。

たとえば、コードがAzure Resource Managerを呼び出す必要がある場合、Azure ADの役割ベースアクセス制御(RBAC)を使用して、VMのサービスプリンシパルに適切な役割を割り当てるだけです。 詳細については、build and release agents、およびAzure Managed Service Identityのドキュメントを参照してください。

Add Azure Resource Manager Service Endpoint dialog

Notifications

ユーザーアカウントが代替認証を使ったときに通知して防御する

ユーザーアカウントに対して代替認証が設定されると、変更を確認する通知を受け取ります。これは、変更を正しく行ったことを再度確認する場合に役立ちますが、変更を加えなかった場合にユーザーアカウントが侵害された可能性があるという初期の信号としても役立ちます。その場合、ユーザーアカウントの制御を取り戻し、疑わしい代替認証構成を取り除くための処置を取ることができます。通知が送信される3つのシナリオがあります。

  1. パーソナルアクセストークン(PAT)の作成
  2. SSH鍵の登録
  3. BASIC認証の有効化

詳細に関してはauthenticationのドキュメントを参照してください。

VSTS PAT added email

Feedback

これらの機能についてどう思っているかお聞きしたいと思います。フィードバックメニューを使用して、優先順位を付けたいと思っていることに関するアイデアがある場合は、問題を報告するか、提案をしてください。

Feedback menu

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

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

Jamie Cool

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