2019年06月12日 - Hiromi Nozawa   (原文)
11.8

GitLab 11.8がリリース、SASTのJavaScript対応、Pagesのサブグループ対応、エラートラッキング

GitLab 11.8がリリースされました。SASTのJavaScript対応、Pagesのサブグループ対応、エラートラッキングなど様々な点が改善されています。

SAST での JavaScript カバレッジ

GitLab の静的アプリケーションセキュリティテスト (SAST) はソースコードをスキャンし、パイプラインの早い段階で潜在的なセキュリティの脆弱性を検出するのに役立ちます。11.8 では JavaScript に対する SAST サポート を追加しました。これは既存の node.js サポートの上に構築されています。これにより、静的スクリプトや HTML などの任意の JavaScript ファイルをスキャンできるようになります。DevSecOps における最も重要なプラクティスは、コミットごとにコードの変更をスキャンすることです。この変更によって、最も人気のある Web 言語の 1 つをカバーし JavaScript のリスクをできるだけ早く発見できるようにします。

GitLab Pages のサブグループとテンプレート

今回のリリースでは GitLab Pages は 2 つの重要な改善点を含めて大幅に改善されました。まず、GitLab Pages によるサブグループ内のプロジェクトのサポート を導入し、これらのプロジェクトでコンテンツを簡単に Web に公開できるようにしました。GitLab 11.8 ではまた最も人気のある Pages 用テンプレート をバンドルしているので、ユーザはワンクリックで始めることができます。

Sentry によるエラートラッキング

アプリケーションエラーはアプリケーションの状態についての重要な情報を提供し、ユーザからの報告を待たずに問題を検知するのに役立ちます。GitLab 11.8 では、プロジェクト内で直接 最新のエラーを表示 できるようになりました。これにより、エラーを簡単に見つけて対処することができます。

その他の多くの素晴らしい機能!

今回のリリースには非常に多くの素晴らしい機能があるので、もう少しピックアップしたいと思います:

  • マージリクエストの承認ルール: 特定のユーザ、グループ、またはロールにかかわらず、誰が変更を承認する必要があるかについてのルールを簡単に定義できます。 GitLab.com ではまもなく利用可能になり、GitLab インスタンスの管理者は自分自身で有効にできるようになります。

  • 環境ごとのフィーチャーフラグ: 以前は全ての環境共通でフィーチャーフラグがオンまたはオフになっていましたが、これは望ましくありません!環境ごとにフィーチャーフラグを選択的に有効にできるようになりました。GitLab.com では今日から使えるようになっていて、GitLab インスタンスの管理者は自分自身で有効にできます。

  • 改善された Squash コミットメッセージ: 素晴らしいコミットメッセージを作り上げることを楽しんでいる人にとって、物事をきちんと保つためにそれらが Squash されたコミットで失われるのを見るのは悲しいことです。11.8では Squash されたコミットは自動的に最初の複数行コミットメッセージを利用するようになりました。また、さらにそれらのコミットメッセージを改善するために上書きすることもできます。

GitLab MVP badge

今月のMVPには Aaron Walker さんが選ばれました

コントリビュータの walkafwalka さん (GitLab アカウント) は、今回のリリースで カスタムドメインのサポート、そして 秘密情報変数が変更された場合の再デプロイ という 2 つの新しい Auto DevOps 機能を追加しました。素晴らしい改善をありがとう!

GitLab 11.8での主要機能

JavaScript の SAST 対応

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

静的コード解析機能 (SAST) を使用すると、リポジトリに新しい変更をコミットするたびにソースコードの脆弱性を発見できます。 この機能がマージリクエストで利用可能になると、stable ブランチにマージされる前であってもシフトレフトでセキュリティ問題に対処することができます。

11.8 では SAST のサポート対象のプログラミング言語に JavaScript が追加されました。 パイプラインで何かを変更する必要はありません。 JavaScript プロジェクトを自動的に検出して、セキュリティの脆弱性を分析します。 また、それは Auto DevOps の一部でもあります。

