gitlab-qa 2.13.1 → 3.0.1

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: b30f0beb5c4bf5dbcafff124f80654b462e5c5d91a9e3bfda44c2fe1b644427a
4
- data.tar.gz: f1b1f4776f80efac054598b1c70bf65a3a0d2d26ed8dfce726c860ad2828eea2
3
+ metadata.gz: 6bf71cde5fe8fd87db4bcd8b13638c710bd77be238a15569c7a0e8794319c361
4
+ data.tar.gz: 63e82bc93eafed386924bf7c66ab91f67b49b8d26f2dda5ac8a34c47cbc84779
5
5
  SHA512:
6
- metadata.gz: 70b019a6ffa35174cd17751138b3180a7b155b7ac5246ce3d773be0ee8595d75db4e618422ca2eb47d74ea6a22d279670b1140642aa14eaeaebaea07239a8f4f
7
- data.tar.gz: 716111739e1c955d51decc30c078f5d6aeeb15797683069ada7dcbd0acea857470b082dad6c663085d1ee0ee4cc60aa033dd5585ab620ec42e664f1b1641bf92
6
+ metadata.gz: bf7e5745d3e082ad7a00521e0c7b1cbc68c742064d3e5cb04422b6a7ab56bfa1a08c625019876a4aa6b7142101257d971f7f3a8cb05d7c20655383ae05f0323b
7
+ data.tar.gz: 073ff4e869d2d86a517e8642e25c446712e0a04e660142ac3f8662d98f61562e5f3b498836098b91eaa19ceeaed73d20ad008297b5826c81a9997d98f2a88530
data/.gitlab-ci.yml CHANGED
@@ -76,14 +76,14 @@ check:rspec:
76
76
 
77
77
  ce:sanity-framework:
78
78
  script:
79
- - ./bin/expect_exit_code_and_text "bin/qa Test::Instance::Image ${RELEASE:=CE} --tag framework" 1 "2 examples, 1 failure"
79
+ - ./bin/expect_exit_code_and_text "bin/qa Test::Instance::Image ${RELEASE:=CE} -- --tag framework" 1 "2 examples, 1 failure"
80
80
  <<: *test
81
81
  <<: *high-capacity
82
82
  <<: *ce-qa
83
83
 
84
84
  ee:sanity-framework:
85
85
  script:
86
- - ./bin/expect_exit_code_and_text "bin/qa Test::Instance::Image ${RELEASE:=EE} --tag framework" 1 "2 examples, 1 failure"
86
+ - ./bin/expect_exit_code_and_text "bin/qa Test::Instance::Image ${RELEASE:=EE} -- --tag framework" 1 "2 examples, 1 failure"
87
87
  <<: *test
88
88
  <<: *high-capacity
89
89
  <<: *ee-qa
@@ -97,7 +97,7 @@ ce:instance:
97
97
 
98
98
  ce:instance-quarantine:
99
99
  script:
100
- - bin/qa Test::Instance::Image ${RELEASE:=CE} --tag quarantine --tag ~orchestrated
100
+ - bin/qa Test::Instance::Image ${RELEASE:=CE} -- --tag quarantine --tag ~orchestrated
101
101
  <<: *test
102
102
  <<: *high-capacity
103
103
  <<: *ce-qa
@@ -112,7 +112,7 @@ ee:instance:
112
112
 
113
113
  ee:instance-quarantine:
114
114
  script:
115
- - bin/qa Test::Instance::Image ${RELEASE:=EE} --tag quarantine --tag ~orchestrated
115
+ - bin/qa Test::Instance::Image ${RELEASE:=EE} -- --tag quarantine --tag ~orchestrated
116
116
  <<: *test
117
117
  <<: *high-capacity
118
118
  <<: *ee-qa
@@ -120,14 +120,14 @@ ee:instance-quarantine:
120
120
 
121
121
  ce:docker:
122
122
  script:
123
- - bin/qa Test::Instance::Image ${RELEASE:=CE} --tag docker
123
+ - bin/qa Test::Instance::Image ${RELEASE:=CE} -- --tag docker
124
124
  <<: *test
125
125
  <<: *high-capacity
126
126
  <<: *ce-qa
127
127
 
128
128
  ee:docker:
129
129
  script:
130
- - bin/qa Test::Instance::Image ${RELEASE:=EE} --tag docker
130
+ - bin/qa Test::Instance::Image ${RELEASE:=EE} -- --tag docker
131
131
  <<: *test
132
132
  <<: *high-capacity
133
133
  <<: *ee-qa
@@ -141,7 +141,7 @@ ce:relative_url:
141
141
 
142
142
  ce:relative_url-quarantine:
143
143
  script:
144
- - bin/qa Test::Instance::RelativeUrl ${RELEASE:=CE} --tag quarantine --tag ~orchestrated
144
+ - bin/qa Test::Instance::RelativeUrl ${RELEASE:=CE} -- --tag quarantine --tag ~orchestrated
145
145
  <<: *test
146
146
  <<: *high-capacity
147
147
  <<: *ce-qa
@@ -156,7 +156,7 @@ ee:relative_url:
156
156
 
157
157
  ee:relative_url-quarantine:
158
158
  script:
159
- - bin/qa Test::Instance::RelativeUrl ${RELEASE:=EE} --tag quarantine --tag ~orchestrated
159
+ - bin/qa Test::Instance::RelativeUrl ${RELEASE:=EE} -- --tag quarantine --tag ~orchestrated
160
160
  <<: *test
161
161
  <<: *high-capacity
162
162
  <<: *ee-qa
@@ -183,7 +183,7 @@ ce:update:
183
183
 
184
184
  ce:update-quarantine:
185
185
  script:
186
- - bin/qa Test::Omnibus::Update ${RELEASE:=CE} ${RELEASE:=CE} --tag quarantine --tag ~orchestrated
186
+ - bin/qa Test::Omnibus::Update ${RELEASE:=CE} ${RELEASE:=CE} -- --tag quarantine --tag ~orchestrated
187
187
  <<: *test
188
188
  <<: *high-capacity
189
189
  <<: *ce-qa
@@ -198,7 +198,7 @@ ee:update:
198
198
 
199
199
  ee:update-quarantine:
200
200
  script:
201
- - bin/qa Test::Omnibus::Update ${RELEASE:=EE} ${RELEASE:=EE} --tag quarantine --tag ~orchestrated
201
+ - bin/qa Test::Omnibus::Update ${RELEASE:=EE} ${RELEASE:=EE} -- --tag quarantine --tag ~orchestrated
202
202
  <<: *test
203
203
  <<: *high-capacity
204
204
  <<: *ee-qa
@@ -213,7 +213,7 @@ ce:upgrade:
213
213
 
214
214
  ce:upgrade-quarantine:
215
215
  script:
216
- - bin/qa Test::Omnibus::Upgrade CE --tag quarantine --tag ~orchestrated
216
+ - bin/qa Test::Omnibus::Upgrade CE -- --tag quarantine --tag ~orchestrated
217
217
  <<: *test
218
218
  <<: *high-capacity
219
219
  <<: *only-qa
@@ -228,7 +228,7 @@ ee-previous-to-ce:update:
228
228
 
229
229
  ee-previous-to-ce:update-quarantine:
230
230
  script:
231
- - bin/qa Test::Omnibus::Update EE CE --tag quarantine --tag ~orchestrated
231
+ - bin/qa Test::Omnibus::Update EE CE -- --tag quarantine --tag ~orchestrated
232
232
  <<: *test
233
233
  <<: *high-capacity
234
234
  <<: *only-qa
@@ -243,7 +243,7 @@ ce:mattermost:
243
243
 
244
244
  ce:mattermost-quarantine:
245
245
  script:
246
- - bin/qa Test::Integration::Mattermost ${RELEASE:=CE} --tag quarantine
246
+ - bin/qa Test::Integration::Mattermost ${RELEASE:=CE} -- --tag quarantine
247
247
  <<: *test
248
248
  <<: *high-capacity
249
249
  <<: *ce-qa
@@ -258,7 +258,7 @@ ee:mattermost:
258
258
 
259
259
  ee:mattermost-quarantine:
260
260
  script:
261
- - bin/qa Test::Integration::Mattermost ${RELEASE:=EE} --tag quarantine
261
+ - bin/qa Test::Integration::Mattermost ${RELEASE:=EE} -- --tag quarantine
262
262
  <<: *test
263
263
  <<: *high-capacity
264
264
  <<: *ee-qa
@@ -288,7 +288,7 @@ ce:ldap_no_tls:
288
288
 
289
289
  ce:ldap_no_tls-quarantine:
290
290
  script:
291
- - bin/qa Test::Integration::LDAPNoTLS ${RELEASE:=CE} --tag quarantine
291
+ - bin/qa Test::Integration::LDAPNoTLS ${RELEASE:=CE} -- --tag quarantine
292
292
  <<: *test
293
293
  <<: *high-capacity
294
294
  <<: *ce-qa
@@ -303,7 +303,7 @@ ee:ldap_no_tls:
303
303
 
304
304
  ee:ldap_no_tls-quarantine:
305
305
  script:
306
- - bin/qa Test::Integration::LDAPNoTLS ${RELEASE:=EE} --tag quarantine
306
+ - bin/qa Test::Integration::LDAPNoTLS ${RELEASE:=EE} -- --tag quarantine
307
307
  <<: *test
308
308
  <<: *high-capacity
309
309
  <<: *ee-qa
@@ -318,7 +318,7 @@ ce:ldap_tls:
318
318
 
319
319
  ce:ldap_tls-quarantine:
320
320
  script:
321
- - bin/qa Test::Integration::LDAPTLS ${RELEASE:=CE} --tag quarantine
321
+ - bin/qa Test::Integration::LDAPTLS ${RELEASE:=CE} -- --tag quarantine
322
322
  <<: *test
323
323
  <<: *high-capacity
324
324
  <<: *ce-qa
@@ -333,7 +333,7 @@ ee:ldap_tls:
333
333
 
334
334
  ee:ldap_tls-quarantine:
335
335
  script:
336
- - bin/qa Test::Integration::LDAPTLS ${RELEASE:=EE} --tag quarantine
336
+ - bin/qa Test::Integration::LDAPTLS ${RELEASE:=EE} -- --tag quarantine
337
337
  <<: *test
338
338
  <<: *high-capacity
339
339
  <<: *ee-qa
@@ -348,7 +348,7 @@ ce:instance_saml:
348
348
 
349
349
  ce:instance_saml-quarantine:
350
350
  script:
351
- - bin/qa Test::Integration::InstanceSAML ${RELEASE:=CE} --tag quarantine
351
+ - bin/qa Test::Integration::InstanceSAML ${RELEASE:=CE} -- --tag quarantine
352
352
  <<: *test
353
353
  <<: *high-capacity
354
354
  <<: *ce-qa
@@ -363,7 +363,7 @@ ee:instance_saml:
363
363
 
364
364
  ee:instance_saml-quarantine:
365
365
  script:
366
- - bin/qa Test::Integration::InstanceSAML ${RELEASE:=EE} --tag quarantine
366
+ - bin/qa Test::Integration::InstanceSAML ${RELEASE:=EE} -- --tag quarantine
367
367
  <<: *test
368
368
  <<: *high-capacity
369
369
  <<: *ee-qa
@@ -378,7 +378,7 @@ ee:group_saml:
378
378
 
379
379
  ee:group_saml-quarantine:
380
380
  script:
381
- - bin/qa Test::Integration::GroupSAML ${RELEASE:=EE} --tag quarantine
381
+ - bin/qa Test::Integration::GroupSAML ${RELEASE:=EE} -- --tag quarantine
382
382
  <<: *test
383
383
  <<: *high-capacity
384
384
  <<: *ee-qa
@@ -393,7 +393,7 @@ ce:kubernetes:
393
393
 
394
394
  ce:kubernetes-quarantine:
395
395
  script:
396
- - bin/qa Test::Integration::Kubernetes ${RELEASE:=CE} --tag quarantine
396
+ - bin/qa Test::Integration::Kubernetes ${RELEASE:=CE} -- --tag quarantine
397
397
  <<: *test
398
398
  <<: *high-capacity
399
399
  <<: *ce-qa
@@ -408,7 +408,7 @@ ee:kubernetes:
408
408
 
409
409
  ee:kubernetes-quarantine:
410
410
  script:
411
- - bin/qa Test::Integration::Kubernetes ${RELEASE:=EE} --tag quarantine
411
+ - bin/qa Test::Integration::Kubernetes ${RELEASE:=EE} -- --tag quarantine
412
412
  <<: *test
413
413
  <<: *high-capacity
414
414
  <<: *ee-qa
@@ -423,7 +423,7 @@ ce:object_storage:
423
423
 
424
424
  ce:object_storage-quarantine:
425
425
  script:
426
- - bin/qa Test::Integration::ObjectStorage ${RELEASE:=CE} --tag quarantine
426
+ - bin/qa Test::Integration::ObjectStorage ${RELEASE:=CE} -- --tag quarantine
427
427
  <<: *test
428
428
  <<: *high-capacity
429
429
  <<: *ce-qa
@@ -438,7 +438,7 @@ ee:object_storage:
438
438
 
439
439
  ee:object_storage-quarantine:
440
440
  script:
441
- - bin/qa Test::Integration::ObjectStorage ${RELEASE:=EE} --tag quarantine
441
+ - bin/qa Test::Integration::ObjectStorage ${RELEASE:=EE} -- --tag quarantine
442
442
  <<: *test
443
443
  <<: *high-capacity
444
444
  <<: *ee-qa
@@ -453,7 +453,7 @@ ce:oauth:
453
453
 
454
454
  ce:oauth-quarantine:
455
455
  script:
456
- - bin/qa Test::Integration::OAuth ${RELEASE:=CE} --tag quarantine
456
+ - bin/qa Test::Integration::OAuth ${RELEASE:=CE} -- --tag quarantine
457
457
  <<: *test
458
458
  <<: *high-capacity
459
459
  <<: *ce-qa
@@ -468,7 +468,7 @@ ee:oauth:
468
468
 
469
469
  ee:oauth-quarantine:
470
470
  script:
471
- - bin/qa Test::Integration::OAuth ${RELEASE:=EE} --tag quarantine
471
+ - bin/qa Test::Integration::OAuth ${RELEASE:=EE} -- --tag quarantine
472
472
  <<: *test
473
473
  <<: *high-capacity
474
474
  <<: *ee-qa
@@ -495,20 +495,3 @@ notify_upstream_commit:failure:
495
495
  script:
496
496
  - bin/notify_upstream_commit failure
497
497
  when: on_failure
498
-
499
- .notify_slack: &notify_slack
500
- image: alpine
501
- stage: notify
502
- dependencies: []
503
- cache: {}
504
- before_script:
505
- - apk update && apk add git curl bash
506
- only:
507
- variables:
508
- - $TOP_UPSTREAM_SOURCE_JOB
509
-
510
- notify_slack:
511
- <<: *notify_slack
512
- script:
513
- - bin/slack quality-alerts "☠️ Pipeline on \`$CI_BUILD_REF_NAME\` failed! ☠️ Commit \`$(git log -1 --oneline | sed 's|\"|\\\\\"|g')\` See $CI_PIPELINE_URL (triggered from $TOP_UPSTREAM_SOURCE_JOB)" ci_failing
514
- when: on_failure
@@ -57,6 +57,11 @@ For more details on the internals, please read the
57
57
 
58
58
  ## [Supported Remote Grid environment variables](./running_against_remote_grid.md)
59
59
 
