カスタムコンプライアンスフレームワークを搭載したGitLab 17.11をリリース
このたび、GitLab 17.11をリリースしました。このリリースでは、GitLab Duo Self-Hostedに複数のDuo機能が追加されたほか、カスタムコンプライアンスフレームワーク、サービスアカウントUI、CI/CDパイプライン入力など、さまざまな機能が追加されました!
これらの機能は、今回のリリースに含まれる60件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。
GitLab 17.11には、GitLabコミュニティのユーザーから284件ものコントリビュートがありました。ありがとうございました!GitLabは誰もがコントリビュートできるプラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。
来月のリリースで予定されている内容を先取りするには、今後のリリースページをご覧ください。
GitLab 17.11では、カスタムコンプライアンスフレームワークが搭載されました。 クリックしてSNSで共有しましょう!
今月の注目コントリビューターはHeidi Berryさんです
GitLab 17.11の注目コントリビューターは、Heidi Berryさんに決まりました!
Heidiさんは、GitLab Terraformプロバイダーやclient-goプロジェクトのコントリビューターとして活躍してきました。ここ数回のリリースにわたり、グループSAMLリンクでカスタムロールを使用する機能、グループ単位でのブランチ保護のデフォルト設定、サービスアカウントトークンの自動ローテーションなど、要望の多かった機能を継続的に実装してきました。
機能開発にとどまらず、Heidiさんはメンテナンス活動にも積極的に取り組んでおり、イシューバックログの整理、古いテストの可読性向上、よりわかりやすい例を用いたドキュメントの改善など、多岐にわたる活動を行っています。特にclient-goはTerraformプロバイダーやglabを含む多くのプロジェクトでGitLabとの連携に使われているため、このライブラリへのコントリビュートは非常に価値の高いものです。
Heidiさんはこう語っています。「オープンソースへのコントリビュートに興味のある方には、client-goやterraform-provider-gitlabがおすすめです。スタートにぴったりの優れたドキュメントが用意されていますし、助けてくれるメンテナーもいます。私はこれらのプロジェクトを通して、Go言語を実践的に学ぶことができました。」
Heidiさんは、GitLabコミュニティのコアチームメンバーであり、Kingland社のエンタープライズアーキテクトである、同じくコミュニティコントリビューターのPatrick Riceさんにより推薦されました。Patrickさんは次のように語っています。「17のリリースサイクルを通して100件を超えるマージ済みのコントリビュートと、多くのイシューへのコメントを行ってきたHeidiさんは、GitLabおよびTerraformにとって非常に大きな力となっています。本当にありがとうございます!」
GitLabのDeploy::Environmentsチームのシニアバックエンドエンジニア、Timo Furrerも次のように話しています。「Heidiさんの仕事は本当に素晴らしいです。常に一歩先を行き、client-goに必要なSDKコードを実装してくれています。コードのコントリビュートだけでなく、イシューのトリアージにも関わってくれています。これは本当に大きな助けになっていて、こうした支えがあるからこそ、コミュニティ主導のプロジェクトは成り立っていると感じます。」
Heidiさんは、The Co-operative Group社のリードソフトウェアエンジニアとして、デベロッパーエクスペリエンスをより効率的かつ安全に、そして可能な限りスムーズにするために取り組んでいます。
この場を借りて、GitLabに多大なるコントリビュートをしてくださったHeidiさんに心より感謝します!
GitLab 17.11でリリースされた主な改善点
要件やコンプライアンスコントロールでコンプライアンスフレームワークのカスタマイズが可能に
SaaS: Ultimate
Self-Managed: Ultimate
これまで、GitLabのコンプライアンスフレームワークは、特定のコンプライアンス要件や追加の監査が必要なプロジェクトを識別するラベルとして作成されていました。このラベルは、スコープ指定として利用でき、グループ内のすべてのプロジェクトに対してセキュリティポリシーを適用することができました。
今回のリリースでは、コンプライアンスマネージャーがGitLab上でより詳細なコンプライアンスのモニタリングを行えるようにする「要件」を新機能として導入しました。
「要件」は、カスタムコンプライアンスフレームワークの一部として、組織が準拠すべきさまざまなコンプライアンス基準、法律、規制などから、具体的な要件を定義できる機能です。
さらに、コンプライアンスコントロール(従来の「コンプライアンスチェック」)の数を、5種類から50種類以上へと大幅に増やしました!標準搭載された約50種類のコントロールは、定義したコンプライアンス要件に対応付けることができます。
これらのコントロールは、プロジェクト、セキュリティ、マージリクエストの設定をGitLabインスタンス全体で確認し、SOC2、NIST、ISO 27001、GitLab CISベンチマークといった、さまざまなコンプライアンス基準や法規制への準拠をサポートします。
こうしたコントロールへの準拠状況は、基準遵守レポートに反映されます。このレポートは、要件と、それに対してマッピングされたコントロールの関係を考慮して新たに設計し直されています。
また、標準搭載のコントロールを増やしただけでなく、GitLabの外部に存在する項目、プログラム、システムなどに対して、要件を外部コントロールとしてマッピングできるようになりました。これにより、GitLabのコンプライアンスセンターを信頼できる唯一の情報源として使用して、より包括的なコンプライアンス管理が可能となります。

