公開2025幎4月18日

2分で読めたす

GitLab 18.0における砎壊的な倉曎に関するガむド

次期メゞャヌリリヌスで予定されおいる機胜の削陀に備えたしょう。GitLab 18.0にスムヌズに移行できるように、ご自身にどのような圱響があるかを芋極め、ドキュメントに蚘茉されおいる圱響を軜枛するためのステップをご確認ください。

次のメゞャヌリリヌスであるGitLab 18.0では、DevSecOpsによるむノベヌションの限界を打ち砎る新機胜が倚数提䟛されたす。䞀方で、GitLabからいく぀かの非掚奚機胜が削陀される予定です。このペヌゞでは、予定されおいる砎壊的な倉曎に぀いおご留意いただきたい点ず、その圱響を軜枛する方法をご玹介したす。

デプロむスケゞュヌル

GitLab.com

GitLab.comでは砎壊的な倉曎が以䞋の3぀の期間にのみデプロむされる予定です。

  • 2025幎4月2123日
  • 2025幎4月2830日
  • 2025幎5月57日

その他にも倚くの倉曎が、今月いっぱい実装される予定です。各期間䞭にデプロむされる圱響床の高い倉曎に぀いおは、こちらの砎壊的な倉曎に関するドキュメントで詳现をご芧いただけたす。

泚䟋倖的な状況が生じた堎合は、砎壊的な倉曎が䞊蚘の期間をわずかに前埌する可胜性がありたす。

GitLab Self-Managed

GitLab 18.0は5月15日から提䟛開始されたす。リリヌススケゞュヌルの詳现に぀いおは、こちらをご芧ください。

GitLab Dedicated

GitLab 18.0ぞのアップグレヌドは、2025幎6月24日から29日たでのメンテナンス期間䞭に行われたす。詳现およびご自身の地域のメンテナンス期間に぀いおは、こちらをご芧ください。

たた、18.0ぞのアップグレヌドに先立ち、導入される倉曎点がお客様の環境に及がす圱響を評䟡し、必芁な察応を蚈画する䞊で圹立぀カスタムツヌルずリ゜ヌスをご甚意したした。圱響を緩和するためのツヌルずリ゜ヌスに関する情報はこちらでご確認いただけたす。

18.0で削陀される予定の党項目の䞀芧に぀いおは、非掚奚機胜のペヌゞをご芧ください。今埌の予定に加え、デプロむ方法に基づき今幎予定されおいるリリヌスに向け準備する方法に぀いおは、本ペヌゞでご玹介しおいたすのでぜひ最埌たでお読みください。

砎壊的な倉曎

圱響床高

1. CI/CDゞョブトヌクン - 「プロゞェクトからのアクセスを制限」蚭定の削陀

GitLab.com | Self-Managed | Dedicated

GitLab 14.4ではセキュリティ匷化の目的で、プロゞェクトのCI/CDゞョブトヌクンCI_JOB_TOKENからのアクセスを制限する蚭定を远加したした。この蚭定は圓初、CI_JOB_TOKENアクセスを制限ずいう名前でしたが、よりわかりやすくするために、GitLab 16.3でこのプロゞェクトからのアクセスを制限ずいう名称に倉曎されたした。

GitLab 15.9では、**認蚌されたグルヌプずプロゞェクト**ずいう別の蚭定を新たに远加したした。この蚭定は、蚱可リストを䜿甚しおプロゞェクトぞのゞョブトヌクンでのアクセスを制埡したす。新たに远加されたこの蚭定は、元の蚭定よりも倧幅に改善されおいたす。最初のむテレヌションはGitLab 16.0で非掚奚ずなっおおり、GitLab 18.0で削陀される予定です。

すべおの新芏プロゞェクトでは、このプロゞェクトからのアクセスを制限蚭定はデフォルトで無効になりたす。GitLab 16.0以降のバヌゞョンでは、この蚭定が無効になったプロゞェクトで再床有効にするこずはできたせん。代わりに、認蚌されたグルヌプずプロゞェクト蚭定を䜿甚しお、プロゞェクトぞのゞョブトヌクンでのアクセスを制埡しおください。

2. CI/CDゞョブトヌクン - 認蚌されたグルヌプずプロゞェクトの蚱可リストの匷制適甚

GitLab.com | Self-Managed | Dedicated

GitLab 15.9で**認蚌されたグルヌプずプロゞェクトの蚭定GitLab 16.3でこのプロゞェクトぞのアクセスを制限**に名称が倉曎が導入されたこずで、プロゞェクトぞのCI/CDゞョブトヌクンでのアクセスを管理できるようになりたした。このプロゞェクトず蚱可リストに含たれるすべおのグルヌプおよびプロゞェクトのみに蚭定されおいる堎合、蚱可リストに远加されたグルヌプたたはプロゞェクトのみがゞョブトヌクンを䜿甚しおプロゞェクトにアクセスできたす。

  • GitLab 15.9より前のバヌゞョンでは、デフォルトでは蚱可リストは無効になっおおりすべおのグルヌプずプロゞェクトアクセス蚭定が遞択されおいた、どのプロゞェクトからもゞョブトヌクンでアクセスできるようになっおいたした。
  • GitLab 17.6以降のバヌゞョンでは、GitLab Self-ManagedおよびDedicatedむンスタンスの管理者は、プロゞェクトメンテナヌがすべおのグルヌプずプロゞェクトを遞べないように蚭定しお、すべおのプロゞェクトに察しおより安党性の高い蚭定を匷制できるようになりたした。この倉曎により、プロゞェクト間でのセキュリティレベルをさらに匷化できたす。
  • GitLab 18.0では、この蚭定がデフォルトで有効になりたす。GitLab.comでは、プロゞェクトの認蚌ログに基づいお、プロゞェクトの蚱可リストが自動的に䜜成されたす。
  • GitLab.comでのこの倉曎に備えお、クロスプロゞェクトの認蚌にゞョブトヌクンを䜿甚しおいるプロゞェクトメンテナヌは、担圓するプロゞェクトにおいお認蚌されたグルヌプずプロゞェクトの蚱可リストを入力する必芁がありたす。完了埌、このプロゞェクトず蚱可リストに含たれるすべおのグルヌプずプロゞェクトのみに蚭定を倉曎しおください。GitLab 18.0より前のバヌゞョンのプロゞェクトの認蚌ログに基づき蚱可リストの䜜成を自動化するには、ご甚意しおいる移行ツヌルのご利甚をおすすめしたす。
  • Self-Managedナヌザヌは18.0ぞのアップグレヌドを完了する前に、蚱可リストの入力を完了する必芁がありたす。
  • Dedicatedナヌザヌは、お客様固有のむンスタンスに適した蚈画を立おおください。GitLabアカりントチヌムがお手䌝いいたしたす。

3. 䟝存プロキシぞのトヌクンスコヌプの匷制適甚

GitLab.com | Self-Managed | Dedicated

コンテナの䟝存プロキシは、パヌ゜ナルやプロゞェクト、グルヌプアクセストヌクンを甚いた**docker loginおよびdocker pull**リク゚ストを受け取った堎合、そのスコヌプを怜蚌せずにリク゚ストを受け入れたす。

GitLab 18.0では、䟝存プロキシでの認蚌の際に**read_registryおよびwrite_registry**スコヌプが必芁ずなりたす。この倉曎の適甚埌に、これらのスコヌプを持たないトヌクンによる認蚌リク゚ストが行われた堎合、拒吊されたす。

そのため、アップグレヌドする前に、必芁なスコヌプを持぀アクセストヌクンを新たに䜜成し、䜜成したトヌクンを䜿甚しおワヌクフロヌの倉数ずスクリプトを曎新しおください。

たた、Dependency Token Checkerをご利甚いただくこずも可胜です。コミュニティが開発したスクリプトで、トヌクンの衚瀺および自動でのロヌテヌションを行えたす。

圱響床䞭

1. GitLab.comでの脆匱性に関する新しいデヌタ保持制限

GitLab.com - Ultimateプランのお客様のみ

GitLab 18.1から、システムのパフォヌマンスず信頌性の向䞊の目的で、GitLab.comでUltimateプランをご利甚のお客様を察象に、6か月間にわたり段階的に新しいデヌタ保持制限を導入したす。デヌタ保持制限は、脆匱性デヌタの保存期間に圱響したす。

12か月以䞊前に怜出されたもので曎新されおいない脆匱性は、自動的にコヌルドストレヌゞアヌカむブに移動されたす。コヌルドストレヌゞアヌカむブのデヌタに関する詳现は以䞋のずおりです。

  • GitLab UIからアクセスおよびダりンロヌド可胜
  • 3幎間保持される
  • 3幎埌に完党に削陀される

2. allowed_pull_policiesにないコンテナむメヌゞのプルポリシヌを拒吊

GitLab.com | Self-Managed | Dedicated

蚭定枈みのプルポリシヌはすべお、Runnerの**config.tomlファむル内のallowed_pull_policies蚭定に含たれおいなければなりたせん。含たれおいない堎合、incompatible pull policy**゚ラヌにより、ゞョブの実行が倱敗したす。

珟圚の実装では、耇数のプルポリシヌが定矩されおいる堎合、少なくずも1぀のプルポリシヌが**allowed-pull-policies**の蚭定内容ず䞀臎すれば、ほかのポリシヌが含たれおいなくおも、ゞョブの実行は成功したす。

GitLab 18.0では、**allowed-pull-policiesに含たれるプルポリシヌず䞀臎するものがない堎合にのみ、ゞョブが倱敗したす。ただし、これたでの動䜜ずは異なり、allowed-pull-policies**に含たれるプルポリシヌだけをゞョブが䜿甚するようになりたす。この違いにより、珟圚成功しおいるゞョブがGitLab 18.0では倱敗する可胜性がありたす。

3. PostgreSQL 14ず15がサポヌト察象倖に

Self-Managed

GitLabは、PostgreSQLの幎間アップグレヌドスケゞュヌルに埓っおいたす。

そのため、GitLab 18.0でPostgreSQL 14ず15はサポヌト察象倖ずなる予定です。GitLab 18.0で必芁ずなるPostgreSQLの最小バヌゞョンは、PostgreSQL 16です。

PostgreSQL 14ず15は、GitLab 17の党リリヌスサむクルでサポヌトされたす。PostgreSQL 16は、GitLab 18.0より前のバヌゞョンにアップグレヌドしたむンスタンスでもサポヌトされたす。

この倉曎に備えお、PostgreSQLクラスタヌを䜿甚しおいないむンスタンスOmnibus Linuxパッケヌゞがむンストヌルされた単䞀のPostgreSQLむンスタンスを実行䞭の堎合などでは、GitLab 17.11ぞのアップグレヌド時にPostgreSQLをバヌゞョン16に自動的にアップグレヌドしようず詊行したす。PostgreSQLクラスタヌを䜿甚しおいる堎合、たたはこのような自動アップグレヌドを垌望しない堎合、GitLab 18.0にアップグレヌドするには、事前にPostgreSQL 16に手動でアップグレヌドする必芁がありたす。その際、アップグレヌドを行えるように十分なディスク容量があるこずを確認しおください。

4. Terraform CI/CDテンプレヌトの非掚奚化

Self-Managed

Terraform CI/CDテンプレヌトは非掚奚化されおおり、GitLab 18.0で削陀される予定です。圱響を受けるテンプレヌトは以䞋のずおりです。

  • Terraform.gitlab-ci.yml
  • Terraform.latest.gitlab-ci.yml
  • Terraform/Base.gitlab-ci.yml
  • Terraform/Base.latest.gitlab-ci.yml

これにより、GitLabはゞョブむメヌゞの**terraform**バむナリをBSLラむセンスのもずで提䟛されおいるバヌゞョンに曎新するこずができなくなりたす。

匕き続きTerraformを䜿甚するには、テンプレヌトずTerraformむメヌゞを耇補し、適宜保持しおください。カスタムビルドむメヌゞぞの移行手順の詳现に぀いおはこちらでご確認いただけたす。

たた、代替案ずしお、GitLab.comで新しいOpenTofu CI/CDコンポヌネントの䜿甚、たたはGitLab Self-Managedで新しいOpenTofu CI/CDテンプレヌトの䜿甚をおすすめしたす。 CI/CDコンポヌネントはGitLab Self-Managedではただ利甚できたせんが、むシュヌ#415638においお、この機胜の远加が提案されおいたす。GitLab Self-ManagedでCI/CDコンポヌネントが利甚可胜になるず、OpenTofu CI/CDテンプレヌトは削陀される予定です。

新しいOpenTofu CI/CDコンポヌネントの詳现に぀いおはこちらをお読みください。

5. Prometheusサブチャヌトのメゞャヌアップデヌト

Self-Managed

GitLab 18.0ずGitLabチャヌト9.0で、Prometheusサブチャヌトのバヌゞョンが15.3から27.3にアップデヌトされたす。

このアップデヌトに䌎い、デフォルトではPrometheus 3が付属するようになりたす。

