gitlab-qa 7.14.0 → 7.15.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitlab-ci.yml +25 -0
- data/docs/run_qa_against_gdk.md +11 -1
- data/docs/what_tests_can_be_run.md +1 -0
- data/lib/gitlab/qa/report/results_in_issues.rb +6 -2
- data/lib/gitlab/qa/runtime/env.rb +2 -1
- data/lib/gitlab/qa/scenario/test/integration/service_ping_disabled.rb +33 -0
- data/lib/gitlab/qa/version.rb +1 -1
- data/lib/gitlab/qa.rb +1 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe746c675e46af459fc920bfcf752441411cca5f573e35ddf7fb06571e27c972
|
4
|
+
data.tar.gz: f6e619f95e5ff3d8f249aaea2e7ca674dcc22624cf9d94b1ef43aeed9d470417
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b54bdc2eb26373a0a1d4bf096bf6e1adb6ad72b2fc1d439a1bddf417ecdc3deb7cc39d58b91cd89f8b748cf4e02b8ca809af6539a5faf40f638f18554fb70ea0
|
7
|
+
data.tar.gz: 10cbfcbc452a16a47718458c75121967c216c01b492c33da80f42e56d97d478844b719f2121f38816707f4110b0ee81743a5e026228e2bab8573e7755b2d7822
|
data/.gitlab-ci.yml
CHANGED
@@ -66,6 +66,7 @@ rspec:
|
|
66
66
|
|
67
67
|
.test:
|
68
68
|
stage: test
|
69
|
+
timeout: 1 hour 30 minutes
|
69
70
|
services:
|
70
71
|
- docker:20.10.5-dind
|
71
72
|
tags:
|
@@ -527,6 +528,26 @@ ee:mattermost-quarantine:
|
|
527
528
|
variables:
|
528
529
|
QA_SCENARIO: "Test::Integration::Mattermost"
|
529
530
|
|
531
|
+
ce:service_ping_disabled:
|
532
|
+
extends:
|
533
|
+
- .rules:ce-never-when-triggered-by-feature-flag-definition-change
|
534
|
+
- .test
|
535
|
+
- .high-capacity
|
536
|
+
- .ce-variables
|
537
|
+
- .rspec-report-opts
|
538
|
+
variables:
|
539
|
+
QA_SCENARIO: "Test::Integration::ServicePingDisabled"
|
540
|
+
|
541
|
+
ee:service_ping_disabled:
|
542
|
+
extends:
|
543
|
+
- .rules:ee-never-when-triggered-by-feature-flag-definition-change
|
544
|
+
- .test
|
545
|
+
- .high-capacity
|
546
|
+
- .ee-variables
|
547
|
+
- .rspec-report-opts
|
548
|
+
variables:
|
549
|
+
QA_SCENARIO: "Test::Integration::ServicePingDisabled"
|
550
|
+
|
530
551
|
# Disabling geo jobs temporarily due to https://gitlab.com/gitlab-org/gitlab/-/issues/273063
|
531
552
|
# ee:geo:
|
532
553
|
# extends:
|
@@ -1066,6 +1087,7 @@ ce:gitaly-cluster:
|
|
1066
1087
|
- .rspec-report-opts
|
1067
1088
|
variables:
|
1068
1089
|
QA_SCENARIO: "Test::Integration::GitalyCluster"
|
1090
|
+
QA_LOG_PATH: "tmp/gitaly_cluster.log"
|
1069
1091
|
|
1070
1092
|
ce:gitaly-cluster-quarantine:
|
1071
1093
|
extends:
|
@@ -1077,6 +1099,7 @@ ce:gitaly-cluster-quarantine:
|
|
1077
1099
|
- .rspec-report-opts
|
1078
1100
|
variables:
|
1079
1101
|
QA_SCENARIO: "Test::Integration::GitalyCluster"
|
1102
|
+
QA_LOG_PATH: "tmp/gitaly_cluster.log"
|
1080
1103
|
|
1081
1104
|
ee:gitaly-cluster:
|
1082
1105
|
extends:
|
@@ -1087,6 +1110,7 @@ ee:gitaly-cluster:
|
|
1087
1110
|
- .rspec-report-opts
|
1088
1111
|
variables:
|
1089
1112
|
QA_SCENARIO: "Test::Integration::GitalyCluster"
|
1113
|
+
QA_LOG_PATH: "tmp/gitaly_cluster.log"
|
1090
1114
|
|
1091
1115
|
ee:gitaly-cluster-quarantine:
|
1092
1116
|
extends:
|
@@ -1098,6 +1122,7 @@ ee:gitaly-cluster-quarantine:
|
|
1098
1122
|
- .rspec-report-opts
|
1099
1123
|
variables:
|
1100
1124
|
QA_SCENARIO: "Test::Integration::GitalyCluster"
|
1125
|
+
QA_LOG_PATH: "tmp/gitaly_cluster.log"
|
1101
1126
|
|
1102
1127
|
ce:mtls:
|
1103
1128
|
extends:
|
data/docs/run_qa_against_gdk.md
CHANGED
@@ -49,6 +49,16 @@ make a few changes to your `gdk/gitlab/config/gitlab.yml` file.
|
|
49
49
|
**Note:** The hostname of the URL provided to `gitlab-qa` must match the hostname configured for GDK.
|
50
50
|
If they do not match, a test will be signed out when it visits a page directly because the hostname of the URL visited will be different from the hostname that was used when signing in.
|
51
51
|
|
52
|
+
**Note:** When you log into your GDK instance of GitLab for the first time, the root password requires a change.
|
53
|
+
GitLab QA expects the default initial password to be used in tests; see all default values listed in
|
54
|
+
[Supported GitLab environment variables](what_tests_can_be_run.md#supported-gitlab-environment-variables).
|
55
|
+
If you have changed your root password, you must set the `GITLAB_INITIAL_ROOT_PASSWORD` environment
|
56
|
+
variable.
|
57
|
+
|
58
|
+
```
|
59
|
+
export GITLAB_INITIAL_ROOT_PASSWORD="<GDK root password>"
|
60
|
+
```
|
61
|
+
|
52
62
|
### Running EE tests
|
53
63
|
|
54
64
|
When running EE tests you'll need to have a license available. GitLab engineers can [request a license](https://about.gitlab.com/handbook/developer-onboarding/#working-on-gitlab-ee).
|
@@ -101,7 +111,7 @@ your DNS and point to the IP/port of `dnsdock` application.
|
|
101
111
|
|
102
112
|
### Docker on macOS caveats
|
103
113
|
|
104
|
-
When using OS X Docker, you need to go to Preferences > Advanced and allocate at least **5.0 GB**,
|
114
|
+
When using OS X Docker, you need to go to Preferences > Resources > Advanced and allocate at least **5.0 GB**,
|
105
115
|
otherwise some steps may fail to execute the `chrome-webdriver`.
|
106
116
|
|
107
117
|
When using docker-machine, see [this StackOverflow link for increasing memory](https://stackoverflow.com/questions/32834082/how-to-increase-docker-machine-memory-mac/36982696#36982696).
|
@@ -62,6 +62,7 @@ All environment variables used by GitLab QA should be defined in [`lib/gitlab/qa
|
|
62
62
|
| `QA_ARTIFACTS_DIR` |`/tmp/gitlab-qa`| Path to a directory where artifacts (logs and screenshots) for failing tests will be saved. | No|
|
63
63
|
| `DOCKER_HOST` |`http://localhost`| Docker host to run tests against. | No|
|
64
64
|
| `WEBDRIVER_HEADLESS` |- | When running locally, set to `false` to allow Chrome tests to be visible - watch your tests being run. | No|
|
65
|
+
| `CHROME_DISABLE_DEV_SHM` | `false` | Set to `true` to disable `/dev/shm` usage in Chrome on Linux. | No|
|
65
66
|
| `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. Note: Admin access is required to change repository storage. | No|
|
66
67
|
| `QA_PRAEFECT_REPOSITORY_STORAGE` |- | The name of repository storage using Praefect. Note: Admin access is required to change repository storage. | No|
|
67
68
|
| `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|
|
@@ -35,7 +35,7 @@ module Gitlab
|
|
35
35
|
issue = find_linked_results_issue_by_iid(testcase, test)
|
36
36
|
|
37
37
|
if issue
|
38
|
-
issue = update_issue_title(issue, test, 'issue') if issue
|
38
|
+
issue = update_issue_title(issue, test, 'issue') if issue_title_needs_updating?(issue, test)
|
39
39
|
else
|
40
40
|
puts "No valid issue link found"
|
41
41
|
issue = find_or_create_results_issue(test)
|
@@ -51,7 +51,7 @@ module Gitlab
|
|
51
51
|
testcase = find_testcase_by_iid(test)
|
52
52
|
|
53
53
|
if testcase
|
54
|
-
testcase = update_issue_title(testcase, test, 'test_case') if testcase
|
54
|
+
testcase = update_issue_title(testcase, test, 'test_case') if issue_title_needs_updating?(testcase, test)
|
55
55
|
else
|
56
56
|
testcase = find_issue(test, 'test_case')
|
57
57
|
end
|
@@ -67,6 +67,10 @@ module Gitlab
|
|
67
67
|
find_issue_by_iid(iid, 'test_case')
|
68
68
|
end
|
69
69
|
|
70
|
+
def issue_title_needs_updating?(issue, test)
|
71
|
+
issue.title.strip != title_from_test(test) && !%w[canary production preprod release].include?(pipeline)
|
72
|
+
end
|
73
|
+
|
70
74
|
def find_linked_results_issue_by_iid(testcase, test)
|
71
75
|
iid = issue_iid_from_testcase(testcase)
|
72
76
|
|
@@ -123,7 +123,8 @@ module Gitlab
|
|
123
123
|
'GOOGLE_JSON_KEY' => :google_json_key,
|
124
124
|
'GCS_BUCKET_NAME' => :gcs_bucket_name,
|
125
125
|
'SMOKE_ONLY' => :smoke_only,
|
126
|
-
'NO_ADMIN' => :no_admin
|
126
|
+
'NO_ADMIN' => :no_admin,
|
127
|
+
'CHROME_DISABLE_DEV_SHM' => :chrome_disable_dev_shm
|
127
128
|
}.freeze
|
128
129
|
|
129
130
|
ENV_VARIABLES.each do |env_name, method_name|
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gitlab
|
4
|
+
module QA
|
5
|
+
module Scenario
|
6
|
+
module Test
|
7
|
+
module Integration
|
8
|
+
class ServicePingDisabled < Scenario::Template
|
9
|
+
def perform(release, *rspec_args)
|
10
|
+
Component::Gitlab.perform do |gitlab|
|
11
|
+
gitlab.release = release
|
12
|
+
gitlab.network = 'test'
|
13
|
+
|
14
|
+
gitlab.omnibus_configuration << <<~OMNIBUS
|
15
|
+
gitlab_rails['usage_ping_enabled'] = false;
|
16
|
+
OMNIBUS
|
17
|
+
|
18
|
+
gitlab.instance do
|
19
|
+
Component::Specs.perform do |specs|
|
20
|
+
specs.suite = 'Test::Integration::ServicePingDisabled'
|
21
|
+
specs.release = gitlab.release
|
22
|
+
specs.network = gitlab.network
|
23
|
+
specs.args = [gitlab.address, *rspec_args]
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/gitlab/qa/version.rb
CHANGED
data/lib/gitlab/qa.rb
CHANGED
@@ -72,6 +72,7 @@ module Gitlab
|
|
72
72
|
autoload :ClientSSL, 'gitlab/qa/scenario/test/integration/client_ssl'
|
73
73
|
autoload :Registry, 'gitlab/qa/scenario/test/integration/registry'
|
74
74
|
autoload :RegistryTLS, 'gitlab/qa/scenario/test/integration/registry_tls'
|
75
|
+
autoload :ServicePingDisabled, 'gitlab/qa/scenario/test/integration/service_ping_disabled'
|
75
76
|
end
|
76
77
|
|
77
78
|
module Sanity
|
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: 7.
|
4
|
+
version: 7.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitLab Quality
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-12-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: climate_control
|
@@ -309,6 +309,7 @@ files:
|
|
309
309
|
- lib/gitlab/qa/scenario/test/integration/registry.rb
|
310
310
|
- lib/gitlab/qa/scenario/test/integration/registry_tls.rb
|
311
311
|
- lib/gitlab/qa/scenario/test/integration/saml.rb
|
312
|
+
- lib/gitlab/qa/scenario/test/integration/service_ping_disabled.rb
|
312
313
|
- lib/gitlab/qa/scenario/test/integration/smtp.rb
|
313
314
|
- lib/gitlab/qa/scenario/test/integration/ssh_tunnel.rb
|
314
315
|
- lib/gitlab/qa/scenario/test/omnibus/image.rb
|