GitLab Eclipseプラグインがベータ版として利用可能に
SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise
GitLab Eclipseプラグインのベータ版をリリースしました。このプラグインは現在Eclipse マーケットプレースで入手可能です。この強力な新プラグインにより、GitLabのDuo機能をEclipse IDEに直接統合でき、Duo ChatやAIによるコード提案をスムーズに利用できるようになります。
現在ベータ版のため、認証オプションの拡充やユーザーエクスペリエンスの最終調整など、機能改善を積極的に進めています。皆様のフィードバックは非常に貴重です。ぜひ、イシュー162にコメントを追加して、GitLab Eclipseプラグインをより良いものにするためのフィードバックをお聞かせください。

GitLab Duo Self-Hostedで、さらに多くのGitLab Duo機能が利用可能に
SaaS: - Self-Managed: Ultimate、Duo Enterprise
GitLab Self-Managedインスタンスで、GitLab Duo Self-Hostedを使用してさらに多くのGitLab Duo機能を利用できるようになりました。以下の機能がベータ版として利用できます。
コードレビューサマリーも、実験的にGitLab Duo Self-Hostedで利用可能です。

Self-Managedインスタンス向けWeb IDEで拡張機能マーケットプレイスが利用可能に
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
Self-Managedユーザー向けのWeb IDEに拡張機能マーケットプレースが登場しました。拡張機能マーケットプレースでは、サードパーティの拡張機能を検索、インストール、管理できるため、快適な開発環境で効率的に作業できるようになります。
デフォルトでは、GitLabインスタンスはOpen VSX拡張機能レジストリを使用するように構成されています。この機能を有効化するには、デフォルトの拡張機能レジストリを使って有効にする手順を参照してください。
また、独自のレジストリやカスタムレジストリを使用したい場合は、カスタム拡張レジストリを接続することも可能です。これにより、利用可能な拡張機能の管理にさらなる柔軟性が生まれます。
拡張機能マーケットプレースを有効にした後でも、各ユーザーは個別に利用を有効化する必要があります。有効化は、環境設定の「インテグレーション」セクションで行えます。
なお、一部の拡張機能はローカルの実行環境を必要とし、Web専用バージョンでは使用できないものがあります。それでも、数千種類の中から自由に拡張機能を選び、生産性向上やワークフローのカスタマイズに活用できます。

GitLab Duo with Amazon Qの一般提供を開始
SaaS: -
Self-Managed: Ultimate
GitLab Duo with Amazon Qの一般提供を開始しました。GitLab Duo with Amazon Qは、AIを搭載したGitLabの包括的なDevSecOpsプラットフォームと自律型Amazon Q AIアシスタントを一つの統合ソリューションとして提供する共同サービスです。GitLab Duo with Amazon Qは開発ワークフローに直接AIアシスタントを組み込むことで、デベロッパーが作業環境を行き来する必要がなくなり、結果として主要タスクのスピードアップを実現します。これらのAIアシスタントはGitLab DevSecOpsプラットフォーム内で高度な知能を持つパートナーとして機能し、コード生成、テスト、レビュー、Javaモダナイゼーションなどの時間のかかる作業を自動化します。これにより、チームはセキュリティと品質基準を維持しながら、より革新的な業務に集中できるようになります。
GitLab Duo with Amazon Qは開発チームに次のような大きなメリットをもたらします:
- アイデアからコードまでの機能開発を効率化:
/q dev
コマンドを使えば、イシューの説明文から数分でマージ可能なコードを直接生成できます。 - 手間なくレガシーコードを最新化:
/q transform
コマンドでJavaコードの最新化プロセス全体を自動化します。 - 品質を落とさずコードレビューを迅速化:
/q review
コマンドを使用すれば、マージリクエスト内で即座にコード品質とセキュリティに関する的確なフィードバックが得られます。 - 安心してリリースするためのテスト自動化:
/q test
コマンドで、アプリケーションのロジックを理解した包括的な単体テストを生成します。

