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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 58696c4a44635e584d93036f01d1895be2d79fd931c5fe5a9979fb0d44cdf529
4
- data.tar.gz: fdf8aab89b127cce4c9cd3f48f36281df2eb3d722f61a18649f2267bc64ad1b0
3
+ metadata.gz: 742350ecaafcf21ca9ff0fc50547cbb6cd28b2cf7a3fc090f5cb6ab542da3154
4
+ data.tar.gz: e65a23e2620961c5751eca131cf0dfa4b639f2915488b888975e6a0313c8baee
5
5
  SHA512:
6
- metadata.gz: dd89a0fbf4ce4319bb1f9f9f6508bebb98ef30f84fc7cfd5522234f5250b038f52f9bf6af1eaeab2ac68dc707f4822e4ce969950bc598d31b347a7d19a13e08b
7
- data.tar.gz: '0793e2eb73bfb934147d85ab75ac2a7b5a7d69add1fa29bb7737ecf8e229a9d47935182e087b0f4e0a7e4a2bff7c29e0669207c9a3909da845f007c0cf0a5107'
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
- * `GITLAB_USERNAME` - username to use when signing into GitLab
32
- * `GITLAB_PASSWORD` - password to use when signing into GitLab
33
- * `GITLAB_FORKER_USERNAME` - username to use for forking a project
34
- * `GITLAB_FORKER_PASSWORD` - password to use for forking a project
35
- * `GITLAB_QA_USERNAME_1` - username available in environments where signup is disabled
36
- * `GITLAB_QA_PASSWORD_1` - password for `GITLAB_QA_USERNAME_1` available in environments where signup is disabled (e.g. staging.gitlab.com)
37
- * `GITLAB_QA_USERNAME_2` - another username available in environments where signup is disabled
38
- * `GITLAB_QA_PASSWORD_2` - password for `GITLAB_QA_USERNAME_2` available in environments where signup is disabled (e.g. staging.gitlab.com)
39
- * `GITLAB_QA_USERNAME_3` - another username available in environments where signup is disabled
40
- * `GITLAB_QA_PASSWORD_3` - password for `GITLAB_QA_USERNAME_3` available in environments where signup is disabled (e.g. staging.gitlab.com)
41
- * `GITLAB_QA_USERNAME_4` - another username available in environments where signup is disabled
42
- * `GITLAB_QA_PASSWORD_4` - password for `GITLAB_QA_USERNAME_4` available in environments where signup is disabled (e.g. staging.gitlab.com)
43
- * `GITLAB_QA_USERNAME_5` - another username available in environments where signup is disabled
44
- * `GITLAB_QA_PASSWORD_5` - password for `GITLAB_QA_USERNAME_5` available in environments where signup is disabled (e.g. staging.gitlab.com)
45
- * `GITLAB_QA_USERNAME_6` - another username available in environments where signup is disabled
46
- * `GITLAB_QA_PASSWORD_6` - password for `GITLAB_QA_USERNAME_6` available in environments where signup is disabled (e.g. staging.gitlab.com)
47
- * `GITLAB_LDAP_USERNAME` - LDAP username to use when signing into GitLab
48
- * `GITLAB_LDAP_PASSWORD` - LDAP password to use when signing into GitLab
49
- * `GITLAB_ADMIN_USERNAME` - Admin username to use when adding a license
50
- * `GITLAB_ADMIN_PASSWORD` - Admin password to use when adding a license
51
- * `GITLAB_SANDBOX_NAME` - The sandbox group name the test suite is going to use (default: `gitlab-qa-sandbox`)
52
- * `GITLAB_QA_ACCESS_TOKEN` - A valid personal access token with the `api` scope.
53
- This is used for API access during tests, and is used in the
54
- [`Test::Instance::Staging`](#testinstancestaging) scenario to retrieve the
55
- version that staging is currently running. An existing token that is valid on
56
- staging can be found in the shared 1Password vault.
57
- * `GITLAB_QA_ADMIN_ACCESS_TOKEN` - A valid personal access token with the `api` scope
58
- from a user with admin access. Used for API access as an admin during tests.
59
- * `EE_LICENSE` - Enterprise Edition license
60
- * `QA_ARTIFACTS_DIR` - Path to a directory where artifacts (logs and screenshots)
61
- for failing tests will be saved (default: `/tmp/gitlab-qa`)
62
- * `DOCKER_HOST` - Docker host to run tests against (default: `http://localhost`)
63
- * `CHROME_HEADLESS` - when running locally, set to `false` to allow Chrome tests to be visible - watch your tests being run
64
- * `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
65
- * `QA_PRAEFECT_REPOSITORY_STORAGE` - the name of repository storage using Praefect.
66
- * `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"
67
- * `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.
68
- * `QA_LOG_PATH` - path to output debug logging to. If not set logging will be output to STDOUT
69
- * `QA_CAN_TEST_GIT_PROTOCOL_V2` - set to `false` to skip tests that require Git protocol v2 if your environment doesn't support it.
70
- * `QA_CAN_TEST_ADMIN_FEATURES` - set to `false` to skip tests that require admin access.
71
- * `QA_CAN_TEST_PRAEFECT` - set to `false` to skip tests that require Praefect to be running.
72
- * `QA_DISABLE_RSPEC_RETRY` - set to `true` to turn off retrying tests on failure.
73
- * `QA_SIMULATE_SLOW_CONNECTION` - set to `true` to configure Chrome's network settings to simulate a slow connection.
74
- * `QA_SLOW_CONNECTION_LATENCY_MS` - the additional latency (in ms) of the simulated slow connection (default 2000 ms).
75
- * `QA_SLOW_CONNECTION_THROUGHPUT_KBPS` - the maximum throughput (in kbps) of the simulated slow connection (default 32 kbps).
76
- * `QA_SKIP_PULL` - set to `true` to skip pulling docker images (e.g., to use one you built locally).
77
- * `GITHUB_USERNAME` - Username for authenticating with GitHub.
78
- * `GITHUB_PASSWORD` - Password for authenticating with GitHub.
79
- * `GITLAB_QA_LOOP_RUNNER_MINUTES` - Minutes to run and repeat a spec while using the '--loop' option; default value is 1 minute.
80
- * `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.
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|
@@ -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
@@ -16,7 +16,7 @@ module Gitlab
16
16
  end
17
17
 
18
18
  def perform(release, *rspec_args)
19
- release = Release.new(release)
19
+ release = QA::Release.new(release)
20
20
  before_perform(release)
21
21
 
22
22
  Component::Gitlab.perform do |gitlab|
@@ -10,7 +10,7 @@ module Gitlab
10
10
  # rubocop:disable Metrics/AbcSize
11
11
  #
12
12
  def perform(release, *rspec_args)
13
- release = Release.new(release)
13
+ release = QA::Release.new(release)
14
14
 
15
15
  raise ArgumentError, 'Geo is EE only!' unless release.ee?
16
16
 
@@ -17,7 +17,7 @@ module Gitlab
17
17
  end
18
18
 
19
19
  def perform(release, *rspec_args)
20
- release = Release.new(release)
20
+ release = QA::Release.new(release)
21
21
  before_perform(release)
22
22
 
23
23
  Component::Gitlab.perform do |gitlab|
@@ -22,7 +22,7 @@ module Gitlab
22
22
  end
23
23
 
24
24
  def perform(release, *rspec_args)
25
- release = Release.new(release)
25
+ release = QA::Release.new(release)
26
26
 
27
27
  Component::Gitlab.perform do |gitlab|
28
28
  gitlab.release = release
@@ -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!'
@@ -24,7 +24,7 @@ module Gitlab
24
24
  end
25
25
  end
26
26
 
27
- project = "gitlab-org/#{Release.new(release).project_name}"
27
+ project = "gitlab-org/#{QA::Release.new(release).project_name}"
28
28
  commit = recent_commits(project).find { |c| c['id'] == version }
29
29
 
30
30
  if commit
@@ -1,5 +1,5 @@
1
1
  module Gitlab
2
2
  module QA
3
- VERSION = '5.13.1'.freeze
3
+ VERSION = '5.13.6'.freeze
4
4
  end
5
5
  end
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.1
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-05-24 00:00:00.000000000 Z
11
+ date: 2020-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control