2020年04月30日 - Noriko Akiyama  
11.10

GitLab 11.10がリリースされました。オペレーションダッシュボード、マージの結果に対するパイプライン、マージリクエストで複数行の変更を提案

GitLab 11.10がリリースされました。オペレーションダッシュボード、マージの結果に対するパイプライン、マージリクエストで複数行の変更を提案などたくさんの機能が追加!

プロジェクト間のパイプラインの状態を簡単に確認

GitLab は DevOps ライフサイクルを可視化するための機能を追加し続けています。 今回のリリースでは、パイプラインのステータスの概要を提供する強力な機能により オペレーションダッシュボード が拡張されています。

これは単一プロジェクトのパイプラインを見る場合でも便利ですが、 マルチプロジェクトパイプライン を使用している場合は特に便利です。 アプリケーションをマイクロサービスアーキテクチャで作成する場合は、ソースコードはサービス毎に異なるリポジトリへ格納し、それぞれのリポジトリでテストやデプロイのパイプラインを実行するのが一般的です。 オペレーションダッシュボード を使用することで、関心のあるプロジェクトのパイプラインの状態をまとめて表示することができます。

マージ後の結果に対するパイプラインの実行

ソースブランチとターゲットブランチが分岐してからの時間の経過とともに、それぞれのブランチの差分は大きくなっていきます。 この場合、ソースとターゲットの両方のパイプラインをパスしたとしても、 マージ後のパイプラインが失敗するというシナリオが発生する可能性があります。 GitLab 11.10では、マージを実施する前に マージ後の結果に対してパイプラインを実行 できます。 これにより、頻繁にリベースしなければ見つけられないエラーを素早く見つけることができるので、 パイプラインの失敗を迅速に解決したり GitLab ランナー をより効率良く利用することが可能になります。

コラボレーションをさらに合理化

GitLab 11.10 では、コラボレーションと開発者のワークフローをシンプルにするためにさらに多くの機能を提供します。 以前のリリース では、 レビュー担当者がコメントのスレッドインターフェイス内から簡単にコミットできるマージリクエストコメントの 1 行の変更を提案できるというマージリクエストの提案機能を導入しました。 GitLab ユーザはその機能を歓迎しています。 現在は、削除したい既存の行を指定したり、複数行を追加したりといった 複数行の変更 を提案することができます。 改善提案していただきありがとうございます。

その他

上記以外にも今回のリリースでは多くの素晴らしい機能がリリースされました。 例えば、スコープ付きラベル, さらに徹底化された コンテナレジストリのクリーンアップ, 構成可能な Auto DevOps, CI ランナーを分単位で追加購入 機能などがあります。 これらの新機能を把握するために是非この記事を読んでください。

GitLab MVP badge

今月のMVPには Takuya Noguchi さんが選ばれました

今月の MVP は Takuya Noguchi さんです。 Takuya さんは、バグの修正、バックエンド / フロントエンドの技術的負債の解消、UI の改善など GitLab に対し多くの貢献 をしていただきました。 ありがとうございました!

GitLab 11.10での主要機能

オペレーションダッシュボードでのパイプラインの情報

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab の オペレーションダッシュボードは強力な機能で、ユーザは GitLab インスタンス全体のプロジェクト情報の概要を把握することができます。個々のプロジェクトを 1 つずつ追加していくので、関心のある特定のプロジェクトに柔軟に対応できます。

今回のリリースでは オペレーションダッシュボードにパイプラインのステータス情報が追加されました。これにより、チームは関心のあるすべてのプロジェクトのパイプラインの状態を 1 つの画面インターフェイス上で確認することができます。

オペレーションダッシュボードでのパイプラインの情報

マージした結果に対するパイプライン

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