JavaScript の SAST 対応

Sentryでエラートラッキング

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

アプリケーションが生成するエラーに注意しておくことで、ユーザが問題点に気づいて報告して来る前にそれに気づけ、良いユーザ体験を提供し続けられます。また、もし問題が起こったらより早期に解決できます。

GitLab11.8では、有名なオープンソースのエラートラッキングツールである、Sentryを組み込むことでより便利かつ効果的にエラーをモニターできるようになります。また、GitLabプロジェクトの最新のエラーを表示してくれます。

Sentryは最近、不審なコミットやリリースを検知したり、コミットを追跡するなど、GitLabとの連携を深めています。 GitLab/Sentry両者の組み合わせにより、GitLabからSentryへの連携が簡単になり、SentryからGitLabも連携しやすくなります。そのため、既存のワークフローを崩すことなく、いつもエラーの状況を確認することができるのです。

Sentryでエラートラッキング

テンプレート利用により、ワンクリックでPagesを利用可能に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

今回、最もポピュラーなPagesのテンプレートをGitLabに搭載しました。以前のようにサンプルテンプレートをforkすることなく、新規にプロジェクトを立ち上げた画面からPagesのサイトを作ることができます。 より詳細な情報はPagesのテンプレートについてのブログをご覧ください。

テンプレート利用により、ワンクリックでPagesを利用可能に

サブグループでPagesが利用可能に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

PagesがGitLabのサブグループでも使えるようにアップデートされ、サブグループでのPages作成ができるようになりました。 この方法で設定されたサイトはtoplevel-group.gitlab.io/subgroup/projectの形式のURLを付与されます。 プロジェクトで(サブグループ一部でも)ソフトウェアリリースの一環としてドキュメントや他のサイトを作成することができるようになります。

サブグループでPagesが利用可能に

マージリクエストに関する承認ルール

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

コードレビューは全ての成功したプロジェクトでの基本的なやり方ですが、誰が変更をレビューすべきかは必ずしも明確ではありません。 エンジニアリング, UX, 製品など様々なチームからのレビュー担当者がいることが望ましいことがよくあります。

GitLab 11.8 での新しい承認ルールでは、承認者とそれぞれの最小承認数を設定することで、コードレビューに参加すべきユーザーをより適切に伝えることができます。 承認ルールはマージリクエストのウィジェットに表示されるので、次のレビュー担当者をすばやくアサインすることができます。

GitLab 11.3 では、プロジェクトのどのコードに対してどのチームメンバーが責任を持つのかを示すために Code Owners を導入しました。 コードの所有者は承認ルールに統合されているため、変更をレビューするのに適した人を常に簡単に見つけることができます。

承認ルールは 11.8 ではデフォルトで無効になっているため、管理者が Rails コンソールで Feature.enable(:approval_rules) を実行して有効にする必要があります。

GitLab.com では承認ルールが一時的に無効になっています。 GitLab 11.8.1 を適用した後で再び有効になる予定です。 本アップデートについては この課題 を参照してください。

マージリクエストに関する承認ルール

プロジェクト間パイプライントリガーの機能改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

複数プロジェクトパイプラインGitLab 9.3 から提供されており、ジョブ内で GitLab API を介してダウンストリームパイプラインをトリガすることで作成できます。 11.8 では更に「trigger:」キーワードを使用して、これらのダウンストリームパイプラインをトリガするためのファーストクラスサポートが追加されました。このキーワードは現在のパイプラインが成功したときにダウンストリームパイプラインを自動的にトリガするブリッジジョブに追加できます。

プロジェクト間パイプライントリガーの機能改善

Squash コミットメッセージを改良

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

後々の人のために信頼でき、有用なGitの履歴を残しておくことは、フィードバックをクローズしたり、単体テストを修正するために軽微なコミットをすることと相容れないことがあるかもしれません。 コミットを Squash すると今までのコミットを1つにまとめることができますが、同時に、あなたが考え抜いたコミットメッセージを消してしまいます。 GitLabでは、 Squash コミットのメッセージをデフォルトでフィーチャーブランチの最初の複数行メッセージに設定し、コミットメッセージを上書きして更新し、重要な変更を反映できるようにしました。