保護されたコンテナタグによるセキュリティ強化
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
コンテナレジストリは、現代のDevSecOpsチームにとって重要なインフラストラクチャです。これまで、GitLabのデベロッパー権限以上のユーザーであれば、どのコンテナタグにもプッシュおよび削除が可能であり、本番環境で使用される重要なコンテナイメージが誤って変更されたり、不正に変更されたりするリスクがありました。
今回導入された、保護されたコンテナタグにより、特定のコンテナタグをプッシュまたは削除できるユーザーを細かく制御できるようになりました。具体的には、以下のことが可能です。
- プロジェクトごとに最大5件の保護ルールを作成
latest
、セマンティックバージョン(例:v1.0.0
)、安定版タグ(例:main-stable
)のようなタグを、RE2正規表現パターンで保護- プッシュ操作と削除操作をメンテナー、オーナー、または管理者に制限
- クリーンアップポリシーによる保護タグの削除防止
この機能を利用するには、次世代コンテナレジストリが必要です。このレジストリはGitLab.comではすでにデフォルトで有効になっていますが、GitLab Self-Managedインスタンスで保護されたコンテナタグを使用するには、メタデータデータベースを有効にする必要があります。
保護されたMavenパッケージでレジストリを安全に
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
本リリースでは、Mavenの保護パッケージが新たにサポートされました。この機能は、GitLabパッケージレジストリのセキュリティと安定性を強化することを目的として設計されました。パッケージの誤った変更は、開発プロセス全体に大きな影響を及ぼす可能性があります。保護パッケージ機能を使うことで、意図せぬ変更を防いで重要な依存関係を守ることができます。
GitLab 17.11では、保護ルールを作成してMavenパッケージを保護できるようになりました。保護ルールの条件に合致したパッケージは、許可された特定のユーザーのみが新しいバージョンをプッシュできます。パッケージ保護ルールによって、意図しない上書きの防止、規制要件へのコンプライアンス強化、手動モニタリングの必要性の軽減を実現できます。
このMavenパッケージの保護機能やその他のパッケージフォーマットへの対応は、gerardo-navarro
さんとSiemens社チームによるコミュニティからのコントリビュートによって実現しました。この場を借りて、GitLabに多大なるコントリビュートをしてくださったGerardoさんをはじめ、Siemens社のみなさまに感謝します!この変更に対するGerardoさんとSiemens社の方々のコントリビュートについて、詳しくはこちらの動画をご覧ください。Gerardoさんが、外部のコントリビューターとしてGitLabにコントリビュートした経験から得た洞察やベストプラクティスを紹介してくださっています。
エピック、イシュー、タスク用のカスタムフィールド
SaaS: Premium、Ultimate
Self-Managed: Premium、Ultimate
このリリースから、イシュー、エピック、タスク、目標、および主な結果に対して、テキスト、数値、単一選択、および複数選択のカスタムフィールドを設定できるようになりました。これまでは、ラベルが作業アイテムを分類する主な方法でしたが、カスタムフィールドを使うことで、よりユーザーフレンドリーな形で、計画アーティファクトに構造化されたメタデータを追加できます。
カスタムフィールドは、トップレベルグループで設定され、すべてのサブグループおよびプロジェクトに反映されます。また、フィールドは1つ以上の作業アイテムタイプにマッピング可能で、カスタムフィールドの値を使ってイシューやエピックの一覧を絞り込むこともできます。

新しいイシュー画面の一般提供を開始
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
このリリースより、新しいイシュー画面の一般提供が開始され、従来のイシュー画面に取って代わります。イシューはエピックやタスクと共通のフレームワークを使用するようになり、リアルタイムで更新されるとともに、ワークフローが改善されました。
-
ドロワー表示:
リストやボードのアイテムをドロワーで開いて、現在の画面から離れることなく素早く内容を閲覧できます。上部のボタンで全ページ表示に切り替わります。
-
タイプの変更:
「種類の変更」アクション(従来の「エピックへの昇格」)を使用して、エピック、イシュー、タスク間でタイプを変換できるようになりました。
-
開始日:
イシューで開始日がサポートされるようになり、エピックやタスクと機能が統一されました。
-
祖先:
タイトルの上とサイドバーの親フィールドに完全な階層が表示されます。関係の管理には、新しいクイックアクションコマンド
/set_parent
、/remove_parent
、/add_child
、/remove_child
を使用できます。 -
操作メニュー:
すべてのアクションに上部のメニュー(縦方向の3点ドット)からアクセスできるようになりました。スクロールした場合でも消えずにヘッダーに表示されます。
-
開発:
イシューやタスクに関連するすべての開発アイテム(マージリクエスト、ブランチ、機能フラグ)が1つの便利なリストに統合されました。
-
レイアウト:
UIが改善され、イシュー、エピック、タスク、マージリクエスト間の移動がスムーズになり、より効率的にワークフローを進められるようになりました。
-
リンクされたアイテム:
改善されたリンクオプション機能で、タスク、イシュー、エピック間の関連付けが簡単になりました。ドラッグ&ドロップでリンクのタイプを変更したり、ラベルや完了したアイテムの表示/非表示を切り替えたりできます。
サービスアカウントのUI
SaaS: Premium、Ultimate
Self-Managed: Premium、Ultimate
GitLabのUI上に、サービスアカウントの作成と管理に特化した専用画面が追加されました。このインターフェースを使用すると、GitLabリソースへの自動アクセスを作成、モニタリング、制御できます。これまでは、この機能はAPI経由でしか利用できませんでした。
Duo ProとDuo Enterpriseシートの自動割り当て
SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise
SAMLグループ同期を使用して、GitLab Duo ProやGitLab Duo Enterpriseのシートを自動的にユーザーに割り当てられるようになりました。GitLabグループに利用可能なDuo ProまたはDuo Enterpriseのシートが残っている限り、IDプロバイダ(IdP)からマッピングされたユーザーに自動的にシートが割り当てられます。これにより、シートの割り当てを管理する手間を抑えられます。

