Azure DevOps 2021/6/17の更新

Azure DevOps Sprint 188のリリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

PATのポリシーをAzure AD側で設定できるのはいいですね。もちろんAzure ADベースで動いている必要がありますがMSアカウントベースのやつはまぁいいでしょう。大規模にもならないし。

条件付きアクセスポリシーでIPv6サポートもうれしいですね。最近はv6プラスが使える環境も多いと思います。IPv4だけだと思っていたら実はIPv6使っていて、条件付きアクセスポリシーにかかってなかったとかないように。

ClassicリリースとマルチステージのYAMLではまだ若干の機能差があるのですが、その一つリリースに使ったビルド成果物を自動的に保持する機能がYAMLにはありませんでした。今回、YAMLのパイプラインをresourcesに定義することでそのギャップが埋まることになります。

docs.microsoft.com

Multi-Stageとはいえ、セキュリティやガバナンスを考慮すると一つのYAMLでビルドとリリースをやるのは正直お勧めしづらいので、リリースパイプラインはリソースにして分割していたほうがいいんじゃないかなとは思っています。

今まで必ずEnvironmentsを作ってからパイプラインで参照していたので全然気づかなかったのですが、YAMLパイプラインから作成してしまえばだれでもEnvironmentsの定義ってできたんですね。基本的にビルド定義のmasterマージとともにBuild Administratorが作るものだと思っていましたが、さすがにそれはちょっと…ということで制限が入ることになりました。いいことだと思います。

TFVC用のShell Extensionは長い間Visual Studio 2019に対応していなかったのですが、VS2022がリリースされた末期になってやっと対応版がリリースされました。長かったなーGitが主流になってきているとはいえ、業務で使うような巨大なレポジトリはTFVCの方が便利というケースもあるので、そういう人にはいいですね。

最近ガバナンス関係の強化が多いなぁと思いますが、これはこれで助かることが多いのでいいのではないでしょうか。

ではまた三週間後。

Translate to Japanese to Azure DevOps release not…

Azure DevOps 2021/5/26の更新

Azure DevOps Sprint 187リリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

今回は機能は少なめでしたけど、Delivery Plans 2.0が正式版ということでエントリーは長めです。でもdeepl翻訳なんかよくなってるようで直すところ少なかった…。

Delivery Plans 2.0が正式版になって、拡張機能ではなくなりました。拡張機能であるが故の制約がほとんどなくなって便利になります。少し大きいチームを運用するときとか絶対に欲しい機能だと思いますので、ぜひ使ってみてください。Dependency Trackingもバックエンドや外部に依存するような機能があるときはすごく便利です。

Protected ResourceがVariable Groupsおよび、Secure Fileにも適用されました。これもとてもいいですね。私Protected Repositoryの動画作ろうと思っていたのですが、前のSprint 186が一向に展開されずまだかまだかと思っていたら単にブラウザーのキャッシュの状態か何かで出てないだけで、とっくに展開されていたという…予定通り2‐3週間で展開しているようです。

この件で調べていて教えてもらったのですが、海外のMVPが作っているTfsCmdletsの中にあるGet-TfsVersionというコマンドレットを使えば現在展開されているAzure DevOpsのバージョンがわかるのだそうです。試してみてください。オンプレミスでも使えるそうです。

github.com

全Azure Pipelinesユーザー待望のYAMLエディターでTemplateがようやくサポートされることになりました(Yes!)。現在のところPreviewを有効にして、すでにつくられているものでいくつかの限定的な検証ができるだけですがこれができるだけでもえらい助かります。パスの位置や引数とかどうしても間違えやすいですしね。私のところにはまだ来てないですが、来たら試してみます。

Ubuntu 16.04のEOLに伴い、Azure Pipelinesからも消えます。移行を促すために一定時間短い間わざとUbuntu 16.04を使ったパイプラインを失敗させるそうです。日本時間では夜中の2時とかになるので、もしも夜中の本番デプロイを実行している場合は気を付けてください。

同じくUbuntuイメージにインストールされる.NET SDKのパッチが最新版のみになるそうです。あーあのSDKの名前そういうつけ方だったのか。古いSDKに依存しているような場合(といってもセキュリティFIXだから早めの移行を)は注意してください。

ではまた三週間後。

Translate to Japanese to Azure DevOps release not…

Azure DevOps 2021/5/4の更新

Azure DevOps Sprint 186リリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

今回、Azure Repos(Gitのみ)を保護されたリソースとして定義できるようになりました。これは非常にうれしい。別のエントリーでもお話したセキュリティ&コンプライアンスの欠点のひとつとして、「レポジトリーはreader(チームプロジェクトに参加していれば大体つく)権限があれば参照できてしまう」という仕様がありました。

kkamegawa.hatenablog.jp

例えばリリース用のYAMLテンプレートをどこかのレポジトリーで集中管理させて、特定のパイプラインのみ参照させたいということが基本的に難しかったのですが、この機能を使えば実行時の検証が入るのでとても助かります。

PAT管理のAPIが一般提供可能になるの早かったですね。前のスプリントでプレビューになったばかりなのに。PAT管理は悩みの種でしたが、テナントとの連携で楽になりそうです。

Artifactsのごみ箱に入ったフィードが消せるようになったのもストレージ節約になってうれしいですね。

ではまた三週間後。

Translate to Japanese to Azure DevOps release not…

Azure DevOps 2021/4/13の更新

Azure DevOps Sprint 185リリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

とはいっても最近機械翻訳も出てきたので、一緒に貼り付けておきますね。

docs.microsoft.com