Squash コミットメッセージを改良

AutoDevOpsが環境固有のカスタムドメインをサポート

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

プロジェクトに”ベースドメイン”を付与して簡単にAuto DevOpsを使い始めることができます。 アプリケーションを製品としてデプロイする準備ができたら、独自ドメインやFQDNを使いたくなるかもしれません。 今後はアプリケーションで使う1つ、それ以上の独自ドメインを設定するために ADDITIONAL_HOSTS という環境変数を使えるようになります。 さらに、環境名を変数の前に付けることで、特定の環境について表現することができます。 例: <ENVIRONMENT>_ADDITIONAL_HOSTS

Aaron Walker さんの貢献に感謝します!

AutoDevOpsが環境固有のカスタムドメインをサポート

Knative ファンクションを実行中の Pod の数を表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab Serverlessを使用してファンクションをデプロイすると Knative の良さをすべて享受できます。サーバーレスのデプロイをスケールアップしたりゼロにスケールダウンすることが可能です。

このリリースから、 Knative インスタンスにデプロイされた各アプリケーションまたはファンクションに対するサーバーレスデプロイメントが、どれくらいスケールされているかを確認できます。 スケールは現在使用中の Kubernetes Pod の数で表示されます。

Knative ファンクションを実行中の Pod の数を表示

GitLab 11.8でのその他改善点

週の始まりの日を指定可能に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

従来のGitLab内部のカレンダーは日曜始まりでした。 これからは、ユーザーがProfileのPreferencesで月曜始まりに変えることができるようになります。 この変更は、 date pickerとcontribution graphを通じアプリケーション全体に反映されます。

Fabian Schneiderさんの貢献に感謝します!

週の始まりの日を指定可能に

LDAP を使用したスマートカードによる認証

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

スマートカードを認証トークンとして使用している組織は ID 管理を一元管理するために LDAP を頻繁に使用しています。 11.8 では、11.6 で追加された スマートカード認証を、構成済みの LDAP サーバに対して利用できるようしました。

GitLab では RFC 4523 スキーマ標準に従って certificateExactMatch ルールを用います。

Kubernetes 連携による Kubernetes Runner アプリケーションのアップグレード

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Kubernetes でデプロイされたアプリを最新バージョンで実行し続けることで、最新のセキュリティだけでなく最新の機能も保障されます。

GitLab 11.8 では Kubernetes で実行中の GitLab ランナーをワンクリックでアップグレードできます。 今後のリリースでは、他のアプリケーションについても同様の機能が追加される予定です.

Kubernetes 連携による Kubernetes Runner アプリケーションのアップグレード

GitLab でのユーザの最後のアクティビティの記録に閲覧が含まれるようになりました

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab には last_activity_on というユーザ属性があり、ユーザの最後のアクティビティがいつ行われたのかを管理者が理解しやすいようになっています。これはアクティブユーザと非アクティブユーザを見分けるのに非常に役立ちます。

読み取りのみのアクティビティも把握できるように、ダッシュボード、プロジェクト、課題、およびマージリクエストに関連するページを表示した時に、 last_activity_on を更新するようにしました。

API によるプロジェクト内のリポジトリタグの検索

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Tags API を使用してプロジェクト内のリポジトリタグを検索できるようになりました。これにより、プロジェクト内の特定のタグを見つけるのがより簡単になります。例えば、特定のバージョンタグに一致する関連プロジェクトを探している場合には一致するプロジェクトを簡単に見つけることができます。

Robert Schilling さん、貢献してくれてありがとうございます!

余白を削減してグループ概要を改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab 11.8 では、グループ概要のデザインを修正し情報量を改善しました。このページの余白を減らし、プロジェクト概要の再設計 に合わせてユーザエクスペリエンスを向上させました。