フィーチャーブランチ(ソースブランチ)で作業している場合、頻繁にリベースしないと、時間の経過とともにターゲットブランチから乖離してしまいます。 これにより、ソースブランチとターゲットブランチの両方のパイプラインが成功していて、マージコンフリクトは発生しない状態であっても、 ソースブランチをターゲットブランチにマージした結果のパイププラインが失敗する可能性があります。

マージした結果に対するパイプラインでは、ソースブランチとターゲットブランチのマージした新しい参照を自動的に生成し、 その参照に対してパイプラインを実行することで、マージした結果のパイプラインが成功することを確認します。

マージリクエストパイプラインを使用しており、バージョン 11.8 以前のプライベートな GitLab ランナーを使用している場合は、 gitlab-ee#11122 に書かれている問題が発生しないようにランナーをアップグレードする必要があります。 GitLab.com の共有ランナーを使用しているユーザには影響ありません。

マージした結果に対するパイプライン

複数行の変更を提案する

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マージリクエストによる共同作業には、問題の発見や解決策の提案が含まれることがよくあります。GitLab 11.6 では、単一の行への 変更の提案 のサポートを導入しました。

11.10 では、マージリクエストの差分にコメントを残す場合に、複数行に対して変更を提案し、ソースブランチに対する書き込み権限があるすべてのユーザがシングルクリックでその変更を受け入れられるようになりました。 この新機能により、コピー/ペーストの古いワークフローを回避できます。

複数行の変更を提案する

スコープ付きラベル

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

課題やマージリクエストやエピックにおいて、カスタムフィールドやカスタムワークフローのユースケースを解決するために、スコープ付きラベルを利用できます。 スコープ付きラベルは、ラベルのタイトルを2つのコロンで区切るだけで設定できます。

例えば、機能の対象となるプラ​​ットフォームのオペレーティングシステムを区別するために、課題の中にカスタムフィールドが必要だとします。 そして、それぞれの課題には1つのプラットフォームだけを設定したいとします。 その場合は、必要に応じて platform::iOS, platform::Android, platform::Linux のようなラベルを作成します。 これらのラベルのいずれかを特定の課題に適用すると、必要に応じて platform:: で始まる他の既存のラベルが自動的に削除されます。

また、特定のチームのワークフローの状態を表す workflow::development, workflow::review および workflow::deployed というラベルがあるとします。 開発者が workflow::development ラベルがすでに適用された課題を workflow::review に進めたい場合には、単純にその workflow::review ラベルを適用します。 すると、workflow::development ラベルは自動的に削除されます。 この動作は、チームのワークフローを表す課題ボードで、課題を workflow::development から workflow::review に移動する動作と同じです。 しかし、スコープ付きラベルを使用すると、課題ボードで作業していないチームメンバーであっても、ワークフローの状態を一貫して変更することができます。

スコープ付きラベル

コンテナレジストリの徹底的なクリーンアップ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

CI パイプラインでの一般的なコンテナレジストリの使い方だと、通常は同じタグに対して多くの修正を繰り返しプッシュすることになります。 デフォルトの動作では Docker Distribution の実装方法により、システム内のすべてのリビジョンが保持されます。 そのため、このような使用パターンではストレージ容量が大量に消費されてしまいます。 これらの繰り返された修正をクリーンアップする簡単な方法として、管理者は registry-garbage-collect コマンドで -m パラメータを使うことにより、貴重なストレージ容量を解放することができます。

コンテナレジストリの徹底的なクリーンアップ

CI ランナーの実行時間を分単位で追加購入

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab.com の有料プラン (Gold, Silver, Bronze) のユーザは、CI ランナーの実行時間を分単位で追加で購入できるようになりました。 以前は、プランに含まれている実行時間に制限されていました。 この改善により、実行時間がオーバーしそうな時は追加の実行時間を購入することで、パイプラインの停止によるサービス中断を防止できます。

現在の価格は 8 ドル / 1,000 分で、追加購入の上限はありません。 毎月の割り当て分が消費された後に追加分が使われ、毎月末に追加分が残っていると翌月に繰り越しされます。 将来のリリース では、これを無料プランにも拡張することを目指しています。

