テスト用パッケージの構築

新しい機能を開発したり、既存の機能を変更したりする際に、それらの変更を含むインストール可能なパッケージ(またはDockerイメージ)がテスト用に利用できると便利です。この目的のために、GitLab CI/CDパイプラインには手動ジョブが用意されており、Omnibus GitLabリポジトリのパイプラインをトリガーして作成することができます:

  • Ubuntu16.04用のdebパッケージ(ビルドアーティファクトとして利用可能)と
  • OmnibusのGitLabコンテナレジストリにプッシュされるDockerイメージ(イメージのタイトルはそれぞれgitlab-cegitlab-ee 、イメージタグはパイプラインのトリガーとなったコミット)。

GitLab CEまたはGitLab EEプロジェクトにコミットをプッシュすると、そのコミットのパイプラインにはbuild-package 、手動アクションをトリガーすることができます。

Manual actions

Build package manual action

コンポーネントのバージョンの指定

GitLab コンポーネント(GitLab Workhorse、Gitaly、GitLab Pages など)の特定のブランチ、コミット、タグからパッケージを作成したい場合は、コンポーネントのそれぞれの*_VERSION ファイルでブランチ名、コミット SHA、タグを指定できます。例えば、0-1-stable ブランチを使用するパッケージをビルドしたい場合、GITALY_SERVER_VERSION の内容を0-1-stable に変更し、コミットをプッシュします。これで、ビルドのトリガーとなる手動ジョブが作成されます。

Omnibus GitLab リポジトリでのブランチの指定

設定変更を導入するシナリオで、Omnibus GitLabリポジトリが特定のブランチに必要な変更をすでに持っている場合、OMNIBUS_BRANCH というCI/CD変数を使ってそのブランチに対してパッケージをビルドすることができます。これを行うには、.gitlab-ci.yml にブランチ名を値としてその変数を指定し、コミットをプッシュします。これにより、ビルドのトリガーとなる手動ジョブが作成されます。