これはグループ概要の より大きな改善 のイテレーションの最初の一歩であり、私たちはこのページを改善し続けることを計画しています。

余白を削減してグループ概要を改善
CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

関連する課題に視覚的な一貫性を持たせ、見た目を向上させるために、課題に関連するマージリクエストのセクションを改善しました。

将来的には、関連するマージリクエスト情報をより迅速かつ状況に応じて表示できるように、デザインの各行にさらに 多くのメタデータを追加 する予定です。

関連するマージリクエストを再設計し、関連する課題との整合性を確保

API を用いたグループラベル管理

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

プロジェクトラベルと同様に API でグループラベルを管理できるようになり、さらにチームのカスタマイズされた計画や実行ワークフローをサポートすることができます。

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

GitLab Pages の定義済み CI 変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

CI_PAGESCI_PAGES_URL が Pages パイプラインの CI 変数として追加され、Pages ドメイン名と URL を表示できるようになりました。これにより、複数ロケーションにホストされている Pages サイトを操作する際の柔軟性が向上します。

Gitaly の TLS 対応

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Gitaly が TLS をサポートするようになりました。これは、GitLab と Gitaly 間のすべての通信が TLS が有効になっているときに暗号化されることを意味します。以前は、GitLab と Gitaly 間の通信は暗号化されておらず、ネットワークのセキュリティ設定に依存していました。

マージリクエスト diff からファイルに移動

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

大規模なマージリクエストのレビューは困難です。特に、あるファイルから別のファイルに移動するのは難しい場合があります。新しく追加されたファイルの曖昧検索では、あるファイルから別のファイルへの移動を簡単になり、キーボード (ショートカット) を使って差分をすばやく見つけることができます。

マージリクエスト diff からファイルに移動

手動で設定した Prometheus インスタンスからアラートを受け取る

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab 11.3 で アラート設定サポートが導入 されましたが、これは GitLab の Kubernetes インテグレーション によってデプロイされた Prometheus インスタンスに限定されていました。

GitLab 11.8 では、手動で設定された Prometheus サーバは Alertmanager の Webhook レシーバとして GitLab を追加するだけで GitLab にアラートを通知することもできます。 GitLab は Prometheus からのアラートを受け取るとプロジェクトのメンテナとオーナーにメールを送ります。

手動で設定した Prometheus インスタンスからアラートを受け取る

セキュリティの脆弱性に関する機密の課題

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

ユーザはマージリクエスト、パイプラインビュー、およびセキュリティダッシュボード上のセキュリティレポートから、セキュリティの脆弱性に対処するための新しい課題を作成できます。この情報には、修正が完了して利用可能になりリリースされるまでに開示されるべきではない機密詳細を開示する可能性がある機密データが含まれています。

GitLab 11.8 以降は、脆弱性から作成された課題はデフォルトで 機密 としてマークされており、ユーザは情報を開示したいときにフラグをオフに変更することができます。

サーバレス機能一覧ビューでのクラスタ環境の表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

サーバーレスのページが改善され、デプロイ先のクラスタ環境に基づいて Knative にデプロイされた機能がグルーピングされるようになりました。

さらに、機能のエンドポイントをコピーするためのショートカットボタンとともに機能の説明が表示され、別のタブでエンドポイントを開くことができます。

GitLab Runner 11.8

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

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

最も興味深い変更点:

すべての変更点の一覧は GitLab Runner のCHANGELOG にあります。

パフォーマンスを改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

私たちはリリースごとに、あらゆるサイズの GitLab インスタンスに対する GitLab のパフォーマンスを改善し続けています。

GitLab 11.8 では タスクのチェックまたはチェック解除後にマークダウン全体を再レンダリングしない ことで、課題、マージリクエストおよびエピックのタスクリストをチェックするパフォーマンスを大幅に向上しました。

ロードマップを前後にスクロール可能に

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

