APC 技術ブログ

株式会社エーピーコミュニケーションズの技術ブログです。

株式会社 エーピーコミュニケーションズの技術ブログです。

GitLab 17.5の紹介: GitLab Duo Quick Chat / Secret Push ProtectionのGA / Docker Machine executorのDeprecation

こんにちは、クラウド事業部 CI/CDサービスメニューチームの山路です。

今回は10月18日にリリースされたGitLab 17.5 のアップデート内容を紹介します。本記事ではすべてのアップデート情報を詳細に記載してはいませんので、興味ある内容があれば各ドキュメントを参照ください。

about.gitlab.com

GitLab Duo関連のアップデート: Duo Quick Chatの導入 / Duo ChatがMerge requestに対応

GitLab Duo Quick Chatは、IDE等で開発中のコード画面上にDuo Chatのような画面を表示し、コードを編集しながら視線を移動することなくAIチャットを利用できる機能です。

こちらの動画を見るとわかりやすいですが、今まではIDE上のコード編集画面の横にChat欄がありましたが、それに加えてコード編集画面上にもChat欄が表示されています。これまでよりコード開発がやりやすくなるのがぱっと見でもわかります。

www.youtube.com

なおDuo Quick Chatは現在GitLab Workflow extension for VS Code 5.15.0で利用可能です。GitLab Duoを利用するには、GitLab Premium + Duo Pro / Ultimate + Duo Pro or Enterpriseプランの利用が必要です。

次にGitLab Duo ChatのMerge requestへの対応です。本リリースでDuo ChatからMerge requestに関する質問を投げると回答がもらえるようになりました。具体的にはMRのタイトルやDescription、コメント、 Cahnges タブの内容などについて質問できます。

以下の動画ではMerge requestについて質問する例をいくつか紹介しています。ある例ではMerge requestに含まれるファイルのリンクをコピーしてDuo Chatに張り付け、「なぜこのファイルは変更されたか?」と質問したところ、変更の概要・目的と主な変更点を回答しています。プロジェクトに参集したばかりのメンバーがレビュアーであったり、変更点が大量にあるMerge requestの場合、その変更の意図と内容を把握するのは困難になります。Duo Chatを使うことでMerge requestのレビューやディスカッションをスムーズに進められることが期待できます。

youtu.be

なお本機能の利用には、GitLab Ultimate + Duo Enterpriseプランの利用が必要です。

そのほかのGitLab Duo関連のアップデートは以下の通りです。

セキュリティ関連のアップデート: Secret Push ProtectionのGA

セキュリティ関連では、バージョン17.1でBeta版がアナウンスされていたSecret Push Protectionが、本リリースでGAとなりました。

※Beta版での紹介は以下から

techblog.ap-com.co.jp

Secret Push Protectionは、GitLabにコードをコミットした際に秘匿情報を含むコードがないかチェックし、該当するものがあればコミットをブロックする機能です。紹介動画にある以下のスライドが概要をつかむのに役立つかと思います。

なおSecret Push ProtectionはGA時にいくつか改善されています。またSecret Push ProtectionはGitLab Ultimateプランで利用可能です。詳細を知りたい場合は、以下のGitLabブログもご覧ください。

about.gitlab.com

そのほかのセキュリティ関連の主なアップデートは以下の通りです。

Kubernetesとの連携: GitLab CLIコマンドによるBootstrap / DashboardからのFlux reconciliationの停止・再開

本リリースではGitLabとKubernetesとの連携について、いくつかのリリースがありました。

GitLabとKubernetesを連携するにはGitLab agent for Kubernetesをクラスターにインストールする必要があります。これまではGitLab UIとターミナルを行き来しながらの作業が必要でしたが、GitLab CLI (glab) が glab cluster agent bootstrapコマンドをサポートしたため、煩雑な作業が不要となりました。

またGitLabはKubernetes向けのダッシュボードを提供し、Fluxと連携することでDashboardからReconciliationを実行できます。本リリースから新たにSuspend/Resume操作も追加され、ダッシュボードからFluxの同期状態をより柔軟に操作可能となりました。

そのほかのアップデートは以下の通りです。

Deprecation: Docker Machine executorの廃止アナウンス

本リリースで複数のDeprecationがアナウンスされました。特に影響が大きそうなのはGitLab Runner Docker Machine executorの廃止ですが、2年以上も猶予があるので事前準備はできそうです。

Deprecation対象 概要 廃止時期
GitLab Runner Docker Machine executor 廃止 ver 20.0 (2027年5月)
Scan execution policy 設定できるPolicyごとの scan アクションが上限10個までに ver 18.0 (2025年5月)
GraphQL API Mutation.ciJobTokenScopeAddProjectの廃止 ver 18.0 (2025年5月)
GraphQL field ciUsedMinutesciDurationに名称変更 ver 18.0 (2025年5月)
mergeTrainIndex mergeTrainCountを廃止 ver 18.0 (2025年5月)
Namespace add_on_purchaseadd_on_purchasesに名称変更 ver 18.0 (2025年5月)

さいごに

弊社はGitLabオープンパートナー認定を受けております。 また以下のようにCI/CDの導入を支援するサービスも行っているので、何かご相談したいことがあればお気軽にご連絡ください。

www.ap-com.co.jp