gitlabci-bundle-update-mr 1.1.0 → 1.1.1.beta1

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: 328b0a88d5bbc5b521b604ee4d223ebe299b0b3eeb130680c18683ff8150bfc4
4
- data.tar.gz: fff81a3041e33440121420c3adbace6229105eddce5ce3514e726313af5a8d1a
3
+ metadata.gz: 229a9fbae1ea6840f3f383b08cc83a15ff50d28739f06dfd5987564424ae7ab2
4
+ data.tar.gz: 677df6d813f5b0609e336323496c23c9a789c2fc5dfdcff31cb3095f57057c90
5
5
  SHA512:
6
- metadata.gz: e1b567cbe53d70bb6677221d500d07a417db35dfbbfc8c2061056926b1e6a2840f203cfab1ed8983c48591d74a28efbe08411bbebb122e27d08f7a2535c18ef0
7
- data.tar.gz: 3bba3ccee80b94393b1294a0238b4bf0a21e8463a8b1e42ef99e4a5b4d8ed3574b50a70219efc8114d5dab82ced6abfaf9b9335f23b268f9cbca99e1baa0f5bc
6
+ metadata.gz: 294bd4ec7d61cbf932e168386463eed2428f846e96e92959a44f4380e9f6640e98d75b8f17c0a8217a4be42401adebb57dd7bb623ceb81e4fd52e6cdb3aba329
7
+ data.tar.gz: 53be10193139b5fc00e3a4f228362b60ebf3a83c9565737307c442047855fd18faad20085a81a3a314313a64a985af3aafd6799842ccd160ed3f43d673315ce7
@@ -30,7 +30,8 @@ continuous_bundle_update:
30
30
  - vendor/bundle/
31
31
 
32
32
  before_script:
33
- - bundle install --path vendor/bundle
33
+ - bundle config --local path 'vendor/bundle'
34
+ - bundle install --retry=3 --jobs=$(nproc)
34
35
  - bundle clean
35
36
 
36
37
  except:
@@ -62,6 +63,11 @@ test:2.7:
62
63
 
63
64
  image: ruby:2.7
64
65
 
66
+ test:3.0:
67
+ extends: .test
68
+
69
+ image: ruby:3.0
70
+
65
71
  test:trunk:
66
72
  extends: .test
67
73
 
@@ -1,16 +1,16 @@
1
1
  GIT
2
2
  remote: https://github.com/sue445/onkcop.git
3
- revision: 4f7e76b93efff0b7d4d7d9058a487d435479b129
3
+ revision: d09f75a5eeb1969800cca160f653325771590fae
4
4
  branch: develop
5
5
  specs:
6
6
  onkcop (0.53.0.3)
7
7
  rubocop (>= 0.53.0)
8
- rubocop-rspec (>= 1.24.0)
8
+ rubocop-rspec (>= 1.34.0)
9
9
 
10
10
  PATH
11
11
  remote: .
12
12
  specs:
13
- gitlabci-bundle-update-mr (1.1.0)
13
+ gitlabci-bundle-update-mr (1.1.1.beta1)
14
14
  bundler
15
15
  compare_linker (>= 1.4.3)
16
16
  gitlab (>= 4.14.1)
@@ -27,16 +27,18 @@ GEM
27
27
  compare_linker (1.4.4)
28
28
  httpclient
29
29
  octokit
30
- crack (0.4.4)
30
+ crack (0.4.5)
31
+ rexml
31
32
  diff-lcs (1.4.4)
32
- docile (1.3.2)
33
+ docile (1.3.4)
33
34
  dotenv (2.7.6)
34
- faraday (1.0.1)
35
+ faraday (1.2.0)
35
36
  multipart-post (>= 1.2, < 3)
37
+ ruby2_keywords
36
38
  git (1.7.0)
37
39
  rchardet (~> 1.8)
38
- gitlab (4.16.1)
39
- httparty (~> 0.14, >= 0.14.0)
40
+ gitlab (4.17.0)
41
+ httparty (~> 0.18)
40
42
  terminal-table (~> 1.5, >= 1.5.1)
41
43
  gitlab_awesome_release (1.0.2)
42
44
  dotenv
@@ -50,14 +52,14 @@ GEM
50
52
  method_source (1.0.0)
51
53
  mime-types (3.3.1)
52
54
  mime-types-data (~> 3.2015)
53
- mime-types-data (3.2020.0512)
55
+ mime-types-data (3.2020.1104)
54
56
  multi_xml (0.6.0)
55
57
  multipart-post (2.1.1)
56
- octokit (4.18.0)
58
+ octokit (4.19.0)
57
59
  faraday (>= 0.9)
58
60
  sawyer (~> 0.8.0, >= 0.5.3)
59
- parallel (1.19.2)
60
- parser (2.7.1.5)
61
+ parallel (1.20.1)
62
+ parser (3.0.0.0)
61
63
  ast (~> 2.4.1)
62
64
  pry (0.13.1)
63
65
  coderay (~> 1.1)
@@ -67,66 +69,70 @@ GEM
67
69
  pry (~> 0.13.0)
68
70
  public_suffix (4.0.6)
69
71
  rainbow (3.0.0)
70
- rake (13.0.1)
72
+ rake (13.0.3)
71
73
  rchardet (1.8.0)
72
- regexp_parser (1.8.0)
74
+ regexp_parser (2.0.2)
73
75
  restore_bundled_with (1.0.0)
74
76
  git
75
77
  thor
76
78
  rexml (3.2.4)
77
- rspec (3.9.0)
78
- rspec-core (~> 3.9.0)
79
- rspec-expectations (~> 3.9.0)
80
- rspec-mocks (~> 3.9.0)
81
- rspec-core (3.9.2)
82
- rspec-support (~> 3.9.3)
83
- rspec-expectations (3.9.2)
79
+ rspec (3.10.0)
80
+ rspec-core (~> 3.10.0)
81
+ rspec-expectations (~> 3.10.0)
82
+ rspec-mocks (~> 3.10.0)
83
+ rspec-core (3.10.1)
84
+ rspec-support (~> 3.10.0)
85
+ rspec-expectations (3.10.1)
84
86
  diff-lcs (>= 1.2.0, < 2.0)
85
- rspec-support (~> 3.9.0)
87
+ rspec-support (~> 3.10.0)
86
88
  rspec-its (1.3.0)
87
89
  rspec-core (>= 3.0.0)
88
90
  rspec-expectations (>= 3.0.0)
89
- rspec-mocks (3.9.1)
91
+ rspec-mocks (3.10.0)
90
92
  diff-lcs (>= 1.2.0, < 2.0)
91
- rspec-support (~> 3.9.0)
92
- rspec-support (3.9.3)
93
+ rspec-support (~> 3.10.0)
94
+ rspec-support (3.10.1)
93
95
  rspec-temp_dir (1.1.0)
94
96
  rspec (>= 3.0)
95
- rubocop (0.92.0)
97
+ rubocop (1.7.0)
96
98
  parallel (~> 1.10)
97
99
  parser (>= 2.7.1.5)
98
100
  rainbow (>= 2.2.2, < 4.0)
99
- regexp_parser (>= 1.7)
101
+ regexp_parser (>= 1.8, < 3.0)
100
102
  rexml
101
- rubocop-ast (>= 0.5.0)
103
+ rubocop-ast (>= 1.2.0, < 2.0)
102
104
  ruby-progressbar (~> 1.7)
103
105
  unicode-display_width (>= 1.4.0, < 2.0)
104
- rubocop-ast (0.6.0)
106
+ rubocop-ast (1.3.0)
105
107
  parser (>= 2.7.1.5)
106
- rubocop-performance (1.8.1)
107
- rubocop (>= 0.87.0)
108
+ rubocop-performance (1.9.1)
109
+ rubocop (>= 0.90.0, < 2.0)
108
110
  rubocop-ast (>= 0.4.0)
109
- rubocop-rspec (1.43.2)
110
- rubocop (~> 0.87)
111
+ rubocop-rspec (2.1.0)
112
+ rubocop (~> 1.0)
113
+ rubocop-ast (>= 1.1.0)
111
114
  rubocop_auto_corrector (0.4.1)
112
115
  rubocop (>= 0.87.0)
113
116
  ruby-progressbar (1.10.1)
117
+ ruby2_keywords (0.0.2)
114
118
  sawyer (0.8.2)
115
119
  addressable (>= 2.3.5)
116
120
  faraday (> 0.8, < 2.0)
117
- simplecov (0.19.0)
121
+ simplecov (0.20.0)
118
122
  docile (~> 1.1)
119
123
  simplecov-html (~> 0.11)
124
+ simplecov_json_formatter (~> 0.1)
120
125
  simplecov-html (0.12.3)
126
+ simplecov_json_formatter (0.1.2)
121
127
  terminal-table (1.8.0)
122
128
  unicode-display_width (~> 1.1, >= 1.1.1)
123
129
  thor (1.0.1)
124
130
  unicode-display_width (1.7.0)
125
- webmock (3.9.1)
131
+ webmock (3.11.0)
126
132
  addressable (>= 2.3.6)
127
133
  crack (>= 0.3.2)
128
134
  hashdiff (>= 0.4.0, < 2.0.0)
129
- yard (0.9.25)
135
+ yard (0.9.26)
130
136
 
131
137
  PLATFORMS
132
138
  ruby
@@ -150,6 +156,3 @@ DEPENDENCIES
150
156
  simplecov
151
157
  webmock
152
158
  yard
153
-
154
- BUNDLED WITH
155
- 2.1.2
data/README.md CHANGED
@@ -129,7 +129,7 @@ Usage: gitlabci-bundle-update-mr [options]
129
129
  ```
130
130
 
131
131
  ## ProTip
132
- ### Randomly assign 1 person to MergeRequest
132
+ ### Randomly assign one person to MergeRequest
133
133
  ```yml
134
134
  include:
135
135
  - remote: "https://gitlab.com/sue445/gitlabci-bundle-update-mr/raw/master/gitlabci-templates/continuous_bundle_update.yml"
@@ -153,6 +153,10 @@ continuous_bundle_update:
153
153
  - ASSIGNEES=$(ruby -rtime -e 'a=%w[foo bar baz]; print a[Time.now.to_date.cweek% a.size]')
154
154
  ```
155
155
 
156
+ It will be assigned weekly in the following order.
157
+
158
+ `foo` -> `bar` -> `baz` -> `foo` -> `bar` -> `baz` -> ...
159
+
156
160
  ## Development
157
161
 
158
162
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -5,6 +5,7 @@ module Gitlabci
5
5
  class Client # rubocop:disable Metrics/ClassLength
6
6
  BRANCH_PREFIX = "bundle-update-".freeze
7
7
  TITLE_PREFIX = "bundle update at ".freeze
8
+ MAX_RETRY_COUNT = 3
8
9
 
9
10
  # rubocop:disable Metrics/ParameterLists
10
11
 
@@ -206,7 +207,23 @@ module Gitlabci
206
207
  end
207
208
 
208
209
  def accept_merge_request(mr_id)
209
- @gitlab.accept_merge_request(@project_name, mr_id, merge_when_pipeline_succeeds: true, should_remove_source_branch: true)
210
+ with_retry do
211
+ @gitlab.accept_merge_request(@project_name, mr_id, merge_when_pipeline_succeeds: true, should_remove_source_branch: true)
212
+ end
213
+ end
214
+
215
+ def with_retry
216
+ retry_count ||= 0
217
+
218
+ yield
219
+ rescue Gitlab::Error::MethodNotAllowed => e
220
+ retry_count += 1
221
+
222
+ if retry_count > MAX_RETRY_COUNT
223
+ raise e
224
+ end
225
+
226
+ retry
210
227
  end
211
228
 
212
229
  def get_assignee_ids(assignees)
@@ -2,7 +2,7 @@ module Gitlabci
2
2
  module Bundle
3
3
  module Update
4
4
  module Mr
5
- VERSION = "1.1.0".freeze
5
+ VERSION = "1.1.1.beta1".freeze
6
6
  end
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlabci-bundle-update-mr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - sue445
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-10-14 00:00:00.000000000 Z
11
+ date: 2020-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -284,7 +284,7 @@ metadata:
284
284
  homepage_uri: https://gitlab.com/sue445/gitlabci-bundle-update-mr
285
285
  source_code_uri: https://gitlab.com/sue445/gitlabci-bundle-update-mr
286
286
  changelog_uri: https://gitlab.com/sue445/gitlabci-bundle-update-mr/blob/master/CHANGELOG.md
287
- post_install_message:
287
+ post_install_message:
288
288
  rdoc_options: []
289
289
  require_paths:
290
290
  - lib
@@ -295,12 +295,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
295
295
  version: 2.5.0
296
296
  required_rubygems_version: !ruby/object:Gem::Requirement
297
297
  requirements:
298
- - - ">="
298
+ - - ">"
299
299
  - !ruby/object:Gem::Version
300
- version: '0'
300
+ version: 1.3.1
301
301
  requirements: []
302
- rubygems_version: 3.1.2
303
- signing_key:
302
+ rubygems_version: 3.1.4
303
+ signing_key:
304
304
  specification_version: 4
305
305
  summary: Create MergeRequest of bundle update in GitLab CI
306
306
  test_files: []