CI ランナーの実行時間を分単位で追加購入

構成可能な Auto DevOps

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

チームは Auto DevOps を使うことにより、ほとんど、もしくは全く労力をかけずに最新の DevOps プラクティスを採用できます。 GitLab 11.10 からは Auto DevOps の各ジョブは 独立したテンプレート として利用できるようになりました。 ユーザは GitLab CI の includes 機能 により、 独自のカスタム gitlab-ci.yml を使い続けながら Auto DevOps の特定の段階のみを含めることができます。 これにより、チームはアップストリームで行われた更新を利用しながら、必要なジョブだけを含めることができます。

構成可能な Auto DevOps

GitLab.com での SCIM を利用した グループメンバーの自動的な管理

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab.com では、今まではグループメンバーシップの管理を手動で行わなければいけませんでした。 しかし、SAML SSO が使えるようになり、SCIM でグループメンバーシップを管理できるようになりました。 これにより、GitLab.com でユーザを作成、削除、および更新できます。

この機能は、集中型 ID プロバイダを使用して多数のユーザを管理する企業にとって特に便利です。 Azure Active Directory のようなプロバイダーを唯一の正しい情報源として使うことができます - この場合、ユーザが手動ではなく、ID プロバイダに基づいて自動的にプロビジョニングされたり、もしくはプロビジョニングが解除されることを気にしてください。

GitLab.com での SCIM を利用した グループメンバーの自動的な管理

SAML プロバイダを用いた GitLab.com へのサインイン

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループ用の SAML ベースの SSO では、ユーザが GitLab のユーザ資格情報と ID プロバイダーの両方を使用してサインインする必要がありました。 現在は SSO を使用して、ユーザは設定されたグループにリンクされている GitLab ユーザに直ちにサインインできるようになります。

これにより、二段階認証する必要がないので、GitLab.com で SAML SSO を使用する企業にとってより便利になります。

SAML プロバイダを用いた GitLab.com へのサインイン

GitLab 11.10でのその他改善点

子エピックのロードマップ機能

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

以前のリリースでは、チームが業務を細分化して管理できるように、子エピック機能を追加しました。

今回のリリースでは、親のエピックページ自体に子のエピックのロードマップビューを表示できるようになりました。 これにより、チームはそれらの子エピックのタイムラインビューを見ることができ、時間的な依存関係を管理できます。

子エピックのロードマップ機能

ターゲットブランチでマージリクエストをフィルタ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

ソフトウェアをリリースまたはデプロイするための Git ワークフローには、 古いバージョンへの修正のバックポート(例えば stable-11-9)や QA プロセスを経て製品への移行(例えば integration)などの長期にわたる複数のブランチが含まれます。 公開されている多くのマージリクエストの中から、これらのブランチをターゲットとしたマージリクエストを探し出すことは困難です。

プロジェクトおよびグループのマージリクエストリストでは、マージリクエストのターゲットブランチでのフィルタができるようになりました。

Hiroyuki Sato さん、コントリビュートありがとう!

ターゲットブランチでマージリクエストをフィルタ

Wikiページの作成日でのソート

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Wikiを使用することで、プロジェクトのドキュメントなどをチーム内で便利に共有することができます。

今回のリリースから、Wikiのページリストを作成日、タイトルでソートできるようになり、ユーザが最近作成されたコンテンツを素早く確認できるようになります。

Wikiページの作成日でのソート

Grafanaダッシュボードでロードバランサ―のメトリクスを表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabインスタンスが正常に稼働していることを確認するのは重要です。 GitLabでは以前からバンドルされているGrafanaインスタンスでデフォルトのダッシュボードを提供しています。 このリリースから、NGINXのロードバランサ―の監視をするためのダッシュボードが追加されています。

