gitlab-qa 4.19.3 → 4.20.0

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: 365a0ce68c65b067549f157ad77556b2a73acd68e8bcf80b9a1b71eaaf038131
4
- data.tar.gz: 4d621dc1dd3acf0806b4aca7d48ee71666f987233d29a5cec9005c91c79b6601
3
+ metadata.gz: 066aa882ca586d0186ec53fb1cb7e55276a5081280993568e681c73ffa760bfb
4
+ data.tar.gz: 11b473e0b82f5842de908b43dad5699dcdd07fd2d444228548bdd7b21cde2639
5
5
  SHA512:
6
- metadata.gz: 8476332ec379c56295af553b573f06273b03f6cf91f69a83d764bbd57c1e71ac9739ea429db9b8a9552a372a073111cedf45c4697158504685c9b36b6cbf7a40
7
- data.tar.gz: b0853d070633351b9aa011c57e4e746e9639773fba1371bb4e2b731c1ae84cae3ae72afd56938f4e146d267d7c8720ba2418fc1951bae2ace2b4be5a1b22f8e1
6
+ metadata.gz: d9298cbb9e265a96d9f969919992920046f8566452af76252008b2ae7500350965168844bf7bca0d9632163ad34b457dc21b623912b32091f8c6c683932dcf54
7
+ data.tar.gz: b7cc0ebfd6b6c35085ab94ada285238e68b5577318d16b559fbb2c28b884d9e9135093749627d7fd02a27543ab4d343a26616cc694027146ab9b5997b0bfb6e9
@@ -248,6 +248,44 @@ ee:relative_url-quarantine:
248
248
  - .quarantine
249
249
  - .rspec-report-opts
250
250
 
251
+ ce:repository_storage:
252
+ script:
253
+ - exe/gitlab-qa Test::Instance::RepositoryStorage ${RELEASE:=CE} -- $RSPEC_REPORT_OPTS
254
+ extends:
255
+ - .test
256
+ - .high-capacity
257
+ - .ce-qa
258
+ - .rspec-report-opts
259
+
260
+ ce:repository_storage-quarantine:
261
+ script:
262
+ - exe/gitlab-qa Test::Instance::RepositoryStorage ${RELEASE:=CE} -- --tag quarantine $RSPEC_REPORT_OPTS
263
+ extends:
264
+ - .test
265
+ - .high-capacity
266
+ - .ce-qa
267
+ - .quarantine
268
+ - .rspec-report-opts
269
+
270
+ ee:repository_storage:
271
+ script:
272
+ - exe/gitlab-qa Test::Instance::RepositoryStorage ${RELEASE:=EE} -- $RSPEC_REPORT_OPTS
273
+ extends:
274
+ - .test
275
+ - .high-capacity
276
+ - .ee-qa
277
+ - .rspec-report-opts
278
+
279
+ ee:repository_storage-quarantine:
280
+ script:
281
+ - exe/gitlab-qa Test::Instance::RepositoryStorage ${RELEASE:=EE} -- --tag quarantine $RSPEC_REPORT_OPTS
282
+ extends:
283
+ - .test
284
+ - .high-capacity
285
+ - .ee-qa
286
+ - .quarantine
287
+ - .rspec-report-opts
288
+
251
289
  ce:image:
252
290
  script:
253
291
  - exe/gitlab-qa Test::Omnibus::Image ${RELEASE:=CE}
@@ -61,6 +61,7 @@ For more details on the internals, please read the
61
61
  for failing tests will be saved (default: `/tmp/gitlab-qa`)
62
62
  * `DOCKER_HOST` - Docker host to run tests against (default: `http://localhost`)
63
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
64
65
  * `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"
65
66
  * `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.
66
67
  * `QA_LOG_PATH` - path to output debug logging to. If not set logging will be output to STDOUT
@@ -18,6 +18,7 @@ module Gitlab
18
18
  autoload :DeploymentBase, 'gitlab/qa/scenario/test/instance/deployment_base'
19
19
  autoload :Image, 'gitlab/qa/scenario/test/instance/image'
20
20
  autoload :RelativeUrl, 'gitlab/qa/scenario/test/instance/relative_url'