最初にロードマップを表示した際、GitLab標準の時間軸で表示されます。選択肢は週次、月次、四半期ごとの区切りとなります。 しかしビューは固定され、表示されている以外のエピックは見えない状態でした。 今回のリリースで、過去、未来のロードマップも前後にスクロールして表示できるようになります。 長期間に配置されたエピックがページをリロードすることなく自動的にビューに表示され、必要としている以上に長いタイムラインでもシームレスに表示できるようになりました。

ロードマップを前後にスクロール可能に

環境用のフィーチャーフラグ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

環境毎にフィーチャーフラグのオンとオフを個別に切り替えることができるようになりました。フィーチャーフラグの動作を制御するには、環境名の一致に基づいて一連のルールを作成します。 デフォルトのワイルドカード・ルール (*) は常に存在しますが、環境仕様を追加することでルールを追加することもできます (例えば review / * など)。

この機能を有効にするために 11.8.0 では Rails コンソールにて Feature.enable(:feature_flags_environment_scope) を実行する必要があります。

環境用のフィーチャーフラグ

管理パネルでのユーザアクティビティと作成日の表示について

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab 管理者にとって GitLab ユーザのアクティビティレベルを把握することは容易ですが、さらに管理パネルの /admin/users のユーザ領域にユーザ作成日とユーザの最後の活動の日の情報を追加しました。

GitLab がアクティビティを考慮するアクションの種類については こちら をご覧ください。

管理パネルでのユーザアクティビティと作成日の表示について

プロジェクトタグ は プロジェクトトピック になりました

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

プロジェクトタグは関連するプロジェクトをまとめるのに便利な方法ですが、「タグ」という用語は Git のタグと衝突していました。 この問題を解決するためにプロジェクトタグの名称をプロジェクトトピックに変更し、プロジェクトの概要ページでの 表示を改善 しました。

私たちはプロジェクトを見つけやすくためにトピックをより有用にすることを計画していて、GitLab 11.9 のプロジェクトダッシュボードでは トピックのフィルタリングを追加 する予定です。

プロジェクト概要における情報量の改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

プロジェクト概要の再設計 に関するユーザーからのフィードバックに応えて、列の追加と余白を減らすことによりこのページの情報量を改善しました。

プロジェクト概要における情報量の改善

エピック API の子エピック対応

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

前回のリリースでは、エピックをエピックに添付する 子エピック 機能の提供を開始しました。 今回のリリースではさらに、API 経由でもこれらのエピックの関連性を管理できるようになります。 これにより、特に自動化を通じてチーム内でカスタマイズされたワークフローを管理できるようになりました。

Auto DevOps ドメインを CI/CD 設定からクラスタ設定に移動

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Auto DevOps ベースドメインを指定すると、Auto-Review Apps や Auto-Deploy などの強力な機能を利用できるようになります。 ベースドメインを直接クラスタ設定に移動することで、ベースドメインの指定がさらに簡単になりました。 これにより、クラスタの作成時にベースドメインを定義したり、クラスタごとに異なるドメインを定義したりすることが簡単になります。

Auto DevOps ドメインを CI/CD 設定からクラスタ設定に移動

GitLab Pages サイトで .html 拡張子が自動的に解決されるようになりました

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab Pages サイトの /sub-page.html というファイルにも /sub-page としてアクセスできるようになりました。これはあなたのサイトがユーザにどのように表示されるかについてより多くのオプションを提供します。

Kubernetes executor に toleration を追加

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Kubernetesは、ワークロードが実行されているところから基盤となるハードウェアを切り離すための素晴らしい機会を提供します。ただし、一部のタスクには特殊なハードウェアが必要です。他のタスクよりも多くのリソースを必要とする可能性があるジョブも含まれます。

これらの考慮事項を含めるために、Kubernetes は pod をスケジュールするときにノードに taint と toleration を導入することによりこれをサポートします。このような種類のワークフローをサポートするために GitLab Runner の Kubernetes executor に taint と toleration のネイティブサポートを追加しました。

Gitaly の Elasticsearch 対応

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Elasticsearch を使用している場合に、以前は Git と通信するためにファイルシステムとして NFS を用意しなければなりませんでした。このリリースでは、NFS の代わりに Gitaly を使用して Git のアクセスパフォーマンスを向上させることができます。

マージリクエスト一覧での承認数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マージリクエストで承認され、マージの準備ができているものは、マージリクエスト一覧から簡単に見つけられるようになりました。必要な承認数と承認済みの数が、マージリクエスト一覧に表示されます。

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

マージリクエスト一覧での承認数

Container Registry から未使用タグを API でクリーンアップする

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

多くの組織では、コミット毎にコンテナを構築して、ソースコード変更の検証と最終的なデプロイを容易にしています。 これは短期間で使用され、その後必要とされない多数のコンテナタグを生成する可能性があります。

GitLab 11.8 では、エンドユーザが API を使用してタグを単独もしくは一括して正規表現で削除することにより、コンテナレジストリをクリーンアップできるようになりました。

Auto DevOpsアプリの秘密情報が更新された場合に強制的に再デプロイ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

K8S_SECRET_ 変数構文を使用してAuto DevOpsアプリの秘密情報を設定すると、それに対応するKubernetesアプリの秘密情報が作成されます。

これらのアプリの秘密情報が更新されると、Auto DevOpsは更新された秘密情報でアプリケーションを再デプロイします。

Aaron Walkerさん、コントリビュートありがとうございました!

Cert-Manager と Auto DevOps URL との連携

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Cert-Manager は Auto DevOps アプリケーションに HTTPS サポートを追加する簡単な方法を提供します。このリリースでは、Let’s Encrypt でサポートされているデフォルトの 64 文字よりも長い URL のサポートが追加され、アプリケーションの柔軟性が向上しています。

Omnibus の改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD
  • GitLab の docker-distribution-pruner は Omnibus にバンドルされ、管理者は Docker Distribution ベースのレジストリ (GitLab Container Registry も含む) のストレージをクリーンアップすることができます。
  • GitLab 11.8 には Mattermost 5.7.1 が含まれます。Mattermost は Slack の OSS クローン で、最新リリースではユーザエクスペリエンスの向上がいくつか含まれています。このバージョンには セキュリティアップデート も含まれていますので、アップグレードをお勧めします。
  • node_exporter はホストへのアクセスを必要とするため、Omnibus の Docker イメージではデフォルトで動作しなくなりました。
  • 管理者に通知するアラートを追加: Unicorn 使用率の高さ, Sidekiq のジョブキュー, PostgreSQL のデッドロック, エラー率の高さなど
  • nginx は 1.12.2 に、registry は 2.7.1 に、そして gitlab-elasticsearch-indexer は 1.0.0 に更新されました。
  • prometheus は 2.6.1、node_exporter は 0.17.0、そして redis_exporter は 0.26.0 に更新されました。

GitLab chart を改善

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

非推奨

Ruby 2.5 が必要になります

GitLab 11.6 以降、GitLab を実行するには Ruby 2.5 が必要です。 すでに Omnibus パッケージの GitLabGitLab chart では Ruby 2.5.3 を同梱していますが、ソースインストールしているユーザで Ruby 2.4 を使っている場合は Ruby をバージョンアップする必要があります。

削除日: 2019年12月22日

Raspbian Jessie サポート

Raspbian Jessie サポートは GitLab 11.8 が最後になります。

Jessie は LTS に移行 し、最新の Raspbian Jessie イメージ は配布からすでに 1 年以上経っています。 私たちは Raspbian Stretch にアップグレードすることをお勧めします。

削除日: 2019年2月22日

GitLab 11.7 以降では Google OAuth2 SSO のみサポートします

Google は 2019 年 3 月 7 日に Google+ API に関する全てのサービスを終了しています。この発表に関する情報については Google の サイト を参照してください。

Gitlab のバージョンが 11.7 以前の場合は Google OAuth2 用の API に依存しているので、Google シングルサインオンは機能しなくなります。GitLab 11.7 以降は Google SSO をサポート します。

GitLab インスタンスが認証として Google OAuth2 を使っている場合は、11.7 にアップグレードすることをお勧めします。