チャートに複数のクエリを表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabでは、あなたが収集しているメトリクスを可視化するためのチャートを作ることができます。 今回のリリースより、1つのチャートでメトリクスの最大値や平均値などの複数の値を表示できるようになります。

メタデータを追加しコンテナスキャンのレポートを充実

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

このリリースでは、影響を受けるコンポーネント が既存のメタデータに追加され、コンテナスキャンのレポートが充実しています。

複数モジュールのMavenプロジェクトによる依存性スキャンの対応

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

このリリースでは、GitLabの依存性スキャンが複数モジュールMavenプロジェクトに対応しました。 以前は、サブモジュールが別のサブモジュールと同列の依存関係を持つ場合、Maven Centralリポジトリからダウンロードできませんでした。 これで、2 つのモジュールとモジュール間の依存関係を持つマルチモジュールMavenプロジェクトが作成されます。 同列の依存関係がローカルのMavenレポジトリで使用できるようになったため、ビルドを続行できます。

ユーザがCIでクローンのパスを変更可能に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

デフォルトでは、GitLab ランナーはプロジェクトを $CI_BUILDS_DIRの一意のサブパスにcloneします。 しかしながら、Golang プロジェクトといった一部のプロジェクトでは、ビルドする特定のディレクトリにコードをcloneする必要がある場合があります。

GitLab 11.10 では、GitLab ランナーがジョブを開始する前にcloneするパスを指定できる GIT_CLONE_PATH という変数が導入されました。

グループレベルでAuto DevOpsを有効または無効に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab.com プロジェクトでAuto DevOpsを有効にすると、ビルドからデプロイまでの全ての工程で、最新のDevOpsワークフローを簡単に使い始めることができます。

GitLab 11.10 以降では、特定のグループに含まれるすべてのプロジェクトに対して、Auto DevOps を有効または無効にする機能が追加されました。

Kubernetes デプロイラベル セレクタの更新

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

デプロイボードを使用すると、Kubernetesのデプロイを簡単に把握することができます。

このリリースでは、ラベルをデプロイと一致させる方法を改訂しています。 例えば、デプロイボードを app.example.com/app または app.example.com/env または app ラベルによってマッチングするようになります。 これにより、フィルター処理を行う際のコンフリクトや、プロジェクトに関連した不適切なデプロイのリスクを防ぐことができます。 さらに、GitLab 12.0 以降では、Kubernetes デプロイメント セレクターから ‘app’ ラベルマッチングを削除し、 かわりにapp.example.com/app 及び app.example.com/env ラベルでのみでマッチングするようになります。

グループレベルのクラスタ向けグループランナー

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループレベルのクラスタで GitLab Runner のインストールがサポートされるようになりました。 グループレベルのKubernetes ランナーは、cluster and kubernetesラベルでタグ付けされたグループランナーとして、子プロジェクトに対して表示されます。

GitLab CI/CD ジョブのgit clean フラグの制御を追加

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

デフォルトでは、GitLab Runner は GitLab CI/CD でジョブを実行している際にコードをチェックアウトするプロセスの一環として git clean を実行します。 GitLab 11.10 では、ユーザがgit clean コマンドに渡されるフラグを制御する機能を追加しています。 専用のランナーを所持するチームや、巨大なリポジトリからプロジェクトをビルドするために、 スクリプトを実行する前のチェックアウトプロセスを制御したいチームにとっては便利な機能と言えます。 新しく追加されたGIT_CLEAN_FLAGS 変数は-ffdxのデフォルトであり、 git clean コマンドで可能なすべてのオプションに対応しています。

Coreの外部認証

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

セキュリティを考慮した環境では、プロジェクトへのアクセスを許可するために、外部の追加承認リソースを確認する必要がある場合があります。 10.6で、このアクセスコントロールの追加レイヤーへのサポートを追加しましたが、コミュニティから、この機能を Core への移行してほしいとの要望が寄せられていました。 この機能は個々のコントリビュータが関心を持つ機能なので、外部認証を受け入れ、Coreインスタンスに対してセキュリティレベルを追加できることを我々は嬉しく思います。

GitLab Runner 11.10

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

また、本日GitLab Runner11.10をリリースします!GitLab Runner は、CI/CD ジョブを実行し、結果を GitLab に返すために使用されるオープンソースプロジェクトです。

最も興味深い変更点:

すべての変更点は、GitLabランナーのCHANGELOGでご覧いただけます。

パフォーマンスの改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabはリリースごとに、あらゆるサイズのインスタンス向けにパフォーマンスを改善し続けています。 GitLab 11.10 での改善点は次の通りです:

マージリクエストのポップオーバー機能

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

このリリースでは、マージリクエストのリンク上にマウスオーバーしたときのポップオーバー機能が強化されました。 以前はマージリクエストのタイトルのみを表示していましたが、 現在はマージリクエストのステータス、CI パイプラインのステータス、タイトル、および短縮 URL を表示できるようになりました。

将来のリリースでは、担当者やマイルストーン などの重要な情報を追加したり、 課題 にもポップオーバー機能を導入する予定です。

マージリクエストのポップオーバー機能

Pushオプションでパイプライン成功時に自動的にマージ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

トランクベースの開発では、長期的なブランチでの開発を避けて、小さく、短期的なブランチで開発することが推奨されています。 しかし、非常に小さな変更については、フィーチャブランチを作成しないでターゲットブランチに直接プッシュすることも珍しくありません。 これは、ビルドを壊す危険な行為でもあります。

今回のリリースで、GitLabは新しいGitのpushオプションをサポートします。 これにより、ブランチにpushするタイミングで、自動的にマージリクエストを作成し、 ターゲットブランチを設定し、 パイプラインが成功した場合に自動的にマージすることを可能にしました。

Pushオプションでパイプライン成功時に自動的にマージ

外部の監視ダッシュボードでの連携を改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabは複数のプロメテウスサーバーにアクセスすることができます(環境、プロジェクト、もうすぐグループレベルも)が、複数の対象を監視する複雑さは難易度が高かったり、一般的なダッシュボードツールでサポートされていません。 このリリースで、チームは単一のPrometheus APIインターフェースで連携できるようになり、Grafanaなどのサービスとの統合がはるかに簡単になりました。

クラスターから要求されたリソースの監視

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabを使用して、ステージングや本番で利用中のKubernetesクラスターを監視することができます。 今回のリリースより、要求されたCPUやメモリのリソースを監視できるようになりました。 これにより、アプリケーションへの影響が表面化する前に気づくことができます。

クラスターから要求されたリソースの監視

ElixirのSAST

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

私たちは、セキュリティスキャンで、より多くの言語をサポートし、精度をさらに高める取り組みを続けています。 今回のリリースではElixirで作成されたプロジェクトのセキュリティスキャンが可能になり、 Phoenix フレームワークで作成されたプロジェクトにも対象が拡張されました。

DAST 結果をグループセキュリティダッシュボードに表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループセキュリティダッシュボードに、動的アプリケーションセキュリティテスト(DAST)の結果を追加し、 既に表示している静的アプリケーションセキュリティテスト(SAST)、コンテナスキャン、および依存性のスキャン結果と併せて表示できるようになりました.

マージリクエストにメトリクスレポートタイプを追加

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab には、マージリクエストに直接含められるレポートタイプがいくつかすでに提供されています。例えばVerify ステージの Code QualityUnit Test reports、 Secure ステージの SAST 及び DAST などが挙げられます。

