テスト環境用アプリ

GitLabサポートチームによるテスト環境に関する情報集です。透明性を保つためにここに掲載していますが、これらのツールの使用経験があるユーザーには役に立つかもしれません。GitLabで現在イシューを抱えている場合は、この情報を利用する前に、まずサポートオプションを確認してください。

note
このページは当初サポートエンジニアのために書かれたもので、GitLab内部でしか利用できないリンクもあります。

Docker

以下はクラウド上で動作するDockerコンテナ上でテストされたものです。サポートエンジニアの方は、dev-resources でDockerコンテナを実行する方法についてのドキュメントを参照してください。その他のセットアップはテストされていませんが、貢献することは歓迎します。

GitLab

Docker上でGitLabを実行する方法については、公式のDockerインストール方法をご覧ください。

SAML

認証用SAML

以下の例では、<GITLAB_IP_OR_DOMAIN><SAML_IP_OR_DOMAIN> を置き換える場合、IP またはドメイン名の前に、使用するプロトコル (http:// またはhttps://) を付けることが重要です。

test-saml-idp Dockerイメージ を使用することができます:

docker run --name gitlab_saml -p 8080:8080 -p 8443:8443 \
-e SIMPLESAMLPHP_SP_ENTITY_ID=<GITLAB_IP_OR_DOMAIN> \
-e SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=<GITLAB_IP_OR_DOMAIN>/users/auth/saml/callback \
-d jamedjo/test-saml-idp

以下も/etc/gitlab/gitlab.rb に記述する必要があります。デフォルトのユーザ名、パスワード、電子メールのリストと同様に、詳細についてはSAMLのドキュメントを参照してください。

gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['saml']
gitlab_rails['omniauth_sync_email_from_provider'] = 'saml'
gitlab_rails['omniauth_sync_profile_from_provider'] = ['saml']
gitlab_rails['omniauth_sync_profile_attributes'] = ['email']
gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'saml'
gitlab_rails['omniauth_block_auto_created_users'] = false
gitlab_rails['omniauth_auto_link_ldap_user'] = false
gitlab_rails['omniauth_auto_link_saml_user'] = true
gitlab_rails['omniauth_providers'] = [
  {
    "name" => "saml",
    "label" => "SAML",
    "args" => {
      assertion_consumer_service_url: '<GITLAB_IP_OR_DOMAIN>/users/auth/saml/callback',
      idp_cert_fingerprint: '119b9e027959cdb7c662cfd075d9e2ef384e445f',
      idp_sso_target_url: '<SAML_IP_OR_DOMAIN>:8080/simplesaml/saml2/idp/SSOService.php',
      issuer: '<GITLAB_IP_OR_DOMAIN>',
      name_identifier_format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent'
    }
  }
]

GitLab.com の GroupSAML

GDK SAML ドキュメントを参照ください。

Elasticsearch

docker run -d --name elasticsearch \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
docker.elastic.co/elasticsearch/elasticsearch:5.5.1

その後、curl "http://<IP_ADDRESS>:9200/_cat/health" でブラウザで動作することを確認してください。Elasticsearch のデフォルトのユーザー名はelastic で、デフォルトのパスワードはchangeme です。

クロキ

DockerでKrokiを実行する方法については、Krokiのドキュメントを参照してください。

PlantUML

DockerでのPlantUMLの実行については、PlantUMLのドキュメントを参照してください。

Jira

docker run -d -p 8081:8080 cptactionhank/atlassian-jira:latest

次に、ブラウザで<IP_ADDRESS>:8081 にアクセスして設定します。これには Jira ライセンスが必要です。

Grafana

docker run -d --name grafana -e "GF_SECURITY_ADMIN_PASSWORD=gitlab" -p 3000:3000 grafana/grafana

<IP_ADDRESS>:3000 からアクセスしてください。