gitlab-qa 7.10.0 → 7.11.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: 6bdd2d8930d98c4af896a15b4f43a724a2c24300ae44d3498f7db96914592880
4
- data.tar.gz: 3db21c904e7b711d167f465f9a75abe32526bf89edfa095e2551d91786962e6d
3
+ metadata.gz: 67b2d093e79466c451d4dcd631006b2837be1af4a2ded8e90fc223cdbf90ac5a
4
+ data.tar.gz: fe671dab02093263ebd86a4d93247a9cc7f1f577e7420e73e0895d7310f9fb7b
5
5
  SHA512:
6
- metadata.gz: 7fcfe4c12d04ebcb175e7fc7f7d3a282e2a759eb89e07cff001741d80b476658a033de10e32acd7ed05b6c1008025ad0dda15ecf6dd4e8b2f347eb4c9c023080
7
- data.tar.gz: 70767539d91c219907646c5197127db1070317ea8038f2d01b7a5bcb150fcde36a6f6efad73c71357f8301069845b15c148fdf452a63c2a739a6c68eb229012f
6
+ metadata.gz: 94974ea4b47eba1e9ac585ab1e0673cb28d20bdb8b001d352c1a75032c649d799298833e58fde198e23efd219ad540064637d5cedc7b0af3d82d34d3cc6a7e24
7
+ data.tar.gz: bcac709cdb6bf3e1edef0a12946c4d790889aa4552c586d8173168db58791b93dd1c2ccacd69aada711f835a68807e83f48aba006654fca3e46fc81351a64018
@@ -13,10 +13,11 @@ module Gitlab
13
13
  end
14
14
 
15
15
  def execute!
16
- response =
16
+ response = with_retry_on_too_many_requests do
17
17
  Net::HTTP.start(uri.host, uri.port, use_ssl: true) do |http|
18
18
  http.request(build_request)
19
19
  end
20
+ end
20
21
 
21
22
  case response
22
23
  when Net::HTTPSuccess
@@ -34,6 +35,24 @@ module Gitlab
34
35
  req['Cookie'] = ENV['QA_COOKIES'] if ENV['QA_COOKIES']
35
36
  end
36
37
  end
38
+
39
+ def with_retry_on_too_many_requests
40
+ response = nil
41
+ retry_count = 0
42
+
43
+ while retry_count < 3
44
+ response = yield
45
+
46
+ break unless response.is_a?(Net::HTTPTooManyRequests)
47
+
48
+ retry_count += 1
49
+ wait_seconds = response["retry-after"].to_i
50
+ puts "Received 429 - Too many requests. Waiting for #{wait_seconds} seconds."
51
+ sleep wait_seconds
52
+ end
53
+
54
+ response
55
+ end
37
56
  end
38
57
  end
39
58
  end
@@ -1,5 +1,5 @@
1
1
  module Gitlab
2
2
  module QA
3
- VERSION = '7.10.0'.freeze
3
+ VERSION = '7.11.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: 7.10.0
4
+ version: 7.11.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: 2021-10-04 00:00:00.000000000 Z
11
+ date: 2021-10-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control