CI/CDパイプライン入力
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
CI/CD変数は動的なCI/CDワークフローには欠かせない要素で、環境変数、コンテキスト変数、ツールの設定、マトリックス変数など、さまざまな用途で使用されています。しかし、デベロッパーはCI/CD変数を使ってパイプライン変数をパイプラインに注入し、パイプラインの動作を手動で変更することがあります。これは、パイプライン変数の優先度が他の変数よりも高いため、予期しない影響を及ぼすリスクがあります。
GitLab 17.11から、パイプライン変数の代わりにinputs
機能を使って、安全にパイプラインの挙動を変更できるようになりました。この機能は、スケジュールされたパイプライン、ダウンストリームパイプライン、トリガーされたパイプラインなど、さまざまなケースで利用可能です。inputsを使うことで、デベロッパーがCI/CDジョブの実行中に動的な内容(状況に応じて変化する情報)を組み込む作業が、より構造化され柔軟に行えるようになります。inputsに切り替えた後、パイプライン変数へのアクセスを完全に無効化することも可能です。
ぜひお試しの上、専用のイシューからフィードバックをお寄せください。

GitLab 17.11のリリースに含まれるその他の改善点
自動で無効化されたすべてのWebhookを自動で再有効化
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
このリリースでは、4xx
エラーを返すWebhookが自動的に再有効化されるようになりました。すべてのエラー(4xx
、5xx
、またはサーバーエラー)が同じように処理されるため、動作がより予測可能になり、トラブルシューティングが容易になります。この変更については、こちらブログ投稿で詳しく解説しています。
失敗したWebhookは、一時的に1分間無効になり、最大24時間まで延長されます。Webhookが40回連続して失敗すると、永久に無効になります。
GitLab 17.10以前で永久に無効にされたWebhookは、データの移行が行われました。
- GitLab.comの場合、これらの変更は自動的に適用されます。
- GitLab Self-ManagedおよびGitLab Dedicatedの場合、これらの変更は、
auto_disabling_webhooks
のops
フラグが有効になっているインスタンスにのみ影響します。
この場を借りて、コミュニティにコントリビュートしてくれたPhawinさんに感謝します!
インポート時にGhostユーザーのコントリビュートを自動マッピング
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
これまで、Ghostユーザーのコントリビュートはプレースホルダー参照として作成され、手動での再アサインを必要とし、移行作業に余分な手間がかかっていました。今回の改善により、新しいコントリビュートおよびメンバーシップのマッピング機能を使用するインポーター(たとえば、直接転送による移行や、GitHub、Bitbucket Server、Giteaのインポーター)では、Ghostユーザーのコントリビュートをより効率的に処理できるようになりました。コンテンツをGitLabにインポートする際、移行元インスタンスでGhostユーザーが行ったコントリビュートが、移行先インスタンスのGhostユーザーに自動的にマッピングされます。
この機能強化により、Ghostユーザーのコントリビュートに対して不要なプレースホルダーユーザーが作成されなくなり、ユーザーマッピング画面の煩雑さが減り、移行プロセス全体が簡素化されました。
GitLab.comへのインポート時におけるコントリビュートの再アサインにSAML認証が追加
SaaS: Premium、Ultimate
Self-Managed: Premium、Ultimate
このマイルストーンでは、GitLab.comにインポートする際、コントリビュートの再アサインプロセスにSAML認証チェックを追加しました。これらのチェックにより、SAML SSOが有効なグループで発生していた再アサインエラーを防止できるようになりました。
GitLab.comにインポートし、GitLab.comグループでSAML SSOを使用する場合、すべてのユーザーは、コントリビュートとメンバーシップを再アサインする前に、SAML IDをGitLab.comアカウントにリンクする必要があります。SAML IDが認証されていないユーザーにコントリビュートを再アサインすると、エラーメッセージが表示されます。これらのメッセージでは、グループメンバーシップを正しく割り当てるための手順が説明されています。
Wikiサイドバーのスタイルを改善
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
カスタムWikiサイドバーのスタイルが改善され、見出しサイズが小さくなり、リストの左側の余白も調整されました。こうした視認性を高める改善により、_sidebar wiki
ページで作成されたカスタムナビゲーションの読みやすさが向上しました。
カスタムサイドバーは、チームが独自のナレッジベース構造に合わせてWikiコンテンツを整理するのに役立ちます。このスタイルの更新により、サイドバーが見やすくなり、視覚的な階層構造がより明確になり、チームメンバーが必要な情報を見つけやすくなりました。
作業中の上限をウェイトで設定
SaaS: Premium、Ultimate
Self-Managed: Premium、Ultimate
イシューの数に加えて、作業中の上限をウェイトで設定できるようになりました。これにより、チームのワークロードをより柔軟に管理できます。
イシューの数だけでなく、各タスクの複雑さや作業量に基づいて作業の流れをコントロールできます。作業量をイシューのウェイトで表しているチームは、特定のボードリスト内のイシューの合計ウェイトを制限することで、チームに負担がかかりすぎるのを防げます。
この機能を活用することで、チームの生産性を最適化し、さまざまなタスクの複雑さを考慮した、よりバランスの取れたワークフローを実現できます。
キャンセル状態でスタックしたCI/CDジョブを強制キャンセル
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
CI/CDジョブが「キャンセル中」状態でスタックし、デプロイや共有リソースへのアクセスをブロックすることがあります。
メンテナーのロールを持つユーザーは、ジョブログページから直接これらの停止したジョブを強制キャンセルできるようになりました。これにより、問題のあるジョブを適切に終了できるようになります。
失敗したジョブが一目でわかるパイプラインビュー
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
新しい表示機能により、パイプライングラフで失敗したジョブをすばやく識別できるようになりました。失敗したジョブグループはパイプライングラフで強調表示され、失敗したジョブは各ステージの上部にグループ化されます。複雑なパイプライン構造を隅々まで調べなくても、問題のあるジョブを素早く特定してトラブルシューティングができるようになりました。
ドキュメント
イシュー
依存プロキシのDocker Hub認証UIが登場
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
GitLab依存プロキシにおいて、Docker Hub認証をUIから設定できるようになりました。この機能はもともとGitLab 17.10でGraphQL APIを通じてのみ利用可能でしたが、今回のリリースで、より簡単に設定できるユーザーインターフェースが追加されました。
この機能強化により、グループ設定ページから直接Docker Hub認証を設定できるようになり、以下のことが可能になりました。
- レート制限によるパイプラインの失敗を回避
- プライベートなDocker Hubイメージへのアクセス
- Docker Hubの認証情報、パーソナルアクセストークン、または組織アクセストークンを安全に保存
この効率化されたアプローチにより、GraphQL APIを使用せずに、CI/CDパイプラインでDocker Hubイメージに安定してアクセスできるようになりました。
Kubernetes 1.32のサポートを追加
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
このリリースでは、2024年12月にリリースされたKubernetesバージョン1.32に対するフルサポートが追加されました。アプリケーションをKubernetesにデプロイしている場合は、接続中クラスターを最新バージョンにアップグレードすることで、Kubernetes 1.32が提供する機能をすべて活用できるようになります。
Kubernetesサポートポリシーとその他のサポートされているKubernetesバージョンの詳細については、ドキュメントをご覧ください。
反射型XSSチェックのための動的解析機能を追加
SaaS: Ultimate
Self-Managed: Ultimate
GitLabの動的解析チームが、CWE-79に対応する新しいチェック機能を導入しました。これにより、DASTスキャナーは反射型XSS(クロスサイトスクリプティング)攻撃を検出できるようになりました。
反射型XSSのチェック機能はデフォルトで有効になっています。このチェックを無効にするには、設定ファイルにDAST_FF_XSS_ATTACK: false
を追加してください。ご質問やフィードバックがある場合は、イシュー525861を参照してください。
Python対応の静的到達性解析のベータ版を提供開始
SaaS: Ultimate
Self-Managed: Ultimate
コンポジション解析チームは、Python向け静的到達性解析のベータ版をリリースしました。このベータ版では、安定性、可観測性の向上に焦点を当て、より簡単な設定で優れたユーザーエクスペリエンスを提供します。
静的到達性解析は、ソフトウェアコンポジション解析(SCA)で得られる結果をより充実させてくれる機能です。静的到達性解析では、GitLabの高度なSASTを活用し、プロジェクトのソースコードをスキャンして使用中のオープンソースの依存関係を特定します。
トリアージや修正に関する意思決定を行う上で、静的到達性機能によって生成されたデータを活用できます。また、静的到達可能性データを共通脆弱性評価システム(CVSS)スコアや悪用予測スコアリングシステム (EPSS)、悪用されている既知の脆弱性(KEV)と併用することで、より焦点を絞って脆弱性を確認することも可能です。
この機能に関するフィードバックをお待ちしています。ご質問やご意見のある方、またはGitLabチームとのやり取りをご希望の場合は、こちらのフィードバックイシューをご覧ください。
依存関係リストと脆弱性レポートのエクスポートに関するメール配信
SaaS: Ultimate
Self-Managed: Ultimate
これまで、依存関係リストや脆弱性レポートをエクスポートする場合、レポートをダウンロードするにはエクスポートが完了するまでページを開いたままにする必要がありました。
今回の改善により、依存関係リストまたは脆弱性レポートのエクスポートが完了すると、ダウンロードリンクが記載されたメールで通知が届くようになりました。
CI/CDジョブのsource
値を保存してフィルタリングする
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
GitLab 17.11では、CI/CDジョブのソース属性を追跡することで、ユーザーがビルドアーティファクトのソースを確認できる新機能が導入されました。この機能は特に、セキュリティ対策やコンプライアンス対応を求められるワークフローで役立ちます。たとえば、組織はソフトウェアサプライチェーンのセキュリティ対策を実装したり、コンプライアンス目的でセキュリティスキャンの検証可能な証拠を要求したりできます。
GitLabのジョブは、発生源を識別する以下のsource
値を保存して表示するようになりました。
- スキャン実行ポリシー
- パイプライン実行ポリシー
- 通常のパイプライン
source
属性には、ビルド > ジョブページの新しいフィルターオプション、ジョブAPI、またはアーティファクト検証用のIDトークンクレームを通じて確認できます。
この新機能により、次のことができるようになりました。
- セキュリティスキャン結果の信頼性を検証
- ソースの種類でジョブを絞り込むことで、ポリシーによって実行されたスキャンをすばやく特定
- 新しいIDトークンクレームを使用した、アーティファクトの暗号化検証を実装
- 適切な監査証跡により、コンプライアンス要件が満たされていることを確認
セキュリティチームやコンプライアンスチームは、この機能を活用して以下を行えます。
- ジョブページの新しいフィルターを使用して、ポリシーによって実行されたジョブのみを表示
- ジョブAPIの
source
フィールドにアクセスしてタスクを自動化 - 新しいIDトークンクレームを使用して、アーティファクトの検証を実装
job_source
:ジョブの発生源を識別しますjob_policy_ref_uri
:ポリシーファイルを指します(ポリシー定義のジョブの場合)job_policy_ref_sha
:ポリシーのgitコミットSHAを含みます
コンプライアンスフレームワークの作成時にプロジェクトを割り当て可能に
SaaS: Premium、Ultimate
Self-Managed: Premium、Ultimate
これまでは、コンプライアンスフレームワークを作成した後、コンプライアンスセンターのプロジェクトタブに移動しないと、新しいコンプライアンスフレームワークをプロジェクトに割り当てることができませんでした。このプロセスは、グループで新しいフレームワークを作成する際に余計な混乱を生む原因となっていました。
GitLab 17.11では、コンプライアンスフレームワークを作成するプロセスに新しい手順が追加され、作成前に複数のプロジェクトをコンプライアンスフレームワークに割り当てられるようになりました。
この新機能により以下が実現します。
- コンプライアンスフレームワークのスムーズな作成
- コンプライアンスフレームワークがグループ内のプロジェクトと連携し、グループ全体のコンプライアンス遵守状況を監視・管理する仕組みについての理解を深めるガイダンスを提供
サービスアカウント管理画面でのトークン統計表示
SaaS: Premium、Ultimate
Self-Managed: Premium、Ultimate
サービスアカウントのトークン管理インターフェイスに、トークンの状況を一目で把握できる便利な統計ダッシュボードが追加されました。この機能は、トークンの状態を評価し、注意が必要なトークンを特定するのに役立ちます。統計ダッシュボードには、次の4つの主要なメトリクスが含まれます。
- 有効なトークン:現在使用中のトークンの総数を表示します
- 2週間以内に期限が切れるトークン:今後2週間で期限切れとなるトークンを特定します
- 取り消したトークン:手動で取り消されたトークンを追跡します
- 期限切れトークン:以前に期限切れとなったトークンを監視します
この場を借りて、コントリビュートしてくれたChaitanya Sonwaneさんに感謝します!![Token statistics for service account management][image6]

