gitlab-qa 5.13.1 → 5.13.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|