60
+ ## Running tests with a feature flag enabled
61
+
62
+ It is possible to enable a feature flag before running tests. See the [QA
63
+ framework documentation](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/qa/README.md#running-tests-with-a-feature-flag-enabled) for details.
64
+
60
65
  ## Examples
61
66
 
62
67
  ### `Test::Instance::Image CE|EE|<full image address>`
@@ -200,7 +205,7 @@ $ gitlab-qa Test::Integration::LDAPNoTLS EE
200
205
 
201
206
  ### `Test::Integration::LDAPTLS CE|EE|<full image address>`
202
207
 
203
- This tests that a TLS enabled GitLab instance works as expected with an external TLS enabled LDAP server.
208
+ This tests that a TLS enabled GitLab instance works as expected with an external TLS enabled LDAP server.
204
209
  The self signed TLS certificate used for the Gitlab instance and the private key is located at: [`gitlab-org/gitlab-qa@tls_certificates/gitlab`][test-integration-ldap-tls-certs]
205
210
 
206
211
  The certificate was generated with openssl using this command:
data/exe/gitlab-qa CHANGED
@@ -3,6 +3,24 @@
3
3
  require 'gitlab/qa'
4
4
  require 'optparse'
5
5
 
6
+ # We use OptionParser here in gitlab-qa and in the QA framework in CE/EE, so we
7
+ # need to include a separator, --, before rspec options so that OptionParser
8
+ # doesn't reject them.
9
+ #
10
+ # Since we invoke OptionParser twice, the original command would need 2
11
+ # separators otherwise the 2nd invocation of OptionParser would reject the rspec
12
+ # tags that follow the separator.
13
+ #
14
+ # Rather than have to include 2 separators when we run gitlab-qa, the following
15
+ # adds a 2nd separator if there is one in the command. It is then removed by
16
+ # OptionParser, but when the args are passed on to the QA framework there is
17
+ # still 1 separator so the rspec options don't cause an error when OptionParser
18
+ # parses the options again.
19
+
20
+ args = ARGV
21
+ index = args.index('--')
22
+ args.insert(index, '--') if index && args.count('--') == 1
23
+
6
24
  options = OptionParser.new do |opts|
7
25
  opts.banner = 'Usage: gitlab-qa [options] Scenario URL [[--] path] [rspec_options]'
8
26
 
@@ -17,13 +35,13 @@ options = OptionParser.new do |opts|
17
35
  exit
18
36
  end
19
37
 
20
- opts.parse!
38
+ opts.parse!(args)
21
39
  end
22
40
 
23
41
  if ARGV.size >= 1
24
42
  Gitlab::QA::Scenario
25
- .const_get(ARGV.shift)
26
- .perform(*ARGV)
43
+ .const_get(args.shift)
44
+ .perform(*args)
27
45
  else
28
46
  puts options
29
47
  exit 1
@@ -10,7 +10,7 @@ module Gitlab
10
10
  class Any < Scenario::Template
11
11
  def perform(edition_and_tag, address, *rspec_args)
12
12
  Component::Specs.perform do |specs|
13
- specs.suite = 'Test::Instance'
13
+ specs.suite = 'Test::Instance::All'
14
14
  specs.release = Release.new(edition_and_tag)
15
15
  specs.args = [address, *rspec_args]
16
16
  end
@@ -18,7 +18,7 @@ module Gitlab
18
18
 
19
19
  gitlab.instance do
20
20
  Component::Specs.perform do |specs|
21
- specs.suite = 'Test::Instance'
21
+ specs.suite = 'Test::Instance::All'
22
22
  specs.release = gitlab.release
23
23
  specs.network = gitlab.network
24
24
  specs.args = [gitlab.address, *rspec_args]
@@ -24,7 +24,7 @@ module Gitlab
24
24
  end
25
25
 
26
26
  Component::Specs.perform do |specs|
27
- specs.suite = 'Test::Instance'
27
+ specs.suite = 'Test::Instance::All'
28
28
  specs.release = release
29
29
  specs.args = [Component::Production::ADDRESS, *rspec_args]
30
30
  end
@@ -16,7 +16,7 @@ module Gitlab
16
16
 
17
17
  gitlab.instance do
18
18
  Component::Specs.perform do |specs|
19
- specs.suite = 'Test::Instance'
19
+ specs.suite = 'Test::Instance::All'
20
20
  specs.release = gitlab.release
21
21
  specs.network = gitlab.network
22
22
  specs.args = [gitlab.address, *rspec_args]
@@ -24,7 +24,7 @@ module Gitlab
24
24
  end
25
25
 
26
26
  Component::Specs.perform do |specs|
27
- specs.suite = 'Test::Instance'
27
+ specs.suite = 'Test::Instance::All'
28
28
  specs.release = release
29
29
  specs.args = [Component::Staging::ADDRESS, *rspec_args]
30
30
  end
@@ -1,5 +1,5 @@
1
1
  module Gitlab
2
2
  module QA
3
- VERSION = '2.13.1'.freeze
3
+ VERSION = '3.0.1'.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: 2.13.1
4
+ version: 3.0.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: 2019-02-28 00:00:00.000000000 Z
11
+ date: 2019-03-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control
@@ -208,8 +208,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
208
208
  - !ruby/object:Gem::Version
209
209
  version: '0'
210
210
  requirements: []
211
- rubyforge_project:
212
- rubygems_version: 2.7.6
211
+ rubygems_version: 3.0.2
213
212
  signing_key:
214
213
  specification_version: 4
215
214
  summary: Integration tests for GitLab