The following documentation is meant to provide instructions for running GitLab QA against a deployed cloud native GitLab installation. These steps are performed as a part of the CI for this project but manual runs may be requested during development or a demo.
Before running GitLab QA, there are a few things to do.
From your deployed GitLab chart, visit
/admin and see the Components panel
for the version of GitLab that is running. If this is is
X.Y.Z-pre, then you
will want the
nightly image. If this is
X.Y.Z-ee, then you will want this
version of GitLab QA image.
GITLAB_VERSION based on what you have observed:
Ensure you have a functional version of Ruby, preferably of the
gem install gitlab-qa
For more info, see the GitLab QA documentation.
GitLab QA makes use of Docker, so you will need to have an operational
installation. Ensure that the daemon is running. If you have set
pull the GitLab QA nightly image to ensure that the latest nightly is used for
testing, in conjunction with the nightly builds of the CNG containers:
docker pull gitlab/gitlab-ee-qa:$GITLAB_VERSION
To run GitLab QA, you will need sustained network access to the deployed instance. Ensure this by visiting the deployment from any browser, or via cURL.
Items needed for execution, which will be set as environment variables:
GITLAB_VERSION: The version of GitLab QA version to run. See determine running version of GitLab above.
GITLAB_USERNAME: This will be
GITLAB_PASSWORD: This will be the password for the
GITLAB_ADMIN_USERNAME: This will be
GITLAB_ADMIN_PASSWORD: This will be the password for the
GITLAB_URL: The fully-qualified URL to the deployed instance. This should be in the form of
EE_LICENSE: A string containing a GitLab EE license. This can be handled via
export EE_LICENSE=$(cat GitLab.gitlab-license).
GITHUB_ACCESS_TOKEN: A string containing a valid GitHub Personal Access Token. This will be used to test the GitHub importer. For GitLab team members, you can find the access token for the
GitLab QAuser in 1password.
Retrieve the above items, and export them as environment variables.
Assuming you have set the environment variables from the Configuration step, the following command will perform the tests against the deployed GitLab instance:
gitlab-qa Test::Instance::Any EE:$GITLAB_VERSION $GITLAB_URL