削除日: 2019年3月7日

GitLab 11.9 では開発者は Git タグを削除できます

今までは、non-protected ブランチの Git タグのリリースノートを削除または修正できる権限を メンテナとオーナー に制限していました。

開発者はタグの追加や non-protected ブランチの変更と削除ができるので、Git タグも削除できるべきです。 GitLab 11.9 では、ワークフローを改善し、開発者がより良く効果的にタグを使用できるようにするために、権限モデルに この変更を加えています

この権限をメンテナとオーナーのみに制限し続けたい場合は、protected タグ を使用できます。

削除日: 2019年3月22日

Hipchat 統合機能について

Hipchat は提供終了します そのため 11.9 のリリースでは GitLab の既存の Hipchat 統合機能を削除 しています。

削除日: 2019年3月22日

Docker executor を使用した GitLab Runner での Cent OS 6 サポートについて

GitLab 11.9 では Docker executor を使用している場合の CentOS 6 での GitLab Runner サポートを削除予定です。これは、CentOS 6 をサポートしていない最新の Docker ライブラリに追従するためです。詳細については この課題 を確認してください。

削除日: 2019年3月22日

管理パネルのシステム情報セクションを削除

GitLab では、使用している GitLab インスタンスに関する情報を admin/system_info で確認できますが、この情報が不正確な可能性があります。

11.10 では管理パネルの このセクションを削除 しますので、その他のモニタリング機能 を利用してください。

削除日: 2019年4月22日

検証されていない GitLab.com Pages ドメインは 1 週間後に削除されます

GitLab.com のパフォーマンスを向上させるために、検証できないドメインは 1 週間後に削除されます (削除の 1 週間のカウントダウンが開始される前の 4 日間検証を試行します)。GitLab でドメインを保持していて検証が完了していない場合は、ドメインが確実に登録されていることを確認するためにその手順を完了する必要があります。問題が発生しないようにするには、ドメインの検証方法に関する説明 をご覧ください。GitLab.com Pages ドメインが 404 エラーにならない場合は、すでに検証済みです。

削除プランの詳細については gitlab-ce#44696 を参照してください。

削除日: 2019年4月22日

Omnibus GitLab での Prometheus 1.x サポートについて

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

GitLab [12.0](https://gitlab.com/groups/gitlab-org/-/milestones/33)では、まだ Prometheus 2.0 を実行していない場合は自動的にアップグレードされます。その際、Prometheus 1.0 からのメトリックデータは移行されず、失われます。

削除日: 2019年6月22日

GitLab 12.0 で TLS v1.1 はデフォルトで無効になります

GitLab 12.0 以降、セキュリティを向上させるために TLS v1.1 はデフォルトで無効になります。これにより Heartbleed を含む多くの問題が緩和され、GitLab は PCI DSS 3.1 標準にすぐに対応できるようになります。

TLS v1.1 を直ちに無効にするには、gitlab.rb ファイルに nginx['ssl_protocols'] = "TLSv1.2" を設定してから gitlab-ctl reconfigure を実行してください。

削除日: 2019年6月22日

OpenShift テンプレートを用いた GitLab インストール

公式の gitlab Heml chart は、OpenShift へのデプロイ も含めて、Kubernetes 上で GitLab を操作するための推奨される方法です。

GitLab をインストールするための OpenShift テンプレート は推奨されておらず、GitLab 12.0 では未サポートになります。

削除日: 2019年6月22日

GitLab Geo で Hashed Storage を適用 (GitLab 12.0)

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

この要件は 11.5 で Geo のドキュメントに追加されました: gitlab-ee#8053.

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

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

12.0 では Geo で Hashed Storage 要件を適用する予定です: gitlab-ee#8690.

削除日: 2019年6月22日

変更履歴

すべての名称付きの変更を確認したい場合は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 です。

日本語でのサポートが必要な場合は 国内正規販売代理店 へお問い合せください。

無料で30日間、 GitLab Ultimate を試用できます。