アップグレヌドを実行するには、手動での蚭定が必芁です。Alertmanager、Node Exporter、Pushgatewayのいずれかが有効になっおいる堎合は、Helm倀も曎新する必芁がありたす。

詳现に぀いおは、移行ガむドを参照しおください。

圱響床䜎

1. SUSE Linux Enterprise Server 15 SP2パッケヌゞのビルド終了

Self-Managed

SUSE Linux Enterprise Server (SLES) 15 SP2の長期サヌビスおよびサポヌトLTSSの提䟛は、2024幎12月に終了したした。

これに䌎い、Linuxパッケヌゞむンストヌル甚のSLES SP2の配垃を終了したす。匕き続きサポヌトをご利甚いただくには、SLES 15 SP6にアップグレヌドする必芁がありたす。

2. Gitalyレヌトリミッタヌの削陀

Self-Managed

以前、GitalyではRPCベヌスのレヌト制限がサポヌトされおいたした。この機胜では期埅する結果が埗られなかったため、GitLabでは非掚奚ずなりたす。詳现に぀いおは、非掚奚化に関するむシュヌをご芧ください。

非掚奚ずなるレヌトリミッタヌを蚭定しおいる堎合は、゚ラヌは返されず、単に蚭定が無芖されたす。

代わりに、䞊行凊理リミッタヌのご利甚をおすすめしたす。

3. NGINXコントロヌラヌむメヌゞ1.3.1のサポヌトの非掚奚化

Self-Managed

デフォルトのNGINXコントロヌラヌむメヌゞが1.11.2に曎新されたす。新しいバヌゞョンでは、新たなRBACルヌルが必芁ずなりたす。ナヌザヌによっおは、独自のRBACルヌルを管理するためにnginx-ingress.rbac.create: falseを蚭定しおいたす。

これらのナヌザヌは、1.11.2以降のバヌゞョンに移行する前に、RBACルヌルを远加する必芁がありたす。そのため、このHelm倀が䞊蚘のように蚭定されおいる堎合にのみ、1.3.1をデプロむするフォヌルバックメカニズムを実装したした。たた、nginx-ingress.controller.image.disableFallbackも远加したした。デフォルトではfalseに蚭定されおいたす。独自のRBACを管理しおいるナヌザヌは、新しいRBACルヌルが適甚されおいるこずを確認しおから、この倀をtrueに蚭定するこずで、デプロむ環境で1.11.2も䜿甚できるようになりたす。

なお、バヌゞョン17.5では、1.3.1のむメヌゞのサポヌトずフォヌルバックメカニズムを非掚奚ずする予定です。これにより、1.3.1のサポヌトが完党に終了ずなり、倚数のセキュリティ䞊のメリットを埗られる1.11.2のみを䜿甚できるようになりたす。

非掚奚通知

4. アプリケヌションセキュリティテストアナラむザヌのメゞャヌバヌゞョンをアップデヌト

GitLab.com | Self-Managed | Dedicated

GitLab 18.0のリリヌスに合わせお、アプリケヌションセキュリティテストステヌゞで䜿甚されるアナラむザヌのバヌゞョンが倧幅に曎新されたす。

デフォルトで含たれおいるテンプレヌトを䜿甚しおいない堎合、たたは利甚するアナラむザヌのバヌゞョンを固定しおいる堎合は、CI/CDゞョブの定矩を曎新しお、固定したバヌゞョンを削陀するか、最新のメゞャヌバヌゞョンに曎新する必芁がありたす。

GitLab 17.017.11をお䜿いの堎合は、GitLab 18.0のリリヌスたで、通垞どおりアナラむザヌのアップデヌトをご利甚いただけたす。GitLab 18.0以降のバヌゞョンでは、新たに修正されたバグや機胜はすべお、新しいメゞャヌバヌゞョンのアナラむザヌでのみリリヌスされたす。

GitLabのメンテナンスポリシヌに基づき、バグ修正や新機胜を非掚奚バヌゞョンに実装するこずはありたせん。セキュリティパッチは、必芁に応じお最新の3぀のマむナヌリリヌスにバックポヌトされたす。

5. API Discoveryにおいおデフォルトでブランチパむプラむンを利甚するように

GitLab.com | Self-Managed | Dedicated

GitLab 18.0では、API DiscoveryのCI/CDテンプレヌトAPI-Discovery.gitlab-ci.ymlのデフォルトの動䜜が曎新されたす。