GitLab Duo Chatとコード提案でLlama 3モデルが一般提供開始
SaaS: -
Self-Managed: Ultimate、Duo Enterprise
Llama 3モデルがGitlab Duo Self-Hostedで一般提供され、GitLab Duo Chatとコード提案をサポートできるようになりました。
これらのモデルをGitLab Duo Self-Hostedで使用する際のフィードバックについては、イシュー523918を参照してください。
管理者エリアでプレースホルダーユーザーをフィルタリング可能に
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
これまで、インポート中に作成されたプレースホルダーユーザーは、管理者エリアのユーザーページで明確に区別されず、通常のユーザーと混在して表示されていました。
本リリースから、管理者は管理者エリアのユーザーページの検索ボックスからプレースホルダーアカウントを絞り込めるようになりました。これを行うには、ドロップダウンリストでタイプ
を選択し、プレースホルダー
を選択します。
グループの使用量割り当てにプレースホルダーユーザー制限を表示
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
GitLab.comへのインポートの場合、プレースホルダーユーザーはトップレベルグループごとに制限されています。これらの制限は、GitLabライセンスとシート数によって異なります。 本リリースから、トップレベルグループのプレースホルダーユーザーの使用状況と制限をUIで確認できるようになりました。
以下の手順で現在の使用状況と制限を表示できます。
-
左側のサイドバーで、「Search or go to...」を選択してグループを検索します。このグループはトップレベルである必要があります。
-
設定 > 使用量割り当てを選択します。
-
「インポート」タブを選択します。
GLQLビューで最後のコメントを列として表示可能に
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
GLQLビューで、イシューまたはマージリクエストの最後のコメントを列として表示できるようになりました。GLQLクエリにlastCommentをフィールドとして含めることで、作業中の画面から移動せずに最新の更新を確認できます。
これまでは、最後のコメントを確認するために各イシューまたはマージリクエストを個別に開く必要があり、時間がかかる上に、進捗状況の全体像をすばやく把握することが困難でした。この改善により、進行中の会話やステータス更新が一目でわかるようになり、チームの作業効率向上に役立ちます。
この機能強化ならびにGLQLビュー全般に関するフィードバックは、フィードバックイシューからお寄せください。
GitLab Pages用のNuxtプロジェクトテンプレートが登場
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
GitLabは、最も人気のある静的サイトジェネレーター(SSG)のテンプレートを提供していますが、この度、Vue.js上に構築された強力なフレームワークであるNuxtを使用したGitLab Pagesサイトを作成できるようになりました。Nuxtは、設定の手間を減らしながらモダンで高性能なWebアプリケーションをビルドしたいチームにとって特に有用です。
この新機能により、初期のセットアップと設定に時間をかけることなく、CI/CDパイプラインと最新の開発体験を組み込んだPagesサイトをすばやく起動するオプションが増えました。
インポートされたファイルをコード提案のコンテキストとして使用可能に
SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise
GitLab Duoコード提案で、IDEにインポートされたファイルをコンテキストとして活用できるようになり、コード提案の品質が進化しました。インポートされたファイルはプロジェクトに関する追加のコンテキストを提供し、より適切な提案を可能にします。現在、インポートファイルのコンテキストは、JavaScriptファイルとTypeScriptファイルに対応しています。
GitLab Runner 17.11
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
このたび、GitLab Runner 17.11もリリースされます!GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。
新機能:
バグ修正:
- GitLab Runner 17.10.0でGit設定をクリーニングするとエラーが発生する
FF_DISABLE_UMASK_FOR_KUBERNETES_EXECUTOR
フラグがumask
コマンドを無効にしない
すべての変更の一覧は、GitLab Runnerの変更履歴で確認できます。
プロジェクトにおけるRunner管理の改善
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
プロジェクトでRunnerをより効率的に管理できるようになりました。Runnerは、従来の2列のビューではなく、1列のレイアウトで表示され、それぞれが独自のリストとして整理されるようになりました。
この構成の改善により、Runnerの検索と管理が簡素化され、割り当てられたプロジェクトの一覧、Runnerマネージャー、およびRunnerが実行したジョブなどの新機能が追加されました。GitLab 18.0で計画されているその他のRunner管理の改善については、イシュー33803を参照してください。
スイッチボードで複数のIDプロバイダ(IdP)を使用したSAMLシングルサインオンに対応
SaaS: Ultimate
Self-Managed: -
GitLab Dedicatedインスタンスにおいて、最大10個のIDプロバイダ(IdP)を使ったSAMLシングルサインオン(SSO)の設定が可能に
なりました。
GitLab Dedicatedインスタンスで利用可能なすべてのSAML設定オプションは、個々のIdPごとに設定できます。
以前に複数のIdPを設定していた場合も、すべての既存SAML設定をスイッチボードで直接表示および編集できるようになりました。
![Configure SAML single sign-on with multiple identity providers in Switchboard][image8]