こういった特定のレポートタイプは非常に価値の高いものですが、さまざまな種類のユース ケースで使用できる基本的な方法を提供することにも価値があります。 GitLab 11.10 では、マージリクエストに、単純な key/value のペアを期待値とするメトリクスレポートを表示する機能を追加しました。 これにより、ユーザはカスタムメトリクスを含むすべての変更点を時間の経過と共に追跡し、特定のマージリクエストでどのように変更されるかをトラッキングできます。 メモリ使用量、特殊なロードテスト、その他のコード正常性状態などのユースケースは、単純なメトリクスに変換して、他のビルドインレポートと共にMRで直接公開できます。

ログ内の保護変数のシンプルなマスキング

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabでは、CI/CD の変数を 保護 したり スコープを制限 する方法をいくつか提供しています。 しかしながら、変数が意図的に、もしくは意図せずにビルドログに漏洩するリスクは残っています。

GitLab はリスク管理と監査に対し真剣に取り組み、コンプライアンス活動に役立つ機能を追加し続けています。 GitLab11.10では、特定のタイプの変数がジョブトレース ログに見つかった場合にマスクする機能を追加し、 それらの変数の値が誤ってログに漏洩するのを防止できるようになりました。 また、GitLab はビルドインのトークン変数の多くを 自動的にマスク できるようになりました。

ライセンス ページの簡素化と改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

ユーザーエクスペリエンスを向上させ、ライセンスキーの処理を容易にするために、管理パネルのライセンスページを再設計し、ページの最重要要素を強調しました。

ライセンス ページの簡素化と改善

ジャスト・イン・タイムのKubernetes リソース作成

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab は Kubernetes と統合されているので、各 GitLab プロジェクトに対してサービスアカウントや専用のネームスペースを作成することによりRBACセキュリティを活用できます。 今回のリリース以降、これらのリソースの作成効率を最大化するために、デプロイに必要な場合にのみ作成されます。

Kubernetes のデプロイが行われると、GitLab CI はデプロイ前にリソースを作成します。

Knative 関数の呼び出し回数を表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab Serverlessでデプロイした関数について、 関数の呼び出し回数を記録できるようになりました。 呼び出し回数を表示するには、Knative がインストールされているクラスタに Prometheus をインストールする必要があります。

Knative 関数の呼び出し回数を表示

Coreでも開発者がグループ内にプロジェクトを作成可能に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

10.5で、開発者ロールがグループ内にプロジェクトを作成できる設定を追加しましたが、この設定を Core に移動しました。 プロジェクトの作成は GitLab の生産性を高める重要な機能であり、この設定を Core に移動することでグループのメンバーが新規作業に取り組む際の障壁を減らせられます。

Elasticsearchを使用したblob検索APIで返される project_id を修正

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Elasticsearchのblob検索APIで、 project_idに対して誤って0を返すバグを修正しました。 本バージョンのGitLabをインストールした後、 Elasticsearchのインデックスを再作成 して、正しい project_id を取得する必要があります。

Omnibus の改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab 11.10 では Omnibus に対して次の機能を強化しました:

  • GitLab 11.10 には Mattermost 5.9.0が含まれています。 Mattermost 5.9.0はオープンソースの open source Slack-alternative であり、最新リリースには新しいインテグレーションディレクトリが含まれ、Hipchat から簡単にデータを移行できるなど、様々な利点があります。 このバージョンには security 更新プログラムも含まれており、 アップデートをお勧めします。
  • GitLab ダッシュボードが バンドルされた Grafana に事前設定されるようになり、GitLab のインスタンスのモニタリングをより簡単に開始できるようになりました。
  • Docker レジストリから古いコンテナイメージをクリーンアップするサポートを追加しました。
  • ca-certs を 2019-01-23 に更新しました。

GitLab chartの改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab chartに対して次の機能を強化しました。:

非推奨

GitLab Geo でハッシュストレージを適用( GitLab 12.0 )

GitLab Geo ではセカンダリノードの競合状態を緩和するために Hashed Storage が必要です。 これは gitlab-ce#40970に記載されています。

この要件は GitLab 11.5で、 gitlab-ee#8053にある Geo のドキュメントに追加されました。

GitLab 11.6では、 sudo gitlab-rake gitlab:geo:check コマンドを用いて、ハッシュストレージが有効であり、すべてのプロジェクトが移行されていることを確認できます。 gitlab-ee#8289を参照してください。 Geo を使用している場合は、このチェックを実行してできるだけ早く移行してください。

GitLab 11.8では、上記のチェックが出来ていない場合、 Admin Area › Geo › Nodes ページに警告が表示されます: gitlab-ee!8433

GitLab 12.0では、Geo で Hashed Storage 要件を適用する予定です。 gitlab-ee#8690を参照してください。

削除日: Jun. 22, 2019

Ubuntu 14.04のサポート

GitLab 11.10 はUbuntu 14.04 をサポートする最後のリリースになります。

Canonical社は、Ubuntu 14.04 の標準サポートをApril 2019に終了させることを発表しました。Ubuntu 14.04をご使用中の方は、現在サポート対象のUbuntu 16.04 または Ubuntu 18.04 の LTS バージョンのいずれかにアップグレードすることをお勧めします。

削除日: May 22, 2019

1 回のプッシュで作成されるパイプラインの最大数を制限

これまで、GitLab は一度のプッシュで含まれるすべてのブランチの HEAD のパイプラインを作成しました。 これは、一度に(例えばフィーチャーブランチやdevelopブランチなど)複数の変更をプッシュする開発者 にとっては理にかなっています。 しかしながら、多数のアクティブなブランチを持つ大規模なリポジトリをプッシュする場合(例えば別の場所から移動、ミラー化、分岐など)、すべてのブランチに対してパイプラインを作成しても意味がありません。 GitLab 11.10 以降では、一度のプッシュ操作中に最大4つのパイプライン を作成します。

削除日: May 22, 2019

GitLab Runner での legacy code パスを廃止

Gitlab 11.9 以降、GitLab Runner はリポジトリのクローン作成/取得に 新しい方法を使用しています。 現在 GitLab Runner は新しい方法がサポートされていない場合に古い方法を使用します。

GitLab 11.0 では GitLab Runner 用の metrics_server 設定方法を変更しました。 metrics_server は GitLab 12.0 で導入される listen_address のために削除されます。詳細については この課題を参照してください。

11.3 では GitLab Runner での 複数キャッシュプロバイダー のサポートを開始しました。これにより S3 固有の設定 に新しい設定が追加されました。 ドキュメントには、何が変わったのか、そして新しい設定にどう対応するのかをまとめた表があります。詳細は この課題 を参照してください。 これらのパスは GitLab 12.0 では使用できなくなります。GitLab Runner 12.0 にアップグレードするときにユーザーがやるべきことは GitLab インスタンス上の GitLab のバージョンが 11.9 以上であることを確認するだけです。 他は何も変更する必要はありません。

削除日: Jun. 22, 2019

GitLab Runner の entrypoint フィーチャーフラグを廃止

GitLab Runner は 11.4 にて#2338#3536のような課題に対応するために FF_K8S_USE_ENTRYPOINT_OVER_COMMANDという feature フラグを導入しました。

GitLab 12.0 ではフィーチャーフラグがオフになっているかのように正しい挙動に切り替わります。 詳細については こちらの課題 を参照してください。

削除日: Jun. 22, 2019

GitLab Runner で EOL になった Linux ディストリビューションのサポートを廃止

GitLab Runner をインストールできるいくつかの Linux ディストリビューションがサポート終了となりました。

GitLab 12.0 では、GitLab Runner はこれらの Linux ディストリビューションに対してパッケージを配布しなくなります。サポートされなくなったディストリビューションの完全なリストは このドキュメント にあります。 Javier Jardón さんの コントリビューション に感謝します。

削除日: Jun. 22, 2019

Legacy GitLab Runner Helper コマンドを削除

Windows Docker executorをサポートする取り組みの一環として helper imageで使用されていたいくつかの古いコマンドを廃止する必要がありました。 GitLab 12.0 では、GitLab Runner が新しいコマンドを使うようになります。これは helper イメージを上書きしているユーザにのみ影響します。 詳細については この課題 を参照してください。

削除日: Jun. 22, 2019

GitLab Runner から Legacy git clean メカニズムを削除

GitLab Runner 11.10では、Runner による git cleanコマンドの実行方法を設定する方法が導入されています。 さらに、新規クリーンアップ戦略により、git resetの使用が削除され、git cleanコマンドがチェックアウトステップの後に移動します。

これは一部のユーザーに影響を与える可能性のある動作変更なので、フィーチャーフラグを導入しました。 このフラグを trueに設定すると、従来のクリーンアップ戦略が復元されます。GitLab Runner でのフィーチャーフラグ使用方法の詳細については、ドキュメントを参照してください。 GitLab Runner 12.0 では、GitLab Runner は従来のクリーンアップ戦略のサポートを終了し、フィーチャーフラグを使用して復元する機能が削除されます。 詳細については、この課題を参照してください。

削除日: Jun. 22, 2019

admin パネルのシステム情報セクションについて

GitLab は稼働中の GitLab インスタンスに関する情報を admin/system_info に表示しますが、この情報は不正確かもしれません。

GitLab 12.0 では admin パネルの このセクションを削除 予定であり、他のモニタリング機能の使用をお勧めします。

削除日: Jun. 22, 2019

Omnibus GitLab での Prometheus 1.x サポート

Omnibus GitLab にバンドルされる Prometheus はGitLab 11.4では 1.0 バージョンが廃止されて 2.0 にアップグレードされた Prometheus が含まれるようになりました。 ただし、メトリクスのフォーマットは 1.0 と互換性がありません。 既存のインストールでは 2.0 にアップグレードできますが、その際オプションで 付属のツールを使用してデータ移行できます。

GitLab 12.0では、まだ Prometheus 2.0 が動作していない場合は自動的にアップグレードされます。Prometheus 1.0 からのメトリクスデータは移行されずに失われます。

削除日: Jun. 22, 2019

変更履歴

すべての名称付きの変更を確認したい場合はCHANGELOGを確認してください:

インストール方法

新規にGitLabをインストールをする場合は インストール のページを参照してください。

アップデート方法

アップデート ページを参照ください。

GitLabのサブスクリプションプラン

GitLabは セルフホスト または クラウドサービス で利用できます。

セルフホスト: オンプレミス、またはクラウドプラットフォームにデプロイ

  • Core: 小規模なチーム、個人プロジェクト、または無期限でのGitLabの試用に向いています
  • Starter: プロフェッショナルのサポートが必要な、同一の場所で作業するチームに向いています
  • Premium: 高度な機能、高可用性、365日24時間のサポートが必要な、複数の場所で作業するチームに向いています
  • Ultimate: 高度なセキュリティとコンプライアンスで戦略の実行が求められるエンタープライズ向けのプランです

クラウドサービス - GitLab.com: 無料でも利用可能な、GitLabが運営するクラウドサービスです。

  • Free: プライベートリポジトリと共同作業者の制限はありません。 プライベートプロジェクトではFreeの機能に制限されますが、パブリックプロジェクトではGoldの機能を利用できます。
  • Bronze: より高度なワークフロー機能が必要なチームに向いています。
  • Silver: より強力なDevOps機能、コンプライアンス、迅速なサポートが必要なチームに向いています。
  • Gold: 多くののCI/CDのジョブを実行できます。プランにかかわらず、パブリックプロジェクトでは無料でGoldの機能を利用できます。

カバーイメージ のライセンスは Unsplash です。

GitLab(有償版)に関するご質問は「クリエーションライン」にお問合せください。

クリエーションラインはGitLabの国内初の正規代理店で、GitLabのサポートを得意としています。

Gitlab x icon svg