gitlab-qa 10.3.0 → 10.4.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: 2851a74117f3479437a3e355883c7a407d4f56c41aac2700028cd9686790f0ea
4
- data.tar.gz: a284df28173a258c4948ead8be3c677df487c585b60cc73ffe88d5c12b6281b5
3
+ metadata.gz: d05691dfdac6eb77440c9440dc824c50fdb6e68530c23d53d1480eab92b17316
4
+ data.tar.gz: b76dbe09cea7fd9ca5092eaa024d0d9f69b33f35362f741145c4b576d486bf46
5
5
  SHA512:
6
- metadata.gz: 44a1c9743ce4fafbaad0e20f2de55598c4686598a2c3ac50d9da69565e72a477e3a0ab90f909fb32ed2b153129912b365db19ee9af91814bf6db707dc4bc70f4
7
- data.tar.gz: f2d8e7accf348103ff3f7ab85467186dd11a7c51a5cdb691e3e8999716272ba54a06204257395a7594ea832c60b93d33a11fd198c57b957609599638ab3b2672
6
+ metadata.gz: bec6faa9d2f322f523ddd75ccf29497fadbb723a04ad4b545e7bb0a277e9e6e430b586eb2d21d3371326e6c7b1c1257dfc497da0e72f4cf1c27de9ff4705e5f8
7
+ data.tar.gz: bef3adb4164e0c9b9e756358cea2dbbf9b1802ea7410764291a109999540a151e666cd7ff84799ef0e2c91cc1a169ca2ea6b2871e732784c67e0eeaefd27037d
@@ -34,7 +34,7 @@ with the latest commit from https://gitlab.com/gitlab-org/gitlab-qa/commits/mast
34
34
 
35
35
  - Checklist after gitlab-qa version has been released by the post merge pipeline:
36
36
  - [ ] In the pipeline-common project, [update the GITLAB_QA_VERSION](https://gitlab.com/gitlab-org/quality/pipeline-common/-/blob/master/ci/base.gitlab-ci.yml) and [create a release](https://gitlab.com/gitlab-org/quality/pipeline-common#release-process).
37
- - [ ] In the GitLab project, update the ref for pipeline-common for [package-and-test](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/ci/package-and-test/main.gitlab-ci.yml) and [review-apps](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/ci/review-apps/qa.gitlab-ci.yml).
37
+ - [ ] In the GitLab project, update the ref for pipeline-common in [qa-common](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/ci/qa-common/main.gitlab-ci.yml) and [review-apps](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/ci/review-apps/qa.gitlab-ci.yml).
38
38
  - [ ] Unless already done by [renovate-gitlab-bot](https://gitlab.com/dashboard/merge_requests?scope=all&state=opened&author_username=gitlab-dependency-update-bot&label_name[]=Quality), or if you need it sooner, in the GitLab project, [update the gitlab-qa gem version](https://gitlab.com/gitlab-org/gitlab/-/blob/master/qa/Gemfile) and [`Gemfile.lock`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/qa/Gemfile.lock) (for an example, see: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/117054).
39
39
 
40
40
  /label ~Quality ~"type::maintenance" ~"maintenance::dependency"
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gitlab-qa (10.3.0)
4
+ gitlab-qa (10.4.1)
5
5
  activesupport (~> 6.1)
6
6
  gitlab (~> 4.18.0)
7
7
  http (~> 5.0)
@@ -1072,7 +1072,10 @@ gitlab-qa Test::Integration::RegistryTLS EE --omnibus-config object_storage_aws
1072
1072
 
1073
1073
  ### `Test::Instance::Image EE --omnibus-config decomposition_single_db`
1074
1074
 
1075
- This scenario is to run tests against a GitLab instance with a [decomposed database](https://gitlab.com/groups/gitlab-org/-/epics/6160) using a single database:
1075
+ **Note: The default Omnibus config is using a single database
1076
+ with [two database connections](https://docs.gitlab.com/omnibus/settings/database.html#configuring-multiple-database-connections)**
1077
+
1078
+ This scenario is to run tests against a GitLab instance using a single database with only one `main` connection:
1076
1079
 
1077
1080
  ```ruby
1078
1081
  gitlab-qa Test::Instance::Image EE --omnibus-config decomposition_single_db
@@ -1080,7 +1083,7 @@ gitlab-qa Test::Instance::Image EE --omnibus-config decomposition_single_db
1080
1083
 
1081
1084
  ### `Test::Instance::Image EE --omnibus-config decomposition_multiple_db`
1082
1085
 
1083
- This scenario is to run tests against a GitLab instance with a [decomposed database](https://gitlab.com/groups/gitlab-org/-/epics/6160) using multiple databases:
1086
+ This scenario is to run tests against a GitLab instance using [multiple databases](https://docs.gitlab.com/ee/administration/postgresql/multiple_databases.html):
1084
1087
 
1085
1088
  ```ruby
1086
1089
  gitlab-qa Test::Instance::Image EE --omnibus-config decomposition_multiple_db
@@ -64,9 +64,11 @@ module Gitlab
64
64
  praefect['enable'] = false;
65
65
  prometheus['enable'] = true;
66
66
  gitaly['enable'] = true;
67
- gitaly['listen_addr'] = '0.0.0.0:#{gitaly_port}';
68
- gitaly['prometheus_listen_addr'] = '0.0.0.0:9236';
69
- gitaly['auth_token'] = 'PRAEFECT_INTERNAL_TOKEN';
67
+ gitaly['configuration'] = {
68
+ 'listen_addr': '0.0.0.0:#{gitaly_port}',
69
+ 'prometheus_listen_addr': '0.0.0.0:9236',
70
+ 'auth_token': 'PRAEFECT_INTERNAL_TOKEN'
71
+ }
70
72
  gitlab_shell['secret_token'] = 'GITLAB_SHELL_SECRET_TOKEN';
71
73
  gitlab_rails['internal_api_url'] = 'http://#{cluster_config.gitlab_name}.#{cluster_config.network}';
72
74
  git_data_dirs({
@@ -60,36 +60,46 @@ module Gitlab
60
60
  gitaly['enable'] = false;
61
61
  prometheus['enable'] = true;
62
62
  praefect['enable'] = true;
63
- praefect['listen_addr'] = '0.0.0.0:#{cluster_config.praefect_port}';
64
- praefect['prometheus_listen_addr'] = '0.0.0.0:9652';
65
- praefect['auth_token'] = 'PRAEFECT_EXTERNAL_TOKEN';
66
- praefect['reconciliation_scheduling_interval'] = '10s';
67
- praefect['database_host'] = '#{cluster_config.database_node_addr}';
68
- praefect['database_user'] = 'postgres';
69
- praefect['database_port'] = #{cluster_config.database_port};
70
- praefect['database_password'] = 'SQL_PASSWORD';
71
- praefect['database_dbname'] = 'praefect_production';
72
- praefect['database_sslmode'] = 'disable';
73
- praefect['database_direct_host'] = '#{cluster_config.database_node_addr}';
74
- praefect['database_direct_port'] = #{cluster_config.database_port};
75
- praefect['virtual_storages'] = {
76
- 'default' => {
77
- 'nodes' => {
78
- '#{cluster_config.primary_node_name}' => {
79
- 'address' => 'tcp://#{cluster_config.primary_node_addr}:#{cluster_config.primary_node_port}',
80
- 'token' => 'PRAEFECT_INTERNAL_TOKEN'
81
- },
82
- '#{cluster_config.secondary_node_name}' => {
83
- 'address' => 'tcp://#{cluster_config.secondary_node_addr}:#{cluster_config.secondary_node_port}',
84
- 'token' => 'PRAEFECT_INTERNAL_TOKEN'
85
- },
86
- '#{cluster_config.tertiary_node_name}' => {
87
- 'address' => 'tcp://#{cluster_config.tertiary_node_addr}:#{cluster_config.tertiary_node_port}',
88
- 'token' => 'PRAEFECT_INTERNAL_TOKEN'
89
- }
63
+ praefect['configuration'] = {
64
+ listen_addr: '0.0.0.0:#{cluster_config.praefect_port}',
65
+ prometheus_listen_addr: '0.0.0.0:9652',
66
+ auth: {
67
+ token: 'PRAEFECT_EXTERNAL_TOKEN'
68
+ },
69
+ reconciliation: {
70
+ scheduling_interval: '10s'
71
+ },
72
+ database: {
73
+ host: '#{cluster_config.database_node_addr}',
74
+ port: #{cluster_config.database_port},
75
+ user: 'postgres',
76
+ password: 'SQL_PASSWORD',
77
+ dbname: 'praefect_production',
78
+ sslmode: 'disable'
79
+ },
80
+ virtual_storage: [
81
+ {
82
+ name: 'default',
83
+ node: [
84
+ {
85
+ 'storage': '#{cluster_config.primary_node_name}',
86
+ 'address': 'tcp://#{cluster_config.primary_node_addr}:#{cluster_config.primary_node_port}',
87
+ 'token': 'PRAEFECT_INTERNAL_TOKEN'
88
+ },
89
+ {
90
+ 'storage': '#{cluster_config.secondary_node_name}',
91
+ 'address': 'tcp://#{cluster_config.secondary_node_addr}:#{cluster_config.secondary_node_port}',
92
+ 'token': 'PRAEFECT_INTERNAL_TOKEN'
93
+ },
94
+ {
95
+ 'storage': '#{cluster_config.tertiary_node_name}',
96
+ 'address': 'tcp://#{cluster_config.tertiary_node_addr}:#{cluster_config.tertiary_node_port}',
97
+ 'token': 'PRAEFECT_INTERNAL_TOKEN'
98
+ }
99
+ ],
90
100
  }
91
- }
92
- };
101
+ ]
102
+ }
93
103
  OMNIBUS
94
104
  end
95
105
  end
@@ -31,8 +31,6 @@ module Gitlab
31
31
  set_command_args(command)
32
32
  set_volumes(command)
33
33
  end
34
-
35
- wait_until_ready
36
34
  end
37
35
 
38
36
  def wait_until_ready(max_attempts: 20, wait: 2)
@@ -50,14 +48,15 @@ module Gitlab
50
48
  private
51
49
 
52
50
  def grid_healthy?
53
- HTTP.get('http://localhost:4444/ping').status&.success?
54
- rescue HTTP::ConnectionError => _e
51
+ HTTP.get('http://docker:4444/ping').status&.success?
52
+ rescue HTTP::ConnectionError => e
53
+ Runtime::Logger.debug(e)
55
54
  false
56
55
  end
57
56
 
58
57
  def pull_images
59
- docker.pull(image: "selenoid/chrome", tag: Runtime::Env.browser_version) if Runtime::Env.browser == :chrome && !Runtime::Env.mobile_layout?
60
- docker.pull(image: "selenoid/video-recorder", tag: "latest-release")
58
+ docker.pull(image: "selenoid/chrome", tag: Runtime::Env.browser_version) if Runtime::Env.browser == 'chrome' && !Runtime::Env.mobile_layout?
59
+ docker.pull(image: "selenoid/video-recorder", tag: "latest-release") if Runtime::Env.record_video
61
60
  end
62
61
 
63
62
  # Set custom run command arguments
@@ -22,6 +22,9 @@ module Gitlab
22
22
  'QA_REMOTE_MOBILE_DEVICE_NAME' => :remote_mobile_device_name,
23
23
  'QA_REMOTE_TUNNEL_ID' => :remote_tunnel_id,
24
24
  'QA_BROWSER' => :browser,
25
+ 'QA_BROWSER_VERSION' => :browser_version,
26
+ 'QA_RECORD_VIDEO' => :record_video,
27
+ 'QA_LAYOUT' => :layout,
25
28
  'QA_ADDITIONAL_REPOSITORY_STORAGE' => :qa_additional_repository_storage,
26
29
  'QA_PRAEFECT_REPOSITORY_STORAGE' => :qa_praefect_repository_storage,
27
30
  'QA_GITALY_NON_CLUSTER_STORAGE' => :qa_gitaly_non_cluster_storage,
@@ -364,10 +367,6 @@ module Gitlab
364
367
  env_var_value_if_defined('QA_LAYOUT')&.match?(/tablet|phone/i)
365
368
  end
366
369
 
367
- def browser_version
368
- env_var_value_if_defined('QA_BROWSER_VERSION')
369
- end
370
-
371
370
  def qa_run_type
372
371
  return env_var_value_if_defined('QA_RUN_TYPE') if env_var_value_valid?('QA_RUN_TYPE')
373
372
 
@@ -8,8 +8,7 @@ module Gitlab
8
8
  def configuration
9
9
  <<~OMNIBUS
10
10
  gitlab_rails['databases']['main']['enable'] = true
11
- gitlab_rails['databases']['ci']['enable'] = true
12
- gitlab_rails['databases']['ci']['db_database'] = 'gitlabhq_production'
11
+ gitlab_rails['databases']['ci']['enable'] = false
13
12
  OMNIBUS
14
13
  end
15
14
  end
@@ -87,10 +87,26 @@ module Gitlab
87
87
 
88
88
  def gitaly_omnibus
89
89
  <<~OMNIBUS
90
- gitaly['tls_listen_addr'] = '0.0.0.0:9999';
91
- gitaly['certificate_path'] = '/etc/gitlab/ssl/gitaly.test.crt';
92
- gitaly['key_path'] = '/etc/gitlab/ssl/gitaly.test.key';
93
-
90
+ gitaly['configuration'] = {
91
+ auth: {
92
+ token: 'abc123secret',
93
+ },
94
+ tls_listen_addr: '0.0.0.0:9999',
95
+ tls: {
96
+ certificate_path: '/etc/gitlab/ssl/gitaly.test.crt',
97
+ key_path: '/etc/gitlab/ssl/gitaly.test.key',
98
+ },
99
+ storage: [
100
+ {
101
+ name: 'default',
102
+ path: '/var/opt/gitlab/git-data/repositories',
103
+ },
104
+ {
105
+ name: 'storage1',
106
+ path: '/mnt/gitlab/git-data/repositories',
107
+ },
108
+ ],
109
+ };
94
110
  postgresql['enable'] = false;
95
111
  redis['enable'] = false;
96
112
  nginx['enable'] = false;
@@ -105,7 +121,6 @@ module Gitlab
105
121
  gitlab_rails['rake_cache_clear'] = false;
106
122
  gitlab_rails['auto_migrate'] = false;
107
123
 
108
- gitaly['auth_token'] = 'abc123secret';
109
124
  gitlab_shell['secret_token'] = 'shellsecret';
110
125
 
111
126
  gitlab_rails['internal_api_url'] = 'https://#{@gitlab_name}.#{@network}';
@@ -30,14 +30,22 @@ module Gitlab
30
30
  }
31
31
  });
32
32
  gitaly['enable'] = true;
33
- gitaly['listen_addr'] = '0.0.0.0:8075';
34
- gitaly['auth_token'] = 'secret-token';
35
- gitaly['storage'] = [
36
- {
37
- 'name' => 'gitaly',
38
- 'path' => '/var/opt/gitlab/git-data/repositories'
39
- }
40
- ];
33
+ gitaly['configuration'] = {
34
+ auth: {
35
+ token: 'secret-token',
36
+ },
37
+ listen_addr: '0.0.0.0:8075',
38
+ tls: {
39
+ certificate_path: '/etc/gitlab/ssl/gitaly.test.crt',
40
+ key_path: '/etc/gitlab/ssl/gitaly.test.key',
41
+ },
42
+ storage: [
43
+ {
44
+ name: 'gitaly',
45
+ path: '/var/opt/gitlab/git-data/repositories',
46
+ },
47
+ ],
48
+ };
41
49
  gitlab_rails['gitaly_token'] = 'secret-token';
42
50
  gitlab_shell['secret_token'] = 'GITLAB_SHELL_SECRET_TOKEN';
43
51
  prometheus['scrape_configs'] = [
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Gitlab
4
4
  module QA
5
- VERSION = '10.3.0'
5
+ VERSION = '10.4.1'
6
6
  end
7
7
  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: 10.3.0
4
+ version: 10.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitLab Quality
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-04-19 00:00:00.000000000 Z
11
+ date: 2023-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control