イベントデータの共有をデプロイ前に無効にできる機能を追加
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
GitLab 18.0では、GitLab Self-ManagedおよびGitLab Dedicatedインスタンスからイベントレベルの製品使用状況データの収集を有効にする予定です。集計データとは異なり、イベントレベルのデータを収集することでより詳細な利用状況を把握できるようになります。こうしたデータは、GitLabがプラットフォーム上のユーザーエクスペリエンスを向上させ、機能活用を促進させるのに役立ちます。
GitLab 17.11から、上記のイベントデータ収集が始まる前に、あらかじめその機能を無効に設定することが可能になりました。オプトアウト方法の詳細については、ドキュメントを参照してください。
シークレットプッシュ保護とパイプラインシークレット検出のルールカバレッジを拡大
SaaS: Ultimate
Self-Managed: Ultimate
GitLabシークレット検出機能が大幅に更新され、17件の新しいシークレットプッシュ保護ルールと12件の新しいパイプラインシークレット検出ルールが追加されました。また、既存のルールの一部も更新され、検出精度の向上と誤検知の削減が図られています。詳細については、変更履歴のv0.9.0を参照してください。
プロジェクト依存関係リストをCycloneDX形式でエクスポート可能に
SaaS: Ultimate
Self-Managed: Ultimate
多くの組織は現在、規制要件を満たし、ソフトウェアサプライチェーンのセキュリティをさらに強化するために、ソフトウェア部品表(SBOM)が求められるようになりました。以前は、GitLabでは依存関係リストのエクスポート形式がJSONもしくはCSVに限られていましたが、今回から業界標準のCycloneDX形式でエクスポートできるようなり、SBOMの生成が可能になりました。
SBOMをCycloneDX形式で依存関係リストから直接ダウンロードするには、エクスポート > CycloneDX(JSON)としてエクスポートするを選択します。
依存関係リストをCSV形式でエクスポート可能に
SaaS: Ultimate
Self-Managed: Ultimate
これまで、GitLabから依存関係リストをCSVファイルとしてエクスポートすることはできませんでした。本リリースから新機能として、依存関係リストをダウンロードする際にCSVオプションを選択して、CSV形式でリストをエクスポートできるようになりました。
「ツールフィルター」が「スキャナーフィルター」と「レポートタイプフィルター」に置き換え
SaaS: Ultimate
Self-Managed: Ultimate
これまで、脆弱性レポートのツール検索フィルタでは、スキャナーのタイプ(ESLintやGemnasiumなど)とレポートのタイプ(SASTやコンテナスキャンなど)が単一のグループとして扱われ、個別に指定することができませんでした。
今回、より効率的に適切なツールを検索できるよう、ツールフィルターをスキャナーフィルターとレポートタイプフィルターに分けました。これにより、スキャナーとレポートタイプを別々に指定できるようになり、より細かく検索条件を設定できるようになりました。
アクセストークンの並べ替えオプションを強化
SaaS: Free、Premium、Ultimate
Self-Managed: Free、Premium、Ultimate
UIとAPIにアクセストークンの並べ替えオプションが追加されました。これらの並べ替えオプションは、GitLabの既存のトークン管理機能を補完し、アクセストークン管理の自由度を高めるとともに、アクセストークンのセキュリティ維持にも役立ちます。新しい並べ替えオプションには次のものがあります。
- 有効期限順(昇順):最も早く期限が切れるトークンから表示
- 有効期限順(降順):有効期限までの期間が最も長いトークンから表示
- 最終使用日順(昇順):最近使用されていないトークンから表示
- 最終使用日順(降順):最近使用されたトークンから表示
Geo - 新しいレプリケーションビューの導入
SaaS: -
Self-Managed: Premium、Ultimate
Geoのレプリケーションビューが、新しい見た目と使いやすさに生まれ変わりました。新しいデザインは、GitLab全体と統一感を持たせつつ、Geoセカンダリサイトの同期と検証ステータスを確認しやすい、より効率化されたインターフェイスを実現しています。さらに新機能として、各レプリケーション項目をクリックすると詳細画面が表示されるようになり、プライマリおよびセカンダリのチェックサム、エラーの詳細など、多くの情報が確認できるようになりました。これにより、Geoの同期に関する問題のトラブルシューティングがはるかに簡単になります。
GitLab Duo ChatがAnthropicのClaude Sonnet 3.7を採用
SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise
GitLab Duo Chatのベースモデルが、AnthropicのClaude 3.5 SonnetからClaude Sonnet 3.7に更新されました。これにより、ほとんどの質問は新モデルで処理されます。
Claude 3.7 Sonnetは、コーディングと推論機能が大幅に強化されており、コードの説明、コードの生成、テキストデータの処理、複雑なDevSecOps関連の質問に対して、より精度の高い回答が可能になりました。これらの分野では、より詳細で正確な応答が得られます。
このアップグレードはChat機能全体に適用され、すべてのChat機能で一貫した品質向上が図られています。
Linuxパッケージの改善
SaaS: -
Self-Managed: Free、Premium、Ultimate
GitLab 18.0では、PostgreSQLの最小サポートバージョンはバージョン16になります。この変更に備えて、PostgreSQLクラスターを使用していないインスタンスでは、GitLab 17.11へのアップグレード時にPostgreSQLをバージョン16に自動的にアップグレードする仕組みが導入されます。
PostgreSQLクラスターを使用している場合、またはこの自動アップグレードを希望しない場合は、手動でPostgreSQL 16にアップグレードしてからGitLab 18.0にアップグレードする必要があります。
GitLab Duo Chatで複数のチャットを管理可能に
SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise
GitLab Duo Chatを使用した複数のチャットが、GitLab Self-ManagedインスタンスのWeb UIで利用できるようになりました。新しいチャットの作成、履歴の閲覧、およびチャット間の切り替えをコンテキストを失うことなく行えます。
プライバシー保護のために、30日間アクティビティのないチャットは自動的に削除されます。また、チャットはいつでも手動で削除できます。GitLab Self-Managedをご利用の場合、管理者は会話の保持時間をさらに短縮することも可能です。
イシュー526013で、ご意見をお聞かせください。
GitLab Duo Self-Hostedで開いているファイルをコード提案のコンテキストとして使用可能に
SaaS: -
Self-Managed: Ultimate、Duo Enterprise
Gitlab Duo Self-Hostedでは、コード提案を使用するときに、IDEのタブで開いているファイルをコンテキストとして使用できるようになりました。
GitLab Duo Self-HostedでAI搭載機能ごとに個別のモデルを選択可能に
SaaS: -
Self-Managed: Ultimate、Duo Enterprise
GitLab Duo Self-Hostedで、GitLab Self-Managedインスタンスの各GitLab Duo機能とサブ機能に対して、サポートされている個々のモデルを選択して設定できるようになりました。
フィードバックは、イシュー524175にお寄せください。
バグ修正、パフォーマンスの改善、UIの改善
GitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。
17.11で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。
非推奨事項
新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、GitLabドキュメントで確認できます。今後の破壊的な変更について通知を受け取るには、破壊的な変更のRSSフィードにサブスクライブしてください。
- パイプライン実行ポリシーの「inject_ci」戦略が「inject_policy」に変更
- コンプライアンス基準適合ダッシュボードがコンプライアンス状況ダッシュボードに刷新
- クライアント認証情報を使用しないOAuth ROPCグラント方式を非推奨化
削除された機能と破壊的な変更
削除されたすべての機能の一覧は、GitLabドキュメントで確認できます。今後の破壊的な変更について通知を受け取るには、破壊的な変更のRSSフィードにサブスクライブしてください。
GitLab 17.11へのアップグレードに関する重要なお知らせ
GitLab 17.8では、新しい暗号化フレームワーク(GitLab 17.9から導入)に対応するため、3つの新しいシークレットが追加されました。
マルチノード構成をご利用の場合は、こちらのドキュメントページ(GitLab 17.11.0 changes)に記載されている、お使いの環境に適した手順に従ってください。
変更履歴
変更内容をすべて表示するには、次のページから変更履歴を確認してください。
インストール
GitLabを新規にインストールする場合は、GitLabのダウンロードページをご覧ください。
更新事項
更新ページをご覧ください。
ご不明な点がある場合
ご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、GitLabフォーラムにアクセスして質問を投稿してください。
GitLabサブスクリプションプラン
GitLabのすべての機能を30日間無料でお試しいただけます。
監修:ソリス ジェレズ / Jerez Solis @jerezs
(GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト)