gitlab-qa 5.13.1 → 5.13.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/docs/what_tests_can_be_run.md +50 -54
- data/lib/gitlab/qa/component/gitlab.rb +11 -0
- data/lib/gitlab/qa/release.rb +5 -0
- data/lib/gitlab/qa/scenario/test/instance/any.rb +1 -1
- data/lib/gitlab/qa/scenario/test/instance/geo.rb +1 -1
- data/lib/gitlab/qa/scenario/test/instance/smoke.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/elasticsearch.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/geo.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/saml.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/smtp.rb +1 -1
- data/lib/gitlab/qa/scenario/test/omnibus/update.rb +2 -2
- data/lib/gitlab/qa/scenario/test/omnibus/upgrade.rb +1 -1
- data/lib/gitlab/qa/scenario/test/sanity/version.rb +1 -1
- data/lib/gitlab/qa/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 742350ecaafcf21ca9ff0fc50547cbb6cd28b2cf7a3fc090f5cb6ab542da3154
|
4
|
+
data.tar.gz: e65a23e2620961c5751eca131cf0dfa4b639f2915488b888975e6a0313c8baee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e42ac20b6a9dd4881c50d5018956241543395dae6c2aac148c1db87e77daa0ac677950a876ffa730e9d8f991c3850640775213ca6a0c8ebefa4a45dd2ab811c2
|
7
|
+
data.tar.gz: b7f993786ae4ac8fdc7b15d4d936cad11066e2f92731b30f696e8615a9454657f40d67e3cccb9074b6464755ab2d37a2e74569e92b66476328ee8215ea4543e3
|
@@ -28,60 +28,56 @@ For more details on the internals, please read the
|
|
28
28
|
|
29
29
|
## Supported GitLab environment variables
|
30
30
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
[`Test::Instance::Staging`](#testinstancestaging) scenario to retrieve the
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
* `GEO_MAX_FILE_REPLICATION_TIME` - maximum time that a test will wait for a replicated file to appear on a Geo secondary node (default 120 seconds)
|
82
|
-
* `GEO_MAX_DB_REPLICATION_TIME` - maximum time that a test will wait for database data to appear on a Geo secondary node (default 120 seconds)
|
83
|
-
* `JIRA_ADMIN_USERNAME` - Username for authenticating with Jira server as admin.
|
84
|
-
* `JIRA_ADMIN_PASSWORD` - Password for authenticating with Jira server as admin.
|
31
|
+
| Variable | Default | Description | Required |
|
32
|
+
|-----------------------|-----------|-----------------------|----------|
|
33
|
+
| `GITLAB_USERNAME` | `root` | Username to use when signing into GitLab. | Yes|
|
34
|
+
| `GITLAB_PASSWORD` | `5iveL!fe` | Password to use when signing into GitLab. | Yes|
|
35
|
+
| `GITLAB_FORKER_USERNAME`|- | Username to use for forking a project. | Yes|
|
36
|
+
| `GITLAB_FORKER_PASSWORD`|- | Password to use for forking a project. | Yes|
|
37
|
+
| `GITLAB_QA_USERNAME_1` |- | Username available in environments where signup is disabled. | No|
|
38
|
+
| `GITLAB_QA_PASSWORD_1` |- | Password for `GITLAB_QA_USERNAME_1` available in environments where signup is disabled (e.g. staging.gitlab.com). | No|
|
39
|
+
| `GITLAB_QA_USERNAME_2` |- | Another username available in environments where signup is disabled. | No|
|
40
|
+
| `GITLAB_QA_PASSWORD_2` |- | Password for `GITLAB_QA_USERNAME_2` available in environments where signup is disabled (e.g. staging.gitlab.com). | No|
|
41
|
+
| `GITLAB_QA_USERNAME_3` |- | Another username available in environments where signup is disabled. | No|
|
42
|
+
| `GITLAB_QA_PASSWORD_3` |- | Password for `GITLAB_QA_USERNAME_3` available in environments where signup is disabled (e.g. staging.gitlab.com). | No|
|
43
|
+
| `GITLAB_QA_USERNAME_4` |- | Another username available in environments where signup is disabled. | No|
|
44
|
+
| `GITLAB_QA_PASSWORD_4` |- | Password for `GITLAB_QA_USERNAME_4` available in environments where signup is disabled (e.g. staging.gitlab.com). | No|
|
45
|
+
| `GITLAB_QA_USERNAME_5` |- | Another username available in environments where signup is disabled. | No|
|
46
|
+
| `GITLAB_QA_PASSWORD_5` |- | Password for `GITLAB_QA_USERNAME_5` available in environments where signup is disabled (e.g. staging.gitlab.com). | No|
|
47
|
+
| `GITLAB_QA_USERNAME_6` |- | Another username available in environments where signup is disabled. | No|
|
48
|
+
| `GITLAB_QA_PASSWORD_6` |- | Password for `GITLAB_QA_USERNAME_6` available in environments where signup is disabled (e.g. staging.gitlab.com). | No|
|
49
|
+
| `GITLAB_LDAP_USERNAME` |- | LDAP username to use when signing into GitLab. | No|
|
50
|
+
| `GITLAB_LDAP_PASSWORD` |- | LDAP password to use when signing into GitLab. | No|
|
51
|
+
| `GITLAB_ADMIN_USERNAME` |- | Admin username to use when adding a license. | No|
|
52
|
+
| `GITLAB_ADMIN_PASSWORD` |- | Admin password to use when adding a license. | No|
|
53
|
+
| `GITLAB_SANDBOX_NAME` | `gitlab-qa-sandbox` | The sandbox group name the test suite is going to use. | No|
|
54
|
+
| `GITLAB_QA_ACCESS_TOKEN`|- | A valid personal access token with the `api` scope. This is used for API access during tests, and is used in the version that staging is currently running. An existing token that is valid on [`Test::Instance::Staging`](#testinstancestaging) scenario to retrieve the staging can be found in the shared 1Password vault. |No|
|
55
|
+
| `GITLAB_QA_ADMIN_ACCESS_TOKEN` |- | A valid personal access token with the `api` scope from a user with admin access. Used for API access as an admin during tests. | No|
|
56
|
+
| `EE_LICESEN` |- | Enterprise Edition license. | No|
|
57
|
+
| `QA_ARTIFACTS_DIR` |`/tmp/gitlab-qa`| Path to a directory where artifacts (logs and screenshots) for failing tests will be saved. | No|
|
58
|
+
| `DOCKER_HOST` |`http://localhost`| Docker host to run tests against. | No|
|
59
|
+
| `CHROME_HEADLESS` |- | When running locally, set to `false` to allow Chrome tests to be visible - watch your tests being run. | No|
|
60
|
+
| `QA_ADDITIONAL_REPOSITORY_STORAGE` |- | The name of additional, non-default storage to be used with tests tagged `repository_storage`, run via the `Test::Instance::RepositoryStorage` scenario. | No|
|
61
|
+
| `QA_PRAEFECT_REPOSITORY_STORAGE` |- | The name of repository storage using Praefect. | No|
|
62
|
+
| `QA_COOKIES` |- | Optionally set to "cookie1=value;cookie2=value" in order to add a cookie to every request. This can be used to set the canary cookie by setting it to "gitlab_canary=true". | No|
|
63
|
+
| `QA_DEBUG` |- | Set to `true` to verbosely log page object actions. Note: if enabled be aware that sensitive data might be logged. If an input element has a QA selector with `password` in the name, data entered into the input element will be masked. If the element doesn't have `password` in its name it won't be masked. | No|
|
64
|
+
| `QA_LOG_PATH` |- | Path to output debug logging to. If not set logging will be output to STDOUT. | No|
|
65
|
+
| `QA_CAN_TEST_GIT_PROTOCOL_V2` |- | Set to `false` to skip tests that require Git protocol v2 if your environment doesn't support it. | No|
|
66
|
+
| `QA_CAN_TEST_ADMIN_FEATURES` |- | Set to `false` to skip tests that require admin access. | No|
|
67
|
+
| `QA_CAN_TEST_PRAEFECT` |- | Set to `false` to skip tests that require Praefect to be running. | No|
|
68
|
+
| `QA_DISABLE_RSPEC_RETRY` |- | Set to `true` to turn off retrying tests on failure. | No|
|
69
|
+
| `QA_SIMULATE_SLOW_CONNECTION` |- | Set to `true` to configure Chrome's network settings to simulate a slow connection. | No|
|
70
|
+
| `QA_SLOW_CONNECTION_LATENCY_MS` | `2000` | The additional latency (in ms) of the simulated slow connection. | No|
|
71
|
+
| `QA_SLOW_CONNECTION_THROUGHPUT_KBPS` | `32` | The maximum throughput (in kbps) of the simulated slow connection. | No|
|
72
|
+
| `QA_SKIP_PULL` |- | Set to `true` to skip pulling docker images (e.g., to use one you built locally). | No|
|
73
|
+
| `GITHUB_USERNAME` |- | Username for authenticating with GitHub. | No|
|
74
|
+
| `GITHUB_PASSWORD` |- | Password for authenticating with GitHub. | No|
|
75
|
+
| `GITLAB_QA_LOOP_RUNNER_MINUTES` | `1` | Minutes to run and repeat a spec while using the '--loop' option; default value is 1 minute. | No|
|
76
|
+
| `CI_SERVER_PERSONAL_ACCESS_TOKEN` |- | Personal access token of the server that is running the CI pipeline. This is used for pulling CI_RUNNER information in certain tests. | No|
|
77
|
+
| `GEO_MAX_FILE_REPLICATION_TIME` | `120` | Maximum time that a test will wait for a replicated file to appear on a Geo secondary node. | No|
|
78
|
+
| `GEO_MAX_DB_REPLICATION_TIME` | `120` | Maximum time that a test will wait for database data to appear on a Geo secondary node. | No|
|
79
|
+
| `JIRA_ADMIN_USERNAME` |- | Username for authenticating with Jira server as admin. | No|
|
80
|
+
| `JIRA_ADMIN_PASSWORD` |- | Password for authenticating with Jira server as admin. | No|
|
85
81
|
|
86
82
|
## [Supported Remote Grid environment variables](./running_against_remote_grid.md)
|
87
83
|
|
@@ -137,6 +137,17 @@ module Gitlab
|
|
137
137
|
QA::Release::DEV_REGISTRY
|
138
138
|
]
|
139
139
|
)
|
140
|
+
elsif release.omnibus_mirror?
|
141
|
+
bot_token = ENV['GITLAB_BOT_MULTI_PROJECT_PIPELINE_POLLING_TOKEN']
|
142
|
+
|
143
|
+
Docker::Command.execute(
|
144
|
+
[
|
145
|
+
'login',
|
146
|
+
'--username gitlab-bot',
|
147
|
+
%(--password "#{bot_token}"),
|
148
|
+
QA::Release::COM_REGISTRY
|
149
|
+
]
|
150
|
+
)
|
140
151
|
end
|
141
152
|
|
142
153
|
docker.run(image, tag) do |command|
|
data/lib/gitlab/qa/release.rb
CHANGED
@@ -52,6 +52,7 @@ module Gitlab
|
|
52
52
|
DEFAULT_TAG = 'latest'.freeze
|
53
53
|
DEFAULT_CANONICAL_TAG = 'nightly'.freeze
|
54
54
|
DEV_REGISTRY = 'dev.gitlab.org:5005'.freeze
|
55
|
+
COM_REGISTRY = 'registry.gitlab.com'.freeze
|
55
56
|
|
56
57
|
InvalidImageNameError = Class.new(RuntimeError)
|
57
58
|
|
@@ -138,6 +139,10 @@ module Gitlab
|
|
138
139
|
image.start_with?(DEV_REGISTRY)
|
139
140
|
end
|
140
141
|
|
142
|
+
def omnibus_mirror?
|
143
|
+
image.start_with?("#{COM_REGISTRY}/gitlab-org/build/omnibus-gitlab-mirror/")
|
144
|
+
end
|
145
|
+
|
141
146
|
def valid?
|
142
147
|
canonical? || release.match?(CUSTOM_GITLAB_IMAGE_REGEX)
|
143
148
|
end
|
@@ -11,7 +11,7 @@ module Gitlab
|
|
11
11
|
def perform(edition_and_tag, address, *rspec_args)
|
12
12
|
Component::Specs.perform do |specs|
|
13
13
|
specs.suite = 'Test::Instance::All'
|
14
|
-
specs.release = Release.new(edition_and_tag)
|
14
|
+
specs.release = QA::Release.new(edition_and_tag)
|
15
15
|
specs.args = [address, *rspec_args]
|
16
16
|
end
|
17
17
|
end
|
@@ -13,7 +13,7 @@ module Gitlab
|
|
13
13
|
|
14
14
|
Component::Specs.perform do |specs|
|
15
15
|
specs.suite = 'QA::EE::Scenario::Test::Geo'
|
16
|
-
specs.release = Release.new(release)
|
16
|
+
specs.release = QA::Release.new(release)
|
17
17
|
specs.args = [
|
18
18
|
'--primary-address', primary_address,
|
19
19
|
'--secondary-address', secondary_address,
|
@@ -11,7 +11,7 @@ module Gitlab
|
|
11
11
|
def perform(edition_and_tag, address, *rspec_args)
|
12
12
|
Component::Specs.perform do |specs|
|
13
13
|
specs.suite = 'Test::Instance::Smoke'
|
14
|
-
specs.release = Release.new(edition_and_tag)
|
14
|
+
specs.release = QA::Release.new(edition_and_tag)
|
15
15
|
specs.args = [address, *rspec_args]
|
16
16
|
end
|
17
17
|
end
|
@@ -8,8 +8,8 @@ module Gitlab
|
|
8
8
|
module Omnibus
|
9
9
|
class Update < Scenario::Template
|
10
10
|
def perform(from_release, to_release = nil, *rspec_args)
|
11
|
-
previous_release = Release.new(from_release).previous_stable
|
12
|
-
current_release = Release.new(to_release || from_release)
|
11
|
+
previous_release = QA::Release.new(from_release).previous_stable
|
12
|
+
current_release = QA::Release.new(to_release || from_release)
|
13
13
|
|
14
14
|
Docker::Volumes.new.with_temporary_volumes do |volumes|
|
15
15
|
Component::Gitlab.perform do |gitlab|
|
@@ -8,7 +8,7 @@ module Gitlab
|
|
8
8
|
module Omnibus
|
9
9
|
class Upgrade < Scenario::Template
|
10
10
|
def perform(image = 'CE', *rspec_args)
|
11
|
-
ce_release = Release.new(image)
|
11
|
+
ce_release = QA::Release.new(image)
|
12
12
|
|
13
13
|
if ce_release.ee?
|
14
14
|
raise ArgumentError, 'Only CE can be upgraded to EE!'
|
data/lib/gitlab/qa/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gitlab-qa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.13.
|
4
|
+
version: 5.13.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Grzegorz Bizon
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: climate_control
|