こんにちは、クラウド事業部 CI/CDサービスメニューチームの山路です。
今回は10月18日にリリースされたGitLab 17.5 のアップデート内容を紹介します。本記事ではすべてのアップデート情報を詳細に記載してはいませんので、興味ある内容があれば各ドキュメントを参照ください。
- GitLab Duo関連のアップデート: Duo Quick Chatの導入 / Duo ChatがMerge requestに対応
- セキュリティ関連のアップデート: Secret Push ProtectionのGA
- Kubernetesとの連携: GitLab CLIコマンドによるBootstrap / DashboardからのFlux reconciliationの停止・再開
- Deprecation: Docker Machine executorの廃止アナウンス
- さいごに
GitLab Duo関連のアップデート: Duo Quick Chatの導入 / Duo ChatがMerge requestに対応
GitLab Duo Quick Chatは、IDE等で開発中のコード画面上にDuo Chatのような画面を表示し、コードを編集しながら視線を移動することなくAIチャットを利用できる機能です。
こちらの動画を見るとわかりやすいですが、今まではIDE上のコード編集画面の横にChat欄がありましたが、それに加えてコード編集画面上にもChat欄が表示されています。これまでよりコード開発がやりやすくなるのがぱっと見でもわかります。
なお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のレビューやディスカッションをスムーズに進められることが期待できます。
なお本機能の利用には、GitLab Ultimate + Duo Enterpriseプランの利用が必要です。
そのほかのGitLab Duo関連のアップデートは以下の通りです。
- Self-hosted LLMをCode Suggestions向けに利用可能に (Beta版): GitLab Self-managed版で自分たちのホストするMistral AIなどのモデルを利用可能となりました。オンプレ / プライベートクラウドに閉じることで、よりセキュアな環境でCode Suggestionsを利用できます。
- Code Suggestions Usage eventをエクスポート可能に: これまでは限られた方法でしか取得できなかったCode Suggestions Eventの情報を、GraphQL APIから取得可能となりました。このデータは生データであり、これまでより深い洞察を得ることも可能です。
- Visual Studio for WindowsでDuo Chatを利用可能に
セキュリティ関連のアップデート: Secret Push ProtectionのGA
セキュリティ関連では、バージョン17.1でBeta版がアナウンスされていたSecret Push Protectionが、本リリースでGAとなりました。
※Beta版での紹介は以下から
Secret Push Protectionは、GitLabにコードをコミットした際に秘匿情報を含むコードがないかチェックし、該当するものがあればコミットをブロックする機能です。紹介動画にある以下のスライドが概要をつかむのに役立つかと思います。
なおSecret Push ProtectionはGA時にいくつか改善されています。またSecret Push ProtectionはGitLab Ultimateプランで利用可能です。詳細を知りたい場合は、以下のGitLabブログもご覧ください。
そのほかのセキュリティ関連の主なアップデートは以下の通りです。
- GitLab SaaS版でもCredentials Inventoryが利用可能に: Enterprise userのPersonal access token / SSHキーなどの秘匿情報一覧を閲覧可能となりました。
- Dependency ListにComponentによるフィルター機能を追加: リストに含まれる大量の項目から、関連するものだけを検索可能となりました。
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の同期状態をより柔軟に操作可能となりました。
そのほかのアップデートは以下の通りです。
- Kubernetes Dashboardにリソースの最新のイベント情報を表示可能に: リソースのイベントをStreamするようになり、最新のイベントをDashboardから閲覧可能となりました。
- GitLab agent for Kubernetesの設定をREST APIから可能に: Environment APIに
cluster_agent_id
パラメータを追加し、Agentの設定を可能にしました。 - GitLabとKubernetesが直接通信できない場合も連携可能に: Receptive agentsを使うと、GitLabとKubernetes間で通信できない環境でも両者を連携できるようになりました。本機能はGitLab Self-managed版でUltimateプラン契約時に利用できます。
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 | ciUsedMinutes をciDuration に名称変更 |
ver 18.0 (2025年5月) |
mergeTrainIndex mergeTrainCount を廃止 |
ver 18.0 (2025年5月) | |
Namespace add_on_purchase をadd_on_purchases に名称変更 |
ver 18.0 (2025年5月) |
さいごに
弊社はGitLabオープンパートナー認定を受けております。 また以下のようにCI/CDの導入を支援するサービスも行っているので、何かご相談したいことがあればお気軽にご連絡ください。