GitLab 17.1リリースノート
2024年6月20日に、GitLab 17.1は次の機能を備えてリリースされました。
さらに、今月の注目すべきコントリビューターを含む、すべてのコントリビューターに感謝します。
今月の注目すべきコントリビューター
誰もがGitLabコミュニティのコントリビューターを推薦できます!活躍中の候補者を支援するか、新しい推薦を追加してください! 🙌
Shubham Kumarは、17.1中に7つのイシューを完了し、2021年からGitLabに一貫してコントリビュートしています。彼は現在、50件以上のマージされたコントリビュートを達成しました!ShubhamはGitLabヒーローであり、元Google Summer of Codeのコントリビューターです。
Shubhamは、GitLabのシニアプロダクトマネージャーであるChristina Lohrによって推薦されました。「Shubhamは、過去数週間および数か月にわたり、特に当社のAPI提供におけるギャップを埋めるのに多くのイシューを助けてきました」とChristinaは述べています。「Shubhamが進めているすべての追加に対応するために、リリース投稿を十分に早く書くことができません!」
「オープンソースコミュニティは素晴らしいです」とShubhamは言います。「機会と評価に感謝しており、GitLabプラットフォームへのコントリビュートを継続することを楽しみにしています。」
Joe Snyderは、GitLabのプリンシパルプロダクトマネージャーであるKai Armstrongによって、メールに差分が含まれることを制限する多くの要望があった機能を構築したことで推薦されました。このコントリビュートは、GitLab 15.3までさかのぼる10件以上のマージリクエストを要しました。「これは、そのサポートを可能にするために、多くのマイルストーン、複雑な移行、および製品への変更を要する大規模な機能です」とKaiは述べています。「Joeは、この作業を完了させるために、マイルストーンを通じて多くのメンテナーや協力者と熱心に協力しました。」
GitLabのプロダクトマネージャーであるJocelyn Eillisは、build:resource_group内のネストされた変数が展開されないバグを修正するための追加作業を強調することで、Joeの推薦を支持しました。「このバグは、イシュー自体に文書化された顧客の要望に加え、23件の賛成票がありました」とJocelynは述べています。「レビュアーからのフィードバックへの迅速な対応により、GitLab 17.1にこれを組み込むことができました!」
これは、Joeが以前にGitLab 16.6で受賞したのに続く2度目のGitLab MVPです。JoeはKitwareのシニアR&Dエンジニアであり、2021年からGitLabにコントリビュートしています。
主要な機能
モデルレジストリのベータ版が利用可能です
GitLabは、モデルレジストリをファーストクラスのコンセプトとしてベータ版で正式にサポートするようになりました。UIを介して直接モデルを追加および編集することも、MLflowインテグレーションを使用してGitLabをモデルレジストリバックエンドとして利用することもできます。
モデルレジストリは、データサイエンスチームが機械学習モデルとその関連メタデータを管理するのに役立つハブです。これは、組織が訓練された機械学習モデルを保存、バージョン管理、ドキュメント化、発見するための集中型ロケーションとして機能します。これにより、モデルのライフサイクル全体にわたるより良いコラボレーション、再現性、およびガバナンスが保証されます。
私たちはモデルレジストリを、チームがモデルをコラボレーションし、デプロイし、監視し、継続的にトレーニングできるようにする要石となるコンセプトであると考えており、皆様からのフィードバックに非常に関心があります。私たちのフィードバックイシューに気軽にコメントを残してください。後ほどご連絡いたします!
GitLab Duoコード提案をVS Codeで複数表示
GitLab Duoコード提案は、VS Codeで複数の提案が利用可能であるかどうかを表示するようになりました。提案にカーソルを合わせ、矢印またはキーボードショートカットを使用して提案を切り替えます。
シークレットプッシュ保護のベータ版が利用可能です
シークレット (キーやAPIトークンなど) が誤ってGitリポジトリにコミットされた場合、リポジトリへのアクセス権を持つ人は誰でも、悪意のある目的でシークレットのユーザーになりすますことができます。このリスクに対処するため、ほとんどの組織では公開されたシークレットを失効させて置き換える必要がありますが、そもそもシークレットがプッシュされるのを防ぐことで、修正時間を節約し、リスクを軽減できます。
シークレットプッシュ保護は、GitLabにプッシュされた各コミットの内容をチェックします。シークレットが検出された場合、プッシュはブロックされ、コミットに関する情報が表示されます。これには次のものが含まれます:
- シークレットを含むコミットID。
- シークレットを含むファイル名と行番号。
- シークレットのタイプ。
テストのためにシークレットプッシュ保護をバイパスする必要がありますか?シークレットプッシュ検出をスキップすると、GitLabは監査イベントをログに記録するため、調査できます。
シークレットプッシュ保護は、GitLab.comおよびDedicatedのお客様向けにベータ機能として利用可能であり、プロジェクトごとに有効にできます。イシュー467408でフィードバックを提供することで、シークレットプッシュ保護の改善にご協力いただけます。
GitLab Runner Autoscalerは一般公開されました
GitLabの以前のバージョンでは、一部の顧客は公開クラウドプラットフォーム上の仮想マシンインスタンスでGitLab Runnerのオートスケールソリューションを必要としていました。これらの顧客は、従来のDocker Machine Executorまたはクラウドプロバイダーテクノロジーを使用してまとめられたカスタムソリューションに依存する必要がありました。
本日、GitLab Runner Autoscalerの一般公開をお知らせできることを嬉しく思います。GitLab Runner Autoscalerは、GitLabが開発したtaskscalerおよびfleetingテクノロジーと、Google Compute Engine用のクラウドプロバイダープラグインで構成されています。
Snowflake MarketplaceでGitLabコネクタアプリケーションが利用可能になりました
監査イベントはGitLabで作成され、保存されます。このリリース以前は、監査イベントはGitLab内からしかアクセスできず、結果はGitLab UIを使用してレビューするか、すべての監査イベントを構造化されたJSONとして受信するためのストリーミング先を設定するかのいずれかでした。
しかし、顧客は監査イベントをサードパーティの宛先 (SnowflakeのようなSIEMソリューションなど) で利用できるようにし、次のことを容易にしたいと考えていました:
- GitLabを含む組織の複数のシステムからのすべての監査イベントデータを表示、結合、操作し、レポートを作成する。
- 関心のある特定の監査イベントのみを確認し、関心のある質問に迅速に回答できるようにする。
- GitLab内部で何が起こっているかを完全に把握し、事後的にレビューできるようにする。
これらのタスクを顧客が実行できるように、当社はSnowflake Marketplace向けにGitLabコネクタアプリケーションを作成しました。これは監査イベントAPIを使用します。この機能を利用するには、顧客はSnowflake Marketplaceを使用してアプリケーションをデプロイおよび管理する必要があります。
Wikiのユーザーエクスペリエンスの改善
GitLab 17.1のWiki機能は、より統一され、効率的なワークフローを提供します:
- 新しいリポジトリクローンボタンにより、クローン作成がより簡単かつ迅速になります。これにより、コラボレーションが改善され、編集または表示のためのWikiコンテンツへのアクセスが高速化されます。
- より発見しやすい場所に、より分かりやすい削除オプション。これにより、検索に費やす時間を短縮し、Wikiページを管理する際の潜在的なエラーや混乱を最小限に抑えます。
- 空のページを有効にすることで、柔軟性が向上します。必要なときに空のプレースホルダーを作成します。Wikiコンテンツのより良い計画と整理に焦点を当て、空のページは後で埋めてください。
これらの機能強化により、Wikiのワークフローにおける使いやすさ、発見しやすさ、およびコンテンツ管理が向上します。私たちは、Wiki体験が効率的でユーザーフレンドリーであることを望んでいます。リポジトリのクローン作成をよりアクセスしやすくし、主要なオプションをより良い表示レベルのために再配置し、空のプレースホルダーの作成を可能にすることで、当社はユーザーのニーズをよりよく満たすためにプラットフォームを改良しています。
新しいバリューストリーム管理レポート生成ツール
新しいバリューストリーム管理用レポート生成ツールの追加により、意思決定者はソフトウェア開発ライフサイクル (SDLC) の最適化において、より効率的かつ効果的になることができます。
これで、DevSecOps比較メトリクスレポートまたはAIインパクト分析レポートを、自動的、積極的に、関連情報とともにGitLabイシューに配信するようにスケジュールできます。スケジュールされたレポートを使用すると、管理者は必要なデータを含む適切なダッシュボードを手動で検索する時間を費やすことなく、インサイトの分析と情報に基づいた意思決定に集中できます。
スケジュールされたレポートツールは、CI/CDカタログを使用してアクセスできます。
コンテナイメージは署名にリンクされています
GitLabコンテナレジストリは、署名されたコンテナイメージをその署名と関連付けるようになりました。この改善により、ユーザーはより簡単に次のことができます:
- どのイメージが署名されており、どのイメージが署名されていないかを特定する。
- コンテナイメージに関連付けられている署名を検索して検証する。
この改善は、GitLab.comでのみ一般公開されています。セルフマネージドのサポートはベータ版であり、ユーザーは次世代コンテナレジストリを有効にする必要があります。これもベータ版です。
手動ジョブの確認を必須にする
手動ジョブは、本番環境へのデプロイなど、CIパイプラインで非常に重要な操作をトリガーするために使用できます。このリリースにより、手動ジョブを実行する前に確認を要求するように設定できるようになりました。手動でジョブが実行されたときに、UIに確認ダイアログを表示するには、manual_confirmationとwhen: manualを使用します。手動ジョブに確認を要求することで、セキュリティと制御の追加レイヤーが提供されます。
このコミュニティコントリビュートを提供してくれたPhawinに感謝します!
グループのRunnerフリートダッシュボード
グループレベルでセルフマネージドのRunnerフリートを運用するオペレーターは、可観測性と、Runnerフリートインフラストラクチャに関する重要な質問に一目で迅速に回答できる能力を必要とします。グループ向けのRunnerフリートダッシュボードを使用すると、GitLab UIでRunnerフリートの可観測性と実用的なインサイトを直接利用できます。組織の目標サービスレベル目標において、Runnerの健全性を迅速に判断し、Runnerの使用メトリクス、およびCI/CDジョブキューサービス機能に関するインサイトを得ることができます。
GitLab.comのお客様は、本日グループで利用可能なすべてのRunnerフリートダッシュボードメトリクスを使用できます。セルフマネージドのお客様は、ほとんどのRunnerフリートダッシュボードメトリクスを使用できますが、Runner usageとジョブを選択するまでの待機時間メトリクスを使用するには、ClickHouse分析データベースを設定する必要があります。
規模とデプロイ
Omnibusの改善
- プラン: Free、Premium、Ultimate
- リンク: ドキュメント
GitLab 17.1には、Ubuntu Noble 24.04をサポートするためのパッケージが含まれています。
グループとプロジェクトの新しいGraphQL API引数markedForDeletionOn
新しいGraphQL API引数markedForDeletionOnを使用して、特定の日付に削除対象としてマークされたグループまたはプロジェクトを一覧表示できるようになりました。
このコミュニティコントリビュートを提供してくれた@imskrに感謝します!
グループおよびプロジェクトバッジの新しいプレースホルダー
これで、4つの新しいプレースホルダーを使用してバッジリンクと画像URLを作成できます:
%{project_namespace}- プロジェクトネームスペースのフルパスを参照%{group_name}- グループ名を参照%{gitlab_server}- グループまたはプロジェクトのサーバー名を参照%{gitlab_pages_domain}- グループまたはプロジェクトのドメイン名を参照
このコミュニティコントリビュートを提供してくれた@TamsilAmaniに感謝します!
バッジの新しい%{latest_tag}プレースホルダー
これで、%{latest_tag}プレースホルダーを使用してバッジリンクと画像URLを作成できます。このプレースホルダーは、リポジトリ用に公開された最新のタグを参照します。
このコミュニティコントリビュートを提供してくれた@TamsilAmaniに感謝します!
グループAPIで日付marked_for_deletion_onによってグループをフィルタリングする
グループAPIで、特定の日付に削除対象としてマークされたグループを返す属性marked_for_deletion_onを使用して応答をフィルタリングできるようになりました。
このコミュニティコントリビュートを提供してくれた@imskrに感謝します!
ユーザーのコントリビュートしたプロジェクトをGraphQL APIで一覧表示
新しいGraphQL APIフィールドUser.contributedProjectsを使用して、ユーザーがコントリビュートしたプロジェクトを一覧表示できるようになりました。
このコントリビュートをしてくれた@yasukに感謝します!
メンバーAPIでユーザー名によってメンバーを追加
以前は、メンバーAPIを使用すると、ユーザーIDのみでグループとプロジェクトにメンバーを追加できました。このリリースにより、ユーザー名でもメンバーを追加できるようになりました。
このコミュニティコントリビュートを提供してくれた@imskrに感謝します!
Exploreのソートおよびフィルタリング機能が更新されました
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com
- リンク: ドキュメント
グループおよびプロジェクトのExploreページのソートおよびフィルタリング機能を更新しました。フィルタリングバーが広くなり、読みやすさが向上しました。
プロジェクトのExploreページでは、名前、作成日、更新した日、およびStar付きを含む標準化されたソートオプションを使用でき、昇順または降順でソートするためのナビゲーション要素も利用できます。言語フィルターはフィルターメニューに移動しました。新しい非アクティブタブは、より焦点を絞った検索のためにアーカイブされたプロジェクトを表示します。さらに、ロールフィルターを使用して、あなたがオーナーであるプロジェクトを検索できます。
グループのExploreページでは、名前、作成日、および更新した日を含む標準化されたソートオプションを採用し、昇順または降順でソートするためのナビゲーション要素を追加しました。
これらの変更に関するフィードバックは、イシュー438322で歓迎します。
表示レベルの選択が改善されました
以前は、グループまたはプロジェクトの一般設定には、許可された表示レベルのみが表示されていました。このビューは、他のオプションが利用できない理由を理解しようとするユーザーを混乱させることが多く、情報が不正確に表示される可能性がありました。新しいビューではすべての表示レベルが表示され、選択できないオプションは灰色表示されます。さらに、ポップオーバーは、オプションが利用できない理由についてさらに詳しい情報を提供します。たとえば、表示レベルは、管理者が制限したため、またはプロジェクトや親グループの表示レベル設定と競合するため、利用できない場合があります。
これらの変更が、希望する表示レベルオプションを選択する際の競合を解決するのに役立つことを願っています。このコミュニティコントリビュートを提供してくれた@gerardo-navarroに感謝します!
プロジェクトAPIで日付marked_for_deletion_onによってプロジェクトをフィルタリングする
プロジェクトAPIで、特定の日付に削除対象としてマークされたプロジェクトを返す属性marked_for_deletion_onを使用して応答をフィルタリングできるようになりました。
このコミュニティコントリビュートを提供してくれた@imskrに感謝します!
Webhook作成時の監査イベント
監査イベントは、GitLabで実行された重要なアクションの記録を作成します。これまで、システム、グループ、またはプロジェクトWebhookがユーザーによって追加された場合、監査イベントは作成されませんでした。
このリリースでは、ユーザーがシステム、グループ、またはプロジェクトWebhookを作成したときに監査イベントを追加しました。
実行中の直接転送移行をキャンセルするにはREST APIを使用する
これまで、実行中の直接転送移行をキャンセルするには、Railsコンソールへのアクセスが必要でした。
このリリースでは、管理者がREST APIを使用して移行をキャンセルする機能を追加しました。
REST APIでグループフックをテスト
以前は、プロジェクトフックのみをREST APIでテストできました。このリリースにより、指定されたグループのテストフックもトリガーできるようになりました。
このエンドポイントには、グループフックごとに1分あたり3リクエストという特別なレート制限があります。セルフマネージドのGitLabおよびGitLab Dedicatedでこの制限を無効にするには、管理者がweb_hook_test_api_endpoint_rate_limit機能フラグを無効にできます。
Phawinのこのコミュニティコントリビュートに感謝します!
APIを使用して選択したプロジェクトリレーションを再インポートする
同じタイプの多くの項目 (マージリクエストやパイプラインなど) を含むエクスポートファイルからプロジェクトをインポートする場合、それらの項目の一部がインポートされないことがあります。
このリリースでは、名前付きリレーションを再インポートし、すでにインポートされた項目をスキップするAPIエンドポイントを追加しました。APIには次の両方が必要です:
- プロジェクトのエクスポートアーカイブ。
- タイプ。イシュー、マージリクエスト、パイプライン、またはマイルストーンのいずれか。
直接転送でインポートする際に継承されたメンバーシップ構造を保持する
これまで、直接転送によって移行する際に、継承されたメンバーシップは確実にインポートされませんでした。これは、プロジェクトの継承されたメンバーが直接メンバーとしてインポートされたことを意味しました。
このリリースから、GitLabはプロジェクトメンバーシップを移行する前に、まずグループメンバーシップを移行するようになりました。これは、ソースGitLabインスタンス上の継承されたメンバーシップをレプリケートします。
REST APIを使用してカスタムWebhookヘッダーを設定する
GitLab 16.11では、Webhookを作成または編集する際にカスタムヘッダーを追加する機能が導入されました。
このリリースにより、GitLab REST APIを使用してカスタムWebhookヘッダーを設定できるようになりました。
Niklasのコミュニティコントリビュートに感謝します!
バックアップにはディスクに保存された外部マージリクエストの差分が含まれる
- プラン: Free、Premium、Ultimate
- リンク: ドキュメント
gitlab-backupツールは、ローカルディスクに保存された外部マージリクエストの差分のバックアップをサポートするようになりました。注: gitlab-backupツールは、オブジェクトストレージに保存されたファイルをバックアップしません。したがって、外部マージ差分がオブジェクトストレージに保存されている場合は、手動でバックアップする必要があります。
Cloud Native Hybrid環境向けのbackup-utilityはすでに外部マージリクエストの差分のバックアップをサポートしており、この機能は変更されません。
統合されたDevOpsとセキュリティ
コードレビューメールでの差分プレビューを無効にする
- プラン: Free、Premium、Ultimate
- リンク: ドキュメント
マージリクエストでコードをレビューし、コード行にコメントすると、GitLabは参加者へのメール通知に差分の行を含めます。一部の組織ポリシーでは、メールを安全性の低いシステムとして扱ったり、メール用のインフラストラクチャを自分で管理していなかったりする場合があります。このため、IPまたはソースコードのアクセス制御にリスクが生じる可能性があります。
グループとプロジェクトで新しい設定が利用可能になり、組織がマージリクエストメールから差分プレビューを削除できるようになりました。これにより、機密情報がGitLab外部で利用できないようにすることができます。
これをコントリビュートしてくれたJoe Snyderに心から感謝します!
管理者は部分的なメールアドレスでユーザーを検索できます
管理者は、管理者エリアのユーザー概要で部分的なメールアドレスでユーザーを検索できるようになりました。たとえば、特定のメールドメインでユーザーをフィルタリングして、特定の機関のすべてのユーザーを見つけることができます。この機能は、権限のないユーザーが他のアカウントのメールアドレスにアクセスするのを防ぐために、管理者に限定されています。
このコミュニティコントリビュートを提供してくれた@zzaakiirrに感謝します!
リリースページにリリースRSSフィードアイコンを表示
新しいリリースが投稿されたときに通知を受け取る必要がありますか?GitLabは、リリース用のRSSフィードを提供するようになりました。プロジェクトリリースページにあるRSSフィードアイコンで、リリースフィードを購読できます。
このコントリビュートを提供してくれたMartin Schurzに感謝します!
カスタムロールの新しい権限
GitLab 17.1では、次の新しい権限を持つカスタムロールを作成できます:
カスタムロールを使用すると、同等の権限を持つユーザーを作成することで、オーナーロールを持つユーザーの数を減らすことができます。これにより、グループのニーズに合わせて特別に調整されたロールを定義し、不要な特権昇格を防ぐことができます。
マージリクエスト承認ポリシーはオープン/クローズを失敗させます (ポリシーエディタ)
以前のイテレーションを基盤として、ポリシーエディタ内に新しいオプションを導入し、ユーザーがセキュリティポリシーをオープンで失敗させるか、クローズで失敗させるかを切り替えることができるようにしました。この機能強化により、YAMLサポートが拡張され、ポリシーエディタビュー内でのよりシンプルな設定が可能になります。
たとえば、オープンで失敗するように設定されたマージリクエストポリシーは、基準を評価するための十分な証拠がない場合でもマージリクエストをマージすることを許可します。証拠の不足は、アナライザーがプロジェクトで有効になっていないか、アナライザーがポリシーを評価するための結果を生成できなかったためである可能性があります。このアプローチにより、チームが適切なスキャンの実行と実施を確実にするための作業を行うにつれて、ポリシーの段階的なロールアウトが可能になります。
プロジェクトオーナーは有効期限切れのアクセストークン通知を受け取ります
プロジェクトオーナーと直接メンバーシップを持つメンテナーの両方が、プロジェクトアクセストークンの有効期限が近づくとメール通知を受け取るようになりました。以前は、プロジェクトメンテナーのみがこの通知を受け取っていました。これにより、より多くの人が今後のトークンの有効期限について情報を得られます。
あなたのコントリビュートに対してJacob Hennerに感謝します!
画像アップロード時に貼り付けた画像を縮小する
GitLab 17.1は、高解像度画像の処理を強化し、アップロード中に縮小できるようにします。以前は、画像は元のサイズで表示され、最適な表示品質とはなりませんでした。この改善により、大きな画像が、それが含まれるページの視覚的な流れを妨げないことが保証されます。
リッチテキストエディタのドラッグ可能なメディア
以前は、リッチテキストエディタでメディアを移動するには、各項目を手動でコピーアンドペーストする必要がありました。これにより、イシュー、エピック、およびWikiへのメディアの組み込みが遅くなることがよくありました。GitLab 17.1では、リッチテキストエディタでメディアをドラッグアンドドロップできるようになり、編集中の効率性が大幅に向上しました。
GitLab APIコールでの相互TLSに対するPagesのサポート
GitLabは、SSL証明書によるクライアント認証を強制するように設定できます。しかし、GitLab Pagesサービスはその機能と互換性がありませんでした。これは、クライアント証明書を使用するように設定できず、内部APIへのコールが拒否されたためです。
GitLab 17.1から、GitLab Pagesのクライアント証明書を設定できます。これにより、GitLab APIでクライアント認証を有効にし、GitLabインスタンスのセキュリティを強化できます。
Wikiページの名前変更時に新しいURLにリダイレクト
GitLab 17.1は、Wikiページのリダイレクトに大幅な強化を導入します。Wikiページの名前を変更すると、古いページにアクセスしようとする人は誰でも新しいページに自動的にリダイレクトされ、既存のすべてのリンクが機能し続けることが保証されます。この改善により、ページ名の変更を管理するためのワークフローが効率化され、全体的な知識管理ユーザーエクスペリエンスが向上します。
更新されたPages UI
GitLab 17.1では、Pagesユーザーインターフェースを改善しました。改善点には、より効率的な画面スペースの使用が含まれます。これらのUI改善は、Pagesを管理する際のユーザーエクスペリエンスと効率性の向上に焦点を当てています。
コンテナイメージの最終公開日を表示
以前は、コンテナレジストリユーザーインターフェースで公開されたタイムスタンプが誤っていることがよくありました。これは、この重要なデータに依存してコンテナイメージを見つけ、検証できないことを意味していました。
GitLab 17.1では、正確なlast_published_atタイムスタンプを含むようにUIを更新しました。デプロイ > コンテナレジストリに移動し、タグを選択して詳細を表示することで、この情報を見つけることができます。最終公開日はページの上部に表示されます。
この改善は、GitLab.comでのみ一般公開されています。セルフマネージドのサポートはベータ版であり、ベータ版の次世代コンテナレジストリを有効にしているインスタンスでのみ利用可能です。
コンテナレジストリのタグを公開日でソート
GitLabコンテナレジストリを使用して、ソースパイプラインとともにDockerまたはOCIイメージを表示、プッシュ、およびプルします。コンテナイメージがビルドされた後、それが正しくビルドされたことを検索して検証する必要があることがよくあります。多くの顧客にとって、ユーザーインターフェースを使用して正しいコンテナイメージを見つけることは困難な場合があります。
これで、コンテナレジストリのタグリストを公開日でソートできるようになりました。この機能を使用して、最も最近公開されたコンテナイメージをすばやく見つけて検証できます。
この改善は、GitLab.comでのみ一般公開されています。セルフマネージドのサポートは、ベータ版である次世代コンテナレジストリが必要であるためベータ版です。詳細については、コンテナレジストリのメタデータドキュメントを参照してください。
よりスムーズなワークフローのためのリアルタイムボード更新
これで、ボード上のイシューを更新する際に、よりスムーズなエクスペリエンスを実感できるようになります!サイドバーで行った変更はボード自体に即座に表示され、再更新は不要です。この反応型ボードエクスペリエンスは、ワークフローを効率化し、リアルタイムで反映されるのを確認しながら迅速に更新を行うことができます。
タスクにかかる時間を
このリリースにより、クイックアクションを使用するか、タスクのサイドバーにあるタイムトラッキングウィジェットで、時間見積もりを設定し、タスクに費やした時間を記録できるようになりました。タスクに費やした時間は、タスクのタイムトラッキングレポートで確認できます。
エピックの進捗率を理解する
これで、エピックの全体的な進捗状況を、その子項目のウェイトの完了に基づいて簡単に確認できるようになりました。階層ウィジェットのこの新しい進捗ロールアップにより、エピックの作業の完全なスコープを理解し、進行に合わせて進捗を追跡することが容易になります。
APIセキュリティテストアナライザーの更新
GitLab 17.1は、APIセキュリティテスト用に次の設定変数を追加します:
APISEC_SUCCESS_STATUS_CODESは、APIセキュリティテストスキャンジョブが合格したかどうかを定義するHTTP成功ステータスコードのカンマ区切りリストを作成します。APISEC_TARGET_CHECK_DISABLEDは、スキャンが開始される前にターゲットAPIが利用可能になるのを待つのを無効にします。APISEC_TARGET_CHECK_STATUS_CODEは、APIターゲットの可用性チェックの予期されるステータスコードを指定します。提供されていない場合、500以外の任意のステータスコードはスキャナーによって受け入れられます。
これらの新しい変数は、スキャンが正常に実行されることを保証するためのより大きなカスタマイズと柔軟性を提供します。
DAST APIは16.10でAPIセキュリティテストに名称変更されました。変数名は、プレフィックスAPISECで始まるようになりました。以前は、DAST_APIで始まっていました。DAST_APIでプレフィックスされた変数は、18.0 (2025年5月) までサポートされます。設定が期待どおりに機能するように、変数名をできるだけ早く更新してください。
レジストリのコンテナスキャン
GitLabコンポジション解析は、レジストリのコンテナスキャンをサポートするようになりました。
レジストリのコンテナスキャンがプロジェクトで有効になっており、コンテナイメージがプロジェクトのコンテナレジストリにプッシュされた場合、GitLabはそのタグとスキャン制限をチェックします。
タグがlatestであり、スキャンの数が制限 (スキャン数50回/日) 未満である場合、GitLabはイメージ上でcontainer_scanningジョブを実行する新しいパイプラインを作成します。このパイプラインは、イメージをレジストリにプッシュしたユーザーに関連付けられます。
スキャンジョブは、GitLabにアップロードされるCycloneDX SBOMを生成します。継続的脆弱性スキャン機能がアクティブ化され、SBOMで検出されたパッケージをスキャンします。
注: 脆弱性スキャンは、新しいアドバイザリが公開された場合にのみ実行されます。これは、パッケージメタデータが同期されたときに発生します。
いつものように、新しくリリースされた機能に関するフィードバックをお待ちしております。フィードバックを提供するには、このフィードバックイシューにコメントしてください。
ファズテストアナライザーの更新
GitLab 17.1は、ファズテスト用に次の設定変数を追加します:
FUZZAPI_SUCCESS_STATUS_CODESは、ファズテストジョブが合格したかどうかを定義するHTTP成功ステータスコードのカンマ区切りリストを作成します。FUZZAPI_TARGET_CHECK_SKIPは、スキャンが開始される前にターゲットAPIが利用可能になるのを待つのを無効にします。FUZZAPI_TARGET_CHECK_STATUS_CODEは、APIターゲットの可用性チェックの予期されるステータスコードを指定します。提供されていない場合、500以外の任意のステータスコードはスキャナーによって受け入れられます。
これらの新しい変数は、スキャンが実行されることを保証するためのより大きなカスタマイズと柔軟性を提供します。
ユーザー定義変数をオーバーライドできるユーザーに対する制御の強化
ユーザー定義変数をオーバーライドできるユーザーをより適切に制御するために、ci_pipeline_variables_minimum_roleプロジェクト設定を導入しています。この新しい設定は、既存のrestrict_user_defined_variables設定よりも優れた柔軟性を提供します。これで、オーバーライド権限をどのユーザーにも制限しないか、または少なくともデベロッパー、メンテナー、またはオーナーロールを持つユーザーのみに制限することができます。
GitLab Runner 17.1がリリースされました
本日、GitLab Runner 17.1をリリースします!GitLab Runnerは、軽量で高度にスケールするエージェントであり、CI/CDジョブを実行し、結果をGitLabインスタンスに送り返します。GitLab Runnerは、GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。
新機能
バグ修正
すべての変更のリストは、GitLab Runnerの変更履歴にあります。