21
+ autoload :RepositoryStorage, 'gitlab/qa/scenario/test/instance/repository_storage'
21
22
  autoload :Staging, 'gitlab/qa/scenario/test/instance/staging'
22
23
  autoload :Production, 'gitlab/qa/scenario/test/instance/production'
23
24
  autoload :Smoke, 'gitlab/qa/scenario/test/instance/smoke'
@@ -8,11 +8,12 @@ module Gitlab
8
8
  # the `qa/` directory located in GitLab CE / EE repositories.
9
9
  #
10
10
  class Specs < Scenario::Template
11
- attr_accessor :suite, :release, :network, :args, :volumes
11
+ attr_accessor :suite, :release, :network, :args, :volumes, :env
12
12
 
13
13
  def initialize
14
14
  @docker = Docker::Engine.new
15
15
  @volumes = {}
16
+ @env = {}
16
17
  end
17
18
 
18
19
  def perform # rubocop:disable Metrics/AbcSize
@@ -36,7 +37,7 @@ module Gitlab
36
37
  @docker.run(release.qa_image, release.qa_tag, suite, *args) do |command|
37
38
  command << "-t --rm --net=#{network || 'bridge'}"
38
39
 
39
- Runtime::Env.variables.each do |key, value|
40
+ env.merge(Runtime::Env.variables).each do |key, value|
40
41
  command.env(key, value)
41
42
  end
42
43
 
@@ -35,6 +35,7 @@ module Gitlab
35
35
  'CLOUDSDK_CORE_PROJECT' => :cloudsdk_core_project,
36
36
  'GCLOUD_REGION' => :gcloud_region,
37
37
  'SIGNUP_DISABLED' => :signup_disabled,
38
+ 'QA_ADDITIONAL_REPOSITORY_STORAGE' => :qa_additional_repository_storage,
38
39
  'QA_COOKIES' => :qa_cookie,
39
40
  'QA_DEBUG' => :qa_debug,
40
41
  'QA_LOG_PATH' => :qa_log_path,
@@ -0,0 +1,42 @@
1
+ module Gitlab
2
+ module QA
3
+ module Scenario
4
+ module Test
5
+ module Instance
6
+ class RepositoryStorage < Image
7
+ def perform(release, *rspec_args)
8
+ Component::Gitlab.perform do |gitlab|
9
+ gitlab.release = Release.new(release)
10
+ gitlab.name = 'gitlab'
11
+ gitlab.network = 'test'
12
+ gitlab.omnibus_config = <<~OMNIBUS
13
+ git_data_dirs({
14
+ 'default' => {
15
+ 'path' => '/var/opt/gitlab/git-data/repositories/default'
16
+ },
17
+ 'secondary' => {
18
+ 'path' => '/var/opt/gitlab/git-data/repositories/secondary'
19
+ }
20
+ });
21
+ OMNIBUS
22
+
23
+ rspec_args << "--" unless rspec_args.include?('--')
24
+ rspec_args << %w[--tag repository_storage]
25
+
26
+ gitlab.instance do
27
+ Component::Specs.perform do |specs|
28
+ specs.suite = 'Test::Instance::All'
29
+ specs.release = gitlab.release
30
+ specs.network = gitlab.network
31
+ specs.args = [gitlab.address, *rspec_args]
32
+ specs.env = { 'QA_ADDITIONAL_REPOSITORY_STORAGE' => 'secondary' }
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -1,5 +1,5 @@
1
1
  module Gitlab
2
2
  module QA
3
- VERSION = '4.19.3'.freeze
3
+ VERSION = '4.20.0'.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: 4.19.3
4
+ version: 4.20.0
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-02-13 00:00:00.000000000 Z
11
+ date: 2020-02-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control
@@ -207,6 +207,7 @@ files:
207
207
  - lib/gitlab/qa/scenario/test/instance/preprod.rb
208
208
  - lib/gitlab/qa/scenario/test/instance/production.rb
209
209
  - lib/gitlab/qa/scenario/test/instance/relative_url.rb
210
+ - lib/gitlab/qa/scenario/test/instance/repository_storage.rb
210
211
  - lib/gitlab/qa/scenario/test/instance/smoke.rb
211
212
  - lib/gitlab/qa/scenario/test/instance/staging.rb
212
213
  - lib/gitlab/qa/scenario/test/integration/elasticsearch.rb