gitlab-qa 6.18.0 → 6.20.1
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/.gitlab-ci.yml +1 -1
- data/docs/what_tests_can_be_run.md +2 -0
- data/lib/gitlab/qa/component/gitlab.rb +5 -1
- data/lib/gitlab/qa/component/specs.rb +4 -2
- data/lib/gitlab/qa/report/generate_test_session.rb +5 -3
- data/lib/gitlab/qa/report/relate_failure_issue.rb +1 -1
- data/lib/gitlab/qa/runtime/env.rb +6 -1
- data/lib/gitlab/qa/scenario/test/instance/staging.rb +9 -1
- data/lib/gitlab/qa/scenario/test/integration/mtls.rb +2 -0
- data/lib/gitlab/qa/scenario/test/integration/ssh_tunnel.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: c136a0788938d35b97aa2ead0aeb2c1cf49a3d4b88234b84bdc63fca74077f9c
|
4
|
+
data.tar.gz: 3af3761d7ec9c0b454f213a3adaba033d72f9eefa96551a7027d858a6a022c50
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73fefa1d944152d2792b353ee133846d077ffdae97f706fe20011d6327e82a9a627b301933b814eb214f5206566855c5a212af2bb7b56cee8a845fd3943e29c4
|
7
|
+
data.tar.gz: a4375e5f172c5c578f5fd389d1f3012247688c76b33465e44459581e2b126805a3d85bc851c70755bb4c850e26b3df186d97868a2d7ad37987e822608a412f99
|
data/.gitlab-ci.yml
CHANGED
@@ -1023,7 +1023,7 @@ relate_test_failures:
|
|
1023
1023
|
when: always
|
1024
1024
|
variables:
|
1025
1025
|
QA_FAILURES_REPORTING_PROJECT: "gitlab-org/gitlab"
|
1026
|
-
QA_FAILURES_MAX_DIFF_RATIO: "0.
|
1026
|
+
QA_FAILURES_MAX_DIFF_RATIO: "0.15"
|
1027
1027
|
# The --dry-run can be set to modify the behavior of `exe/gitlab-qa-report --relate-failure-issue` without releasing a new gem version.
|
1028
1028
|
QA_FAILURES_REPORTER_OPTIONS: ""
|
1029
1029
|
script:
|
@@ -84,6 +84,8 @@ All environment variables used by GitLab QA should be defined in [`lib/gitlab/qa
|
|
84
84
|
| `CACHE_NAMESPACE_NAME` | `true` | Cache namespace name for groups. | No|
|
85
85
|
| `DEPLOY_VERSION` |- | The version of GitLab being tested against. | No|
|
86
86
|
| `GITLAB_QA_USER_AGENT` |- | The browser user-agent to use instead of the default Chrome user-agent. | No|
|
87
|
+
| `GEO_FAILOVER` | `false` | Set to `true` when a Geo secondary site has been promoted to a Geo primary site. | No|
|
88
|
+
|
87
89
|
|
88
90
|
## [Supported Remote Grid environment variables](./running_against_remote_grid.md)
|
89
91
|
|
@@ -30,7 +30,6 @@ module Gitlab
|
|
30
30
|
@skip_availability_check = false
|
31
31
|
|
32
32
|
@volumes[GITLAB_CERTIFICATES_PATH] = SSL_PATH
|
33
|
-
@volumes[TRUSTED_CERTIFICATES_PATH] = TRUSTED_PATH
|
34
33
|
|
35
34
|
self.release = 'CE'
|
36
35
|
end
|
@@ -72,6 +71,11 @@ module Gitlab
|
|
72
71
|
def mtls
|
73
72
|
@volumes.delete(GITLAB_CERTIFICATES_PATH)
|
74
73
|
@volumes[GITALY_CERTIFICATES_PATH] = SSL_PATH
|
74
|
+
set_trusted_certificates
|
75
|
+
end
|
76
|
+
|
77
|
+
def set_trusted_certificates
|
78
|
+
@volumes[TRUSTED_CERTIFICATES_PATH] = TRUSTED_PATH
|
75
79
|
end
|
76
80
|
|
77
81
|
def relative_path
|
@@ -17,8 +17,6 @@ module Gitlab
|
|
17
17
|
@docker = Docker::Engine.new
|
18
18
|
@volumes = {}
|
19
19
|
@env = {}
|
20
|
-
|
21
|
-
@volumes[TRUSTED_CERTIFICATES_PATH] = TRUSTED_PATH
|
22
20
|
end
|
23
21
|
|
24
22
|
def perform # rubocop:disable Metrics/AbcSize
|
@@ -67,6 +65,10 @@ module Gitlab
|
|
67
65
|
end
|
68
66
|
end
|
69
67
|
|
68
|
+
def mtls
|
69
|
+
@volumes[TRUSTED_CERTIFICATES_PATH] = TRUSTED_PATH
|
70
|
+
end
|
71
|
+
|
70
72
|
private
|
71
73
|
|
72
74
|
def args_with_flags(args, feature_flag_set)
|
@@ -23,9 +23,11 @@ module Gitlab
|
|
23
23
|
)
|
24
24
|
|
25
25
|
# Workaround for https://gitlab.com/gitlab-org/gitlab/-/issues/295493
|
26
|
-
|
27
|
-
|
28
|
-
|
26
|
+
unless Runtime::Env.qa_issue_url.to_s.empty?
|
27
|
+
gitlab.create_issue_note(
|
28
|
+
iid: issue.iid,
|
29
|
+
note: "/relate #{Runtime::Env.qa_issue_url}")
|
30
|
+
end
|
29
31
|
|
30
32
|
File.write('REPORT_ISSUE_URL', issue.web_url)
|
31
33
|
end
|
@@ -9,7 +9,7 @@ module Gitlab
|
|
9
9
|
module Report
|
10
10
|
# Uses the API to create or update GitLab issues with the results of tests from RSpec report files.
|
11
11
|
class RelateFailureIssue < ReportAsIssue
|
12
|
-
DEFAULT_MAX_DIFF_RATIO_FOR_DETECTION = 0.
|
12
|
+
DEFAULT_MAX_DIFF_RATIO_FOR_DETECTION = 0.15
|
13
13
|
FAILURE_STACKTRACE_REGEX = %r{((.*Failure\/Error:(?<stacktrace>.+))|(?<stacktrace>.+))}m.freeze
|
14
14
|
ISSUE_STACKTRACE_REGEX = /### Stack trace\s*(```)#{FAILURE_STACKTRACE_REGEX}(```)/m.freeze
|
15
15
|
NEW_ISSUE_LABELS = Set.new(%w[QA Quality test failure::investigating priority::2]).freeze
|
@@ -87,7 +87,8 @@ module Gitlab
|
|
87
87
|
'JIRA_ADMIN_PASSWORD' => :jira_admin_password,
|
88
88
|
'CACHE_NAMESPACE_NAME' => :cache_namespace_name,
|
89
89
|
'DEPLOY_VERSION' => :deploy_version,
|
90
|
-
'GITLAB_QA_USER_AGENT' => :gitlab_qa_user_agent
|
90
|
+
'GITLAB_QA_USER_AGENT' => :gitlab_qa_user_agent,
|
91
|
+
'GEO_FAILOVER' => :geo_failover
|
91
92
|
}.freeze
|
92
93
|
|
93
94
|
ENV_VARIABLES.each do |env_name, method_name|
|
@@ -283,6 +284,10 @@ module Gitlab
|
|
283
284
|
enabled?(ENV['QA_SKIP_PULL'], default: false)
|
284
285
|
end
|
285
286
|
|
287
|
+
def geo_failover?
|
288
|
+
enabled?(ENV['GEO_FAILOVER'], default: false)
|
289
|
+
end
|
290
|
+
|
286
291
|
private
|
287
292
|
|
288
293
|
def enabled?(value, default: true)
|
@@ -4,12 +4,20 @@ module Gitlab
|
|
4
4
|
module Test
|
5
5
|
module Instance
|
6
6
|
##
|
7
|
-
# Run test suite against staging.gitlab.com
|
7
|
+
# Run test suite against staging.gitlab.com (or geo.staging.gitlab.com during failover)
|
8
8
|
#
|
9
9
|
class Staging < DeploymentBase
|
10
10
|
def deployment_component
|
11
11
|
Component::Staging
|
12
12
|
end
|
13
|
+
|
14
|
+
def non_rspec_args
|
15
|
+
if Runtime::Env.geo_failover?
|
16
|
+
[deployment_component::GEO_SECONDARY_ADDRESS]
|
17
|
+
else
|
18
|
+
[deployment_component::ADDRESS]
|
19
|
+
end
|
20
|
+
end
|
13
21
|
end
|
14
22
|
end
|
15
23
|
end
|
@@ -34,6 +34,7 @@ module Gitlab
|
|
34
34
|
gitlab.set_accept_insecure_certs
|
35
35
|
gitlab.omnibus_config = gitlab_omnibus
|
36
36
|
gitlab.tls = true
|
37
|
+
gitlab.set_trusted_certificates
|
37
38
|
|
38
39
|
gitlab.instance do
|
39
40
|
puts "Running mTLS specs!"
|
@@ -49,6 +50,7 @@ module Gitlab
|
|
49
50
|
specs.network = gitlab.network
|
50
51
|
specs.args = [gitlab.address, *rspec_args]
|
51
52
|
specs.env = @env
|
53
|
+
specs.mtls
|
52
54
|
end
|
53
55
|
end
|
54
56
|
end
|
@@ -27,7 +27,7 @@ module Gitlab
|
|
27
27
|
nginx['listen_port'] = 80;
|
28
28
|
nginx['listen_https'] = false;
|
29
29
|
# documentation: https://docs.gitlab.com/omnibus/settings/database.html#seed-the-database-fresh-installs-only
|
30
|
-
gitlab_rails['initial_root_password'] = '#{Runtime::Env.require_initial_password}'
|
30
|
+
gitlab_rails['initial_root_password'] = '#{Runtime::Env.require_initial_password!}'
|
31
31
|
|
32
32
|
registry_external_url '#{tunnel_registry.url}';
|
33
33
|
registry_nginx['listen_port'] = 80;
|
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: 6.
|
4
|
+
version: 6.20.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Grzegorz Bizon
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-01-
|
11
|
+
date: 2021-01-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: climate_control
|