gitlab-qa 7.33.0 → 7.34.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e445e804d4da01a171e7ff5287ca8b39d8cdc9bbfa25a0ba05e0a8c60356fc19
4
- data.tar.gz: 75193391112311339c90b9d16bbf74575b18bffb69bb07126a670aecdef6743b
3
+ metadata.gz: 917c47b2fbead3c77db3cd6c441995a8324ed73735262542dcd94de854022a35
4
+ data.tar.gz: 7785db11c9eb0f1f7ff2ecf32b16b8fd95ad9bab9391711f2d0af05a7e903153
5
5
  SHA512:
6
- metadata.gz: 8d1c61664ca82330fc8a05c563fda8ec7037dee724b0dd6c140870f033b9f4e17281aaba0aa7eb4607ca9c7d67874d66a1f1f98520d47660a42417a4dc9df74b
7
- data.tar.gz: '0369df333021790180d99307aed50ebc146613ed70ad26ecf4b59b2312c18cdddbe01f7221399221df014c30de87ce050a5a21bc7652d875aad34421390aac56'
6
+ metadata.gz: c509e252f4bd1e7d405d517920e306e2cdf5233cd73a5fbf25a878cbb863a7c21e5fedb007c8ef461f7e34e1899b27ff989d92182c427575a125f4c99a39de9d
7
+ data.tar.gz: 9011ddab65c7c0218ed49a5cbd2cdaa26f2b2ce013eb005d9ba63ee067ce18306bf8475861156ca52d7e2272cc9c94588ac86016e90e7901ecdac94d4e2f6cbf
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gitlab-qa (7.33.0)
4
+ gitlab-qa (7.34.0)
5
5
  activesupport (~> 6.1)
6
6
  gitlab (~> 4.18.0)
7
7
  http (~> 5.0)
@@ -20,28 +20,14 @@ module Gitlab
20
20
  end
21
21
 
22
22
  def perform(release, *rspec_args)
23
- gitaly_primary_node = gitaly(@primary_node_name, release)
24
- gitaly_secondary_node = gitaly(@secondary_node_name, release)
25
- gitaly_tertiary_node = gitaly(@tertiary_node_name, release)
26
-
27
- sql_node = Component::PostgreSQL.new.tap do |sql|
28
- sql.name = @database
29
- sql.network = @network
30
- sql.instance(skip_teardown: true) do
31
- sql.run_psql '-d template1 -c "CREATE DATABASE praefect_production OWNER postgres"'
32
- end
33
- end
34
-
35
- praefect_node = Component::Gitlab.new.tap do |praefect|
36
- praefect.release = QA::Release.new(release)
37
- praefect.name = @praefect_node_name
38
- praefect.network = @network
39
- praefect.skip_availability_check = true
40
- praefect.seed_admin_token = false
41
-
42
- praefect.omnibus_configuration << praefect_omnibus_configuration
43
-
44
- praefect.instance(skip_teardown: true)
23
+ # The postgres container starts in seconds so not essential to parallelize it
24
+ # This also ensure that the docker network is created here, avoiding any potential race conditions later
25
+ # if the gitaly-cluster and GitLab containers attempt to create a network in parallel
26
+ @sql_node = postgres
27
+
28
+ gitaly_cluster = Thread.new do
29
+ Thread.current.abort_on_exception = true
30
+ start_gitaly_cluster(release)
45
31
  end
46
32
 
47
33
  Component::Gitlab.perform do |gitlab|
@@ -51,6 +37,8 @@ module Gitlab
51
37
 
52
38
  gitlab.omnibus_configuration << gitlab_omnibus_configuration
53
39
  gitlab.instance do
40
+ # Wait for gitaly cluster to finish booting, before attempting to run specs
41
+ gitaly_cluster.join
54
42
  Runtime::Logger.info('Running Gitaly Cluster specs!')
55
43
 
56
44
  if @tag
@@ -68,15 +56,25 @@ module Gitlab
68
56
  end
69
57
  end
70
58
  ensure
71
- praefect_node&.teardown
72
- sql_node&.teardown
73
- gitaly_primary_node&.teardown
74
- gitaly_secondary_node&.teardown
75
- gitaly_tertiary_node&.teardown
59
+ @praefect_node&.teardown
60
+ @sql_node&.teardown
61
+ @gitaly_primary_node&.teardown
62
+ @gitaly_secondary_node&.teardown
63
+ @gitaly_tertiary_node&.teardown
76
64
  end
77
65
 
78
66
  private
79
67
 
68
+ def start_gitaly_cluster(release)
69
+ Runtime::Logger.info("Starting Gitaly Cluster")
70
+ @gitaly_primary_node = gitaly(@primary_node_name, release)
71
+ @gitaly_secondary_node = gitaly(@secondary_node_name, release)
72
+ @gitaly_tertiary_node = gitaly(@tertiary_node_name, release)
73
+
74
+ @praefect_node = praefect(@praefect_node_name, release)
75
+ Runtime::Logger.info("Gitaly Cluster Ready")
76
+ end
77
+
80
78
  def disable_other_services
81
79
  <<~OMNIBUS
82
80
  postgresql['enable'] = false;
@@ -191,6 +189,30 @@ module Gitlab
191
189
  OMNIBUS
192
190
  end
193
191
 
192
+ def praefect(name, release)
193
+ Component::Gitlab.new.tap do |praefect|
194
+ praefect.release = QA::Release.new(release)
195
+ praefect.name = name
196
+ praefect.network = @network
197
+ praefect.skip_availability_check = true
198
+ praefect.seed_admin_token = false
199
+
200
+ praefect.omnibus_configuration << praefect_omnibus_configuration
201
+
202
+ praefect.instance(skip_teardown: true)
203
+ end
204
+ end
205
+
206
+ def postgres
207
+ Component::PostgreSQL.new.tap do |sql|
208
+ sql.name = @database
209
+ sql.network = @network
210
+ sql.instance(skip_teardown: true) do
211
+ sql.run_psql '-d template1 -c "CREATE DATABASE praefect_production OWNER postgres"'
212
+ end
213
+ end
214
+ end
215
+
194
216
  def gitaly(name, release)
195
217
  Component::Gitlab.new.tap do |gitaly|
196
218
  gitaly.release = QA::Release.new(release)
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Gitlab
4
4
  module QA
5
- VERSION = '7.33.0'
5
+ VERSION = '7.34.0'
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: 7.33.0
4
+ version: 7.34.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: 2022-06-10 00:00:00.000000000 Z
11
+ date: 2022-06-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control