GitLabをマイクロサービスとして使う

多くのアプリケーションは JSON API にアクセスする必要があるので、アプリケーションのテストも API にアクセスする必要があるかもしれません。次の例では、GitLab をマイクロサービスとして使って GitLab API にアクセスする方法を示します。

  1. Docker や Kubernetes の Executor を使ってRunnerを設定します。
  2. .gitlab-ci.yml

    services:
      - name: gitlab/gitlab-ce:latest
        alias: gitlab
       
    variables:
      GITLAB_HTTPS: "false"             # ensure that plain http works
      GITLAB_ROOT_PASSWORD: "password"  # to access the api with user root:password
    
note
GitLab UI で設定した変数は、サービスコンテナには渡されません。詳細については、GitLab CI/CD変数を参照してください。

そして、.gitlab-ci.yml ファイルのscript セクションにあるコマンドは、http://gitlab/api/v4にある API にアクセスすることができます。

gitlabHost に使用される理由の詳細については、サービスがどのようにジョブにリンクされるかを参照してください。

Docker Hubで利用可能な他のDockerイメージを使用することもできます。

gitlab イメージは環境変数を受け入れることができます。詳細はOmnibusのドキュメントを参照してください。