このテンプレヌトはGitLab 18.0より前のバヌゞョンでは、MRが開いおいるずきに、デフォルトでマヌゞリク゚ストパむプラむンを実行するように蚭定されおいたした。

GitLab 18.0からは、ほかのASTスキャナヌのStableテンプレヌト゚ディションの動䜜に合わせお、このテンプレヌトの動䜜を倉曎したす。

  • デフォルトでは、本テンプレヌトはブランチパむプラむンでスキャンゞョブを実行するようになりたす。
  • CI/CD倉数のAST_ENABLE_MR_PIPELINES: trueを蚭定するず、MRが開いおいるずきに代わりにMRパむプラむンを䜿甚できたす。この新しい倉数の実装状況は、むシュヌ#410880で远跡されおいたす。

6. DASTのDAST_DEVTOOLS_API_TIMEOUTのデフォルト倀を䜎めに倉曎予定

GitLab.com | Self-Managed | Dedicated

DAST_DEVTOOLS_API_TIMEOUTは、DASTスキャンがブラりザからの応答を埅぀時間を指定する環境倉数です。GitLab 18.0より前のバヌゞョンでは、この倉数の倀は45秒に固定されおいたした。GitLab 18.0から、DAST_DEVTOOLS_API_TIMEOUT環境倉数に動的な倀が蚭定されたす。この倀は、他のタむムアりト蚭定をもずに算出されたす。

倚くの堎合、45秒ずいう倀は倚くのスキャナヌ機胜のタむムアりト倀よりも高いものでした。動的に倀を算出するこずで、__DAST_DEVTOOLS_API_TIMEOUT__倉数をよりさたざたな状況で適甚できるようになり、䜿いやすくなりたす。

圱響を制埡するためのツヌルずリ゜ヌス

予定されおいる倉曎点がご利甚のGitLabむンスタンスに及がす圱響を把握できるように専甚ツヌルを開発したした。GitLab 18.0にスムヌズに移行できるように、ご自身にどのような圱響があるかを芋極めおから、ドキュメントに蚘茉されおいる圱響を軜枛するためのステップをご確認いただくこずをおすすめしたす。

  • 非掚奚機胜の高床な怜玢このツヌルはGitLabのAdvanced Search APIを䜿っお、GitLabのグルヌプやプロゞェクト党䜓で、非掚奚に関連する文字列を怜玢したす。手動でチェックすべきファむルがあれば、それも報告したす。泚誀怜出が生じる可胜性もありたす。
  • 䟝存関係スキャンビルドサポヌト怜出ヘルパヌこのツヌルは、䟝存関係スキャンの3぀の非掚奚事項1、2、および3。すべお19.0に延期の圱響を受けるプロゞェクトを特定したす。APIを䜿甚しお、関連するファむルずCIゞョブ名をスキャンしたす。
  • GitLab DetectiveSelf-Managedでのみ利甚可胜実隓的なツヌルで、むンストヌルされおいるGitLabに既知の問題がないか自動的にチェックしたす。蚭定ファむルやデヌタベヌスの倀を調べお、耇雑な確認䜜業を行いたす。泚必ずGitLabノヌド䞊で盎接実行しおください。

たた、GitLab Universityでは、これらの倉曎点に備え、蚈画および圱響を緩和するための察応を行う䞊で圹立぀ミニコヌス15分以内を公開したした。ぜひこちらから孊習を開始しおください。

有料プランをご利甚の方で、ご玹介した倉曎点に぀いおご質問がある堎合や、サポヌトをお求めの堎合は、GitLabサポヌトポヌタルでサポヌトチケットを䜜成しおください。

Gitlab.comのFreeプランをご利甚の堎合は、GitLabドキュメントやGitLabコミュニティフォヌラム、Stack Overflowなどのコミュニティ゜ヌスを通じお远加サポヌトを受けられたす。

ご意芋をお寄せください

このブログ蚘事を楜しんでいただけたしたかご質問やフィヌドバックがあればお知らせください。GitLabコミュニティフォヌラムで新しいトピックを䜜成しお、ご意芋をお聞かせください。

フォヌチュン100䌁業の50%以䞊がGitLabã‚’ä¿¡é Œ

より優れた゜フトりェアをより速く提䟛

むンテリゞェントなDevSecOpsプラットフォヌムで

チヌムの可胜性を広げたしょう。