gitlab-qa 5.10.1 → 5.13.3
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 +38 -0
- data/docs/what_tests_can_be_run.md +36 -0
- data/lib/gitlab/qa.rb +4 -0
- data/lib/gitlab/qa/component/elasticsearch.rb +2 -3
- data/lib/gitlab/qa/component/gitlab.rb +13 -2
- data/lib/gitlab/qa/component/jira.rb +73 -0
- data/lib/gitlab/qa/component/release.rb +13 -0
- data/lib/gitlab/qa/component/specs.rb +1 -1
- data/lib/gitlab/qa/component/staging.rb +2 -2
- data/lib/gitlab/qa/release.rb +5 -0
- data/lib/gitlab/qa/runtime/env.rb +8 -1
- data/lib/gitlab/qa/scenario/test/instance/any.rb +1 -1
- data/lib/gitlab/qa/scenario/test/instance/deployment_base.rb +1 -1
- data/lib/gitlab/qa/scenario/test/instance/geo.rb +1 -1
- data/lib/gitlab/qa/scenario/test/instance/release.rb +18 -0
- data/lib/gitlab/qa/scenario/test/instance/repository_storage.rb +1 -1
- data/lib/gitlab/qa/scenario/test/instance/smoke.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/elasticsearch.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/geo.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/gitaly_ha.rb +3 -3
- data/lib/gitlab/qa/scenario/test/integration/jira.rb +40 -0
- data/lib/gitlab/qa/scenario/test/integration/packages.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/praefect.rb +2 -2
- data/lib/gitlab/qa/scenario/test/integration/saml.rb +1 -1
- data/lib/gitlab/qa/scenario/test/integration/smtp.rb +1 -1
- data/lib/gitlab/qa/scenario/test/omnibus/update.rb +2 -2
- data/lib/gitlab/qa/scenario/test/omnibus/upgrade.rb +1 -1
- data/lib/gitlab/qa/scenario/test/sanity/version.rb +1 -1
- data/lib/gitlab/qa/version.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eee3720392a340a5c044a75f4c171c69a206454bb5a55f912af79292c051e31f
|
4
|
+
data.tar.gz: 7655dfd19f4a18c9db558ed70b5f0321d89c2aa3556b3ab025d4dc495afd4ac5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73394e3956b9d62e290c605f10694c102da38681741593bd521d76fc513ca8b45ba919f669c64341db36f9a671e62764ea50f48b8eaf91bc7fe52a586f7b052e
|
7
|
+
data.tar.gz: 3e325da83b7efd3084c8db5172cc03f5eda6fbccd5fe6e457c2fac1441773c22b18c54fcafe0eb37b00ad8ab57fef7e9d4d587cb8da89d2e28d2589adad1cec8
|
data/.gitlab-ci.yml
CHANGED
@@ -848,6 +848,44 @@ ee:smtp:
|
|
848
848
|
variables:
|
849
849
|
QA_SCENARIO: "Test::Integration::SMTP"
|
850
850
|
|
851
|
+
ce:jira:
|
852
|
+
extends:
|
853
|
+
- .test
|
854
|
+
- .high-capacity
|
855
|
+
- .ce-qa
|
856
|
+
- .rspec-report-opts
|
857
|
+
variables:
|
858
|
+
QA_SCENARIO: "Test::Integration::Jira"
|
859
|
+
|
860
|
+
ce:jira-quarantine:
|
861
|
+
extends:
|
862
|
+
- .test
|
863
|
+
- .high-capacity
|
864
|
+
- .ce-qa
|
865
|
+
- .quarantine
|
866
|
+
- .rspec-report-opts
|
867
|
+
variables:
|
868
|
+
QA_SCENARIO: "Test::Integration::Jira"
|
869
|
+
|
870
|
+
ee:jira:
|
871
|
+
extends:
|
872
|
+
- .test
|
873
|
+
- .high-capacity
|
874
|
+
- .ee-qa
|
875
|
+
- .rspec-report-opts
|
876
|
+
variables:
|
877
|
+
QA_SCENARIO: "Test::Integration::Jira"
|
878
|
+
|
879
|
+
ee:jira-quarantine:
|
880
|
+
extends:
|
881
|
+
- .test
|
882
|
+
- .high-capacity
|
883
|
+
- .ee-qa
|
884
|
+
- .quarantine
|
885
|
+
- .rspec-report-opts
|
886
|
+
variables:
|
887
|
+
QA_SCENARIO: "Test::Integration::Jira"
|
888
|
+
|
851
889
|
# This job requires the `GITLAB_QA_ACCESS_TOKEN` and `GITLAB_QA_DEV_ACCESS_TOKEN`
|
852
890
|
# variable to be passed when triggered.
|
853
891
|
staging:
|
@@ -80,6 +80,8 @@ For more details on the internals, please read the
|
|
80
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
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
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.
|
83
85
|
|
84
86
|
## [Supported Remote Grid environment variables](./running_against_remote_grid.md)
|
85
87
|
|
@@ -470,6 +472,35 @@ Example:
|
|
470
472
|
$ gitlab-qa Test::Integration::SMTP CE
|
471
473
|
```
|
472
474
|
|
475
|
+
### `Test::Integration::Jira CE|EE|<full image address>`
|
476
|
+
|
477
|
+
This tests that a GitLab instance works as expected with an external
|
478
|
+
Jira server.
|
479
|
+
It starts up a Docker container for Jira Server and another container
|
480
|
+
for GitLab.
|
481
|
+
|
482
|
+
To run tests against the GitLab container, a GitLab QA (`gitlab/gitlab-qa`)
|
483
|
+
container is spun up and tests are run from it by running the
|
484
|
+
`Test::Integration::Jira` scenario.
|
485
|
+
|
486
|
+
**Required environment variables:**
|
487
|
+
|
488
|
+
- [For EE only] `EE_LICENSE`: A valid EE license.
|
489
|
+
- `JIRA_ADMIN_USERNAME`: Username for authenticating with Jira server as admin.
|
490
|
+
- `JIRA_ADMIN_PASSWORD`: Password for authenticating with Jira server as admin.
|
491
|
+
|
492
|
+
Example:
|
493
|
+
|
494
|
+
```
|
495
|
+
$ export JIRA_ADMIN_USERNAME=<jira_admin_username>
|
496
|
+
$ export JIRA_ADMIN_PASSWORD=<jira_admin_password>
|
497
|
+
|
498
|
+
# For EE
|
499
|
+
$ export EE_LICENSE=$(cat /path/to/GitLab.gitlab_license)
|
500
|
+
|
501
|
+
$ gitlab-qa Test::Integration::Jira EE
|
502
|
+
```
|
503
|
+
|
473
504
|
### `Test::Instance::Any CE|EE|<full image address>:nightly|latest|any_tag http://your.instance.gitlab`
|
474
505
|
|
475
506
|
This tests that a live GitLab instance works as expected by running tests
|
@@ -551,6 +582,11 @@ but will run tests against [`pre.gitlab.com`](https://pre.gitlab.com).
|
|
551
582
|
Note that [`pre.gitlab.com`](https://pre.gitlab.com) is used as an Interim
|
552
583
|
Performance Testbed and [will be replaced with the actual testbed in the future](https://gitlab.com/groups/gitlab-com/gl-infra/-/epics/60).
|
553
584
|
|
585
|
+
### `Test::Instance::Release`
|
586
|
+
|
587
|
+
This scenario functions the same as `Test::Instance::Staging`
|
588
|
+
but will run tests against [`release.gitlab.net`](https://release.gitlab.net).
|
589
|
+
|
554
590
|
### `Test::Instance::Smoke`
|
555
591
|
|
556
592
|
This scenario will run a limited amount of tests selected from the test suite tagged by `:smoke`.
|
data/lib/gitlab/qa.rb
CHANGED
@@ -25,6 +25,7 @@ module Gitlab
|
|
25
25
|
autoload :Production, 'gitlab/qa/scenario/test/instance/production'
|
26
26
|
autoload :Smoke, 'gitlab/qa/scenario/test/instance/smoke'
|
27
27
|
autoload :Preprod, 'gitlab/qa/scenario/test/instance/preprod'
|
28
|
+
autoload :Release, 'gitlab/qa/scenario/test/instance/release'
|
28
29
|
autoload :Geo, 'gitlab/qa/scenario/test/instance/geo'
|
29
30
|
autoload :StagingGeo, 'gitlab/qa/scenario/test/instance/staging_geo'
|
30
31
|
end
|
@@ -52,6 +53,7 @@ module Gitlab
|
|
52
53
|
autoload :Elasticsearch, 'gitlab/qa/scenario/test/integration/elasticsearch'
|
53
54
|
autoload :SMTP, 'gitlab/qa/scenario/test/integration/smtp'
|
54
55
|
autoload :GitalyHA, 'gitlab/qa/scenario/test/integration/gitaly_ha'
|
56
|
+
autoload :Jira, 'gitlab/qa/scenario/test/integration/jira'
|
55
57
|
end
|
56
58
|
|
57
59
|
module Sanity
|
@@ -70,8 +72,10 @@ module Gitlab
|
|
70
72
|
autoload :Production, 'gitlab/qa/component/production'
|
71
73
|
autoload :Minio, 'gitlab/qa/component/minio'
|
72
74
|
autoload :Preprod, 'gitlab/qa/component/preprod'
|
75
|
+
autoload :Release, 'gitlab/qa/component/release'
|
73
76
|
autoload :Elasticsearch, 'gitlab/qa/component/elasticsearch'
|
74
77
|
autoload :MailHog, 'gitlab/qa/component/mail_hog'
|
78
|
+
autoload :Jira, 'gitlab/qa/component/jira'
|
75
79
|
autoload :PostgreSQL, 'gitlab/qa/component/postgresql'
|
76
80
|
end
|
77
81
|
|
@@ -5,7 +5,6 @@ module Gitlab
|
|
5
5
|
include Scenario::Actable
|
6
6
|
|
7
7
|
ELASTIC_IMAGE = 'docker.elastic.co/elasticsearch/elasticsearch'.freeze
|
8
|
-
ELASTIC_IMAGE_TAG = '6.4.2'.freeze
|
9
8
|
|
10
9
|
attr_reader :docker
|
11
10
|
attr_accessor :environment, :network
|
@@ -29,14 +28,14 @@ module Gitlab
|
|
29
28
|
end
|
30
29
|
|
31
30
|
def prepare
|
32
|
-
@docker.pull(ELASTIC_IMAGE,
|
31
|
+
@docker.pull(ELASTIC_IMAGE, Runtime::Env.elastic_version)
|
33
32
|
return if @docker.network_exists?(network)
|
34
33
|
|
35
34
|
@docker.network_create(network)
|
36
35
|
end
|
37
36
|
|
38
37
|
def start
|
39
|
-
@docker.run(ELASTIC_IMAGE,
|
38
|
+
@docker.run(ELASTIC_IMAGE, Runtime::Env.elastic_version) do |command|
|
40
39
|
command << "-d"
|
41
40
|
command << "--name #{name}"
|
42
41
|
command << "--net #{network}"
|
@@ -53,7 +53,7 @@ module Gitlab
|
|
53
53
|
end
|
54
54
|
|
55
55
|
def release=(release)
|
56
|
-
@release = Release.new(release)
|
56
|
+
@release = QA::Release.new(release)
|
57
57
|
end
|
58
58
|
|
59
59
|
def name
|
@@ -134,7 +134,18 @@ module Gitlab
|
|
134
134
|
'login',
|
135
135
|
'--username gitlab-qa-bot',
|
136
136
|
%(--password "#{Runtime::Env.dev_access_token_variable}"),
|
137
|
-
Release::DEV_REGISTRY
|
137
|
+
QA::Release::DEV_REGISTRY
|
138
|
+
]
|
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
|
138
149
|
]
|
139
150
|
)
|
140
151
|
end
|
@@ -0,0 +1,73 @@
|
|
1
|
+
module Gitlab
|
2
|
+
module QA
|
3
|
+
module Component
|
4
|
+
class Jira
|
5
|
+
include Scenario::Actable
|
6
|
+
|
7
|
+
JIRA_IMAGE = 'registry.gitlab.com/gitlab-org/gitlab-qa/jira-gitlab'.freeze
|
8
|
+
JIRA_IMAGE_TAG = '8.8-project-and-issue'.freeze
|
9
|
+
|
10
|
+
attr_reader :docker
|
11
|
+
attr_accessor :environment, :network
|
12
|
+
attr_writer :name
|
13
|
+
|
14
|
+
def initialize
|
15
|
+
@docker = Docker::Engine.new
|
16
|
+
@environment = {}
|
17
|
+
end
|
18
|
+
|
19
|
+
def name
|
20
|
+
@name ||= "jira"
|
21
|
+
end
|
22
|
+
|
23
|
+
def hostname
|
24
|
+
"#{name}.#{network}"
|
25
|
+
end
|
26
|
+
|
27
|
+
def instance
|
28
|
+
raise 'Please provide a block!' unless block_given?
|
29
|
+
|
30
|
+
prepare
|
31
|
+
start
|
32
|
+
|
33
|
+
yield self
|
34
|
+
ensure
|
35
|
+
teardown
|
36
|
+
end
|
37
|
+
|
38
|
+
def prepare
|
39
|
+
@docker.pull(JIRA_IMAGE, JIRA_IMAGE_TAG)
|
40
|
+
|
41
|
+
return if @docker.network_exists?(network)
|
42
|
+
|
43
|
+
@docker.network_create(network)
|
44
|
+
end
|
45
|
+
|
46
|
+
def start
|
47
|
+
docker.run(JIRA_IMAGE, JIRA_IMAGE_TAG) do |command|
|
48
|
+
command << '-d '
|
49
|
+
command << "--name #{name}"
|
50
|
+
command << "--net #{network}"
|
51
|
+
command << "--hostname #{hostname}"
|
52
|
+
command << "--publish 8080:8080"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def restart
|
57
|
+
@docker.restart(name)
|
58
|
+
end
|
59
|
+
|
60
|
+
def teardown
|
61
|
+
raise 'Invalid instance name!' unless name
|
62
|
+
|
63
|
+
@docker.stop(name)
|
64
|
+
@docker.remove(name)
|
65
|
+
end
|
66
|
+
|
67
|
+
def set_jira_hostname
|
68
|
+
::Gitlab::QA::Runtime::Env.jira_hostname = hostname
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
@@ -10,7 +10,7 @@ module Gitlab
|
|
10
10
|
GEO_SECONDARY_ADDRESS = 'https://geo.staging.gitlab.com'.freeze
|
11
11
|
|
12
12
|
def self.release
|
13
|
-
Release.new(image)
|
13
|
+
QA::Release.new(image)
|
14
14
|
rescue Support::InvalidResponseError => ex
|
15
15
|
warn ex.message
|
16
16
|
warn "#{ex.response.code} #{ex.response.message}: #{ex.response.body}"
|
@@ -78,7 +78,7 @@ module Gitlab
|
|
78
78
|
private
|
79
79
|
|
80
80
|
def official?
|
81
|
-
Release::DEV_OFFICIAL_TAG_REGEX.match?(version)
|
81
|
+
QA::Release::DEV_OFFICIAL_TAG_REGEX.match?(version)
|
82
82
|
end
|
83
83
|
|
84
84
|
def revision
|
data/lib/gitlab/qa/release.rb
CHANGED
@@ -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
|
@@ -74,7 +74,10 @@ module Gitlab
|
|
74
74
|
'SLACK_ICON_EMOJI' => :slack_icon_emoji,
|
75
75
|
'GITLAB_QA_FORMLESS_LOGIN_TOKEN' => :gitlab_qa_formless_login_token,
|
76
76
|
'GEO_MAX_FILE_REPLICATION_TIME' => :geo_max_file_replication_time,
|
77
|
-
'GEO_MAX_DB_REPLICATION_TIME' => :geo_max_db_replication_time
|
77
|
+
'GEO_MAX_DB_REPLICATION_TIME' => :geo_max_db_replication_time,
|
78
|
+
'JIRA_HOSTNAME' => :jira_hostname,
|
79
|
+
'JIRA_ADMIN_USERNAME' => :jira_admin_username,
|
80
|
+
'JIRA_ADMIN_PASSWORD' => :jira_admin_password
|
78
81
|
}.freeze
|
79
82
|
|
80
83
|
ENV_VARIABLES.each_value do |accessor|
|
@@ -133,6 +136,10 @@ module Gitlab
|
|
133
136
|
@host_artifacts_dir ||= File.join(ENV['QA_ARTIFACTS_DIR'] || '/tmp/gitlab-qa', Runtime::Env.run_id)
|
134
137
|
end
|
135
138
|
|
139
|
+
def elastic_version
|
140
|
+
ENV['ELASTIC_VERSION'] || '6.4.2'.freeze
|
141
|
+
end
|
142
|
+
|
136
143
|
def variables
|
137
144
|
vars = {}
|
138
145
|
|
@@ -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,
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Gitlab
|
2
|
+
module QA
|
3
|
+
module Scenario
|
4
|
+
module Test
|
5
|
+
module Instance
|
6
|
+
##
|
7
|
+
# Run test suite against release.gitlab.net
|
8
|
+
#
|
9
|
+
class Release < DeploymentBase
|
10
|
+
def deployment_component
|
11
|
+
Component::Release
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -6,7 +6,7 @@ module Gitlab
|
|
6
6
|
class RepositoryStorage < Image
|
7
7
|
def perform(release, *rspec_args)
|
8
8
|
Component::Gitlab.perform do |gitlab|
|
9
|
-
gitlab.release = Release.new(release)
|
9
|
+
gitlab.release = QA::Release.new(release)
|
10
10
|
gitlab.name = 'gitlab'
|
11
11
|
gitlab.network = 'test'
|
12
12
|
gitlab.omnibus_config = <<~OMNIBUS
|
@@ -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
|
@@ -28,7 +28,7 @@ module Gitlab
|
|
28
28
|
sql.run_psql '-d template1 -c "CREATE DATABASE praefect_production OWNER postgres"'
|
29
29
|
|
30
30
|
Component::Gitlab.perform do |praefect|
|
31
|
-
praefect.release = Release.new(release)
|
31
|
+
praefect.release = QA::Release.new(release)
|
32
32
|
praefect.name = @praefect_node
|
33
33
|
praefect.network = @network
|
34
34
|
praefect.skip_check = true
|
@@ -37,7 +37,7 @@ module Gitlab
|
|
37
37
|
|
38
38
|
praefect.instance do
|
39
39
|
Component::Gitlab.perform do |gitlab|
|
40
|
-
gitlab.release = Release.new(release)
|
40
|
+
gitlab.release = QA::Release.new(release)
|
41
41
|
gitlab.name = gitlab_name
|
42
42
|
gitlab.network = @network
|
43
43
|
|
@@ -146,7 +146,7 @@ module Gitlab
|
|
146
146
|
|
147
147
|
def gitaly(name, release)
|
148
148
|
Component::Gitlab.perform do |gitaly|
|
149
|
-
gitaly.release = Release.new(release)
|
149
|
+
gitaly.release = QA::Release.new(release)
|
150
150
|
gitaly.name = name
|
151
151
|
gitaly.network = @network
|
152
152
|
gitaly.skip_check = true
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Gitlab
|
2
|
+
module QA
|
3
|
+
module Scenario
|
4
|
+
module Test
|
5
|
+
module Integration
|
6
|
+
class Jira < Scenario::Template
|
7
|
+
def perform(release, *rspec_args)
|
8
|
+
Component::Gitlab.perform do |gitlab|
|
9
|
+
gitlab.release = QA::Release.new(release)
|
10
|
+
gitlab.network = 'test'
|
11
|
+
gitlab.name = 'gitlab-jira'
|
12
|
+
|
13
|
+
Component::Jira.perform do |jira|
|
14
|
+
jira.network = gitlab.network
|
15
|
+
jira.set_jira_hostname
|
16
|
+
|
17
|
+
jira.instance do
|
18
|
+
gitlab.instance do
|
19
|
+
puts 'Running Jira specs!'
|
20
|
+
|
21
|
+
rspec_args << "--" unless rspec_args.include?('--')
|
22
|
+
rspec_args << %w[--tag jira]
|
23
|
+
|
24
|
+
Component::Specs.perform do |specs|
|
25
|
+
specs.suite = 'Test::Instance::All'
|
26
|
+
specs.release = gitlab.release
|
27
|
+
specs.network = gitlab.network
|
28
|
+
specs.args = [gitlab.address, *rspec_args]
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -6,7 +6,7 @@ module Gitlab
|
|
6
6
|
class Packages < Scenario::Template
|
7
7
|
def perform(release, *rspec_args)
|
8
8
|
Component::Gitlab.perform do |gitlab|
|
9
|
-
gitlab.release = Release.new(release)
|
9
|
+
gitlab.release = QA::Release.new(release)
|
10
10
|
gitlab.name = 'gitlab-packages'
|
11
11
|
gitlab.network = 'test'
|
12
12
|
gitlab.omnibus_config = <<~OMNIBUS
|
@@ -9,7 +9,7 @@ module Gitlab
|
|
9
9
|
Docker::Volumes.new.with_temporary_volumes do |volumes|
|
10
10
|
# Create the Praefect database before enabling Praefect
|
11
11
|
Component::Gitlab.perform do |gitlab|
|
12
|
-
gitlab.release = Release.new(release)
|
12
|
+
gitlab.release = QA::Release.new(release)
|
13
13
|
gitlab.name = 'gitlab'
|
14
14
|
gitlab.network = 'test'
|
15
15
|
gitlab.volumes = volumes
|
@@ -27,7 +27,7 @@ module Gitlab
|
|
27
27
|
|
28
28
|
# Restart GitLab with Praefect enabled and then run the tests
|
29
29
|
Component::Gitlab.perform do |gitlab|
|
30
|
-
gitlab.release = Release.new(release)
|
30
|
+
gitlab.release = QA::Release.new(release)
|
31
31
|
gitlab.name = 'gitlab'
|
32
32
|
gitlab.network = 'test'
|
33
33
|
gitlab.volumes = volumes
|
@@ -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!'
|
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: 5.
|
4
|
+
version: 5.13.3
|
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-
|
11
|
+
date: 2020-05-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: climate_control
|
@@ -240,12 +240,14 @@ files:
|
|
240
240
|
- lib/gitlab/qa/component/elasticsearch.rb
|
241
241
|
- lib/gitlab/qa/component/gitlab.rb
|
242
242
|
- lib/gitlab/qa/component/internet_tunnel.rb
|
243
|
+
- lib/gitlab/qa/component/jira.rb
|
243
244
|
- lib/gitlab/qa/component/ldap.rb
|
244
245
|
- lib/gitlab/qa/component/mail_hog.rb
|
245
246
|
- lib/gitlab/qa/component/minio.rb
|
246
247
|
- lib/gitlab/qa/component/postgresql.rb
|
247
248
|
- lib/gitlab/qa/component/preprod.rb
|
248
249
|
- lib/gitlab/qa/component/production.rb
|
250
|
+
- lib/gitlab/qa/component/release.rb
|
249
251
|
- lib/gitlab/qa/component/saml.rb
|
250
252
|
- lib/gitlab/qa/component/specs.rb
|
251
253
|
- lib/gitlab/qa/component/staging.rb
|
@@ -272,6 +274,7 @@ files:
|
|
272
274
|
- lib/gitlab/qa/scenario/test/instance/preprod.rb
|
273
275
|
- lib/gitlab/qa/scenario/test/instance/production.rb
|
274
276
|
- lib/gitlab/qa/scenario/test/instance/relative_url.rb
|
277
|
+
- lib/gitlab/qa/scenario/test/instance/release.rb
|
275
278
|
- lib/gitlab/qa/scenario/test/instance/repository_storage.rb
|
276
279
|
- lib/gitlab/qa/scenario/test/instance/smoke.rb
|
277
280
|
- lib/gitlab/qa/scenario/test/instance/staging.rb
|
@@ -281,6 +284,7 @@ files:
|
|
281
284
|
- lib/gitlab/qa/scenario/test/integration/gitaly_ha.rb
|
282
285
|
- lib/gitlab/qa/scenario/test/integration/group_saml.rb
|
283
286
|
- lib/gitlab/qa/scenario/test/integration/instance_saml.rb
|
287
|
+
- lib/gitlab/qa/scenario/test/integration/jira.rb
|
284
288
|
- lib/gitlab/qa/scenario/test/integration/kubernetes.rb
|
285
289
|
- lib/gitlab/qa/scenario/test/integration/ldap.rb
|
286
290
|
- lib/gitlab/qa/scenario/test/integration/ldap_no_server.rb
|