このスプリントのリリースノートはまだ機械翻訳ではないですが、そのうち出てくるのかな。今はまだSprint 184までが機械翻訳になっているようです。ドキュメントも機械翻訳になっているので、今まで英語だからとあきらめていた人も読んでみてください。Bingの翻訳以前よりはだいぶ良くなっています。

今回はDelivery Plans 2.0のトラッキングで長いワークアイテムの名前が省略されなくなったのはいいですね。例えば命名規則でプレフィックスを付けていたような人には助かるんじゃないかなと思います。

通常は組み込みテンプレート使うと思いますが、開発プロセスで独自のワークアイテムの種類を作ることはあると思います。そういう時バーンダウンウィジェットでは集計できなくて困っていたのが解消されるのはいいですね。

今回短いなぁ…あっという間に翻訳できてしまいました。ではまた三週間後。

Translate to Japanese to Azure DevOps release not…

Azure DevOps 2021/3/23の更新

Azure DevOps Sprint 184のリリースノートの翻訳を行いました。オリジナルはこちらからご覧ください。

docs.microsoft.com

最大の問題というか変更としては、無条件にAzure Pipelinesの無償枠が与えられなくなったということです。今まではorganizationを作ると自動的に1800分の無償枠とパブリックプロジェクトには10並列の無制限実行時間が与えられていたのですが、ビットコインの高騰を受けて、マイニングのターゲットとして狙われることになってしまいました。

GitHubも事情は同じなのですが、あちらはアカウント単位で設定できるのでBANすればいいだけですが、Azure Pipelinesの場合、MSアカウント作ってしまえば自在にorganization作れて、organization単位で無償の実行時間が与えられるのでより狙われやすいということだったのでしょう。Twitterでもしばしばビルドキューに入るまで長い時間かかっているという話を見かけましたが、ほぼこの不正マイニングが原因だそうです。

パイプラインの保持ポリシーがちょっと変わります。クラッシックビルド(YAMLではない方)を使っている人は注意してください。一度動き出すとなかなか変えないので、この警告見る事も少ないかと思います。

パイプラインの環境変数上書きは便利でもあるのですが、悪意がある人とか意図せず上書きしてしまって挙動がおかしくなることがあったので、タスクがわで上書きできないようにしたそうです。sshなどの機密情報が入るような組み込みタスクも既に更新されているそうなので、可能な限り新しいバージョンへの変更をお勧めします。

Gitではforkすることが多いですが、forkされたレポジトリで機密情報を扱わせるのは、開発プロジェクトではともかく、組織内ではなかなか難しいところです。しかし、インナーソース(組織内でオープンにソース公開して改良を続ける)が進まないという事もあるので、明示的に認めた場合は使えるようにするという設定ができるようになりました。

Azure使う人しか関係ないですが、Azure関係のモジュールが最新版だけ組み込みになります。これは個人的にはありがたいです。あれ、割とディスク食う割には必要なケースがなかったので。セルフホスト版にはもちろん影響しませんが、自分で作るセルフホストイメージでは最新版だけにしています。

最後はAzure Reposでレポジトリ削除権限を持っている人に限られますが、レポジトリの一時無効化ができるようになりました。書かれているように、リリースしてはならない非互換のライセンスを持つオープンソースライブラリが混入していたり、知財で公開不可能なものを組み込んでいたりした場合ですね。非常に有用だと思います。

Pipelinesの変更は残念ですが、うまく検出できるモデルができたら元に戻すそうなので、期待して待ちましょう。ではまた三週間後。

Translate to Japanese to Azure DevOps release not…

Azure DevOps 2021/3/3の更新

Azure DevOps Sprint 183のリリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

Twitterでも書きましたが、マイニングに不正利用されてその管理にマンパワーが取られすぎてしまったためにオープンソース向けAzure Pipelinesの無料並列ビルドの提供をやめることにしたそうです。一律中止ではなく、使っている人はメールを送れば引き続き使えるようになるそうです。GitHub Actions側にはこの制限はないということなので、監視は基本的にActionsに注力することにしたのでしょうか。

あと、PATの管理を行うためのAPIがプライベートプレビューで提供されるそうです。PATをPATを動的に生成したいみたいなシナリオがある方は連絡してみてください。

以前も書いた通り、プロジェクトに入っている人以外のメンバーの検索、タグ付けができなくなるそうです。これは非常に嬉しい改善ですね。今までこれをやるためにはorganizationを分割するしかなかったので、例えば組織内で一つのAzure DevOpsに集中させることが難しかったのです。こちらでも書いています。

kkamegawa.hatenablog.jp

これで特にインナーソースで使う場合、管理者すくなりますね。

ではまた三週間後。

 

Translate to Japanese to Azure DevOps release not…

Azure DevOps 2021/2/4の更新

Azure DevOps Sprint 182リリースノートの翻訳を行いました。オリジナルはこちらからみてください。

docs.microsoft.com

.NET Core 3.0がEOLになって半年経ったので、Hosted Agentから消えるそうです。Windowsにはもともと入っていなかったので、Linux/macOSのみが対象だそうです。組み込みされなくなっただけなので、.NET Core Install Taskを使えば継続して使えます。ちょっとだけ時間がかかるようになりますね。

今までorganization単位でユーザーの検索ができていた仕様が改善されて、Projectスコープになります。この仕様で困ることがあるといえば、別プロジェクトへforkした場合、お互いのプロジェクトにユーザーを登録しないといけなくなりますが、forkはお互い干渉しないというものになるので、まぁいいのかな。

あとはDelivery Plansの上限が15になったり、Chart Widgetのgroup byがGAになったりということですね。今週も小幅で翻訳楽でした。

ではまた三週間後。

ranslate to Japanese to Azure DevOps release note…