gitlabci-bundle-update-mr 5.1.0 → 6.0.0.rc1

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: 8aca5941da45bdd58c50b8b80f042f54c9938ecf9b9a707bea62e1b0ba616e25
4
- data.tar.gz: 57e30cfb698a4f082d9043017c909c41a37b5c4af44ec3787c33ffd94bda8a31
3
+ metadata.gz: 3827b128abf12b23e5f9643a5d9b5342f21cc12566a632bdcfb8033e2b7540ee
4
+ data.tar.gz: 1029849226bfecc4bb0c745721698aeffff53bd89627760ff38e220e226f1573
5
5
  SHA512:
6
- metadata.gz: 1fc7f885f8874d20526d1160b931a924cced137c5295df85c957422ebe158b3c0c3bf2bd121c5347caacaad3dc0618d2efad554c14d09637562c78c419d1a037
7
- data.tar.gz: 2e75381611d70e064194d319186cd4a7882deee2c8bc30a498c1b5295f465e3529461ced7fa56f5a6806ef6c7a8266b8e94f530de95716ffef7e7d7b5fb5a468
6
+ metadata.gz: 53157b8d9ce081561f37c75591912199e4519b37a6e07569cbe2e9dee4aa52c2f6a4a3a4dabbf99dd985a011726b598309055b7547fede115e3665ed7d058a80
7
+ data.tar.gz: 033364b307e13e27a520b55582fa12f186ab73861ff5094c4f42ac12f4c7febc00706f543c877c3e7abd8bdcd876770abff77e4e95007542b1d226750e5cd2d1
data/.gitlab-ci.yml CHANGED
@@ -56,7 +56,6 @@ test:
56
56
  parallel:
57
57
  matrix:
58
58
  - IMAGE:
59
- - ruby:3.1
60
59
  - ruby:3.2
61
60
  - ruby:3.3
62
61
  - ruby:3.4
data/.rubocop.yml CHANGED
@@ -1,4 +1,5 @@
1
- require: rubocop-performance
1
+ plugins:
2
+ - rubocop-performance
2
3
 
3
4
  inherit_gem:
4
5
  onkcop:
@@ -9,7 +10,7 @@ inherit_gem:
9
10
  # - "config/rspec.yml"
10
11
 
11
12
  AllCops:
12
- TargetRubyVersion: 3.1
13
+ TargetRubyVersion: 3.2
13
14
  NewCops: enable
14
15
  SuggestExtensions: false
15
16
 
@@ -18,6 +19,9 @@ Gemspec/DevelopmentDependencies:
18
19
  Exclude:
19
20
  - "spec/fixtures/**"
20
21
 
22
+ Layout/ClassStructure:
23
+ Enabled: false
24
+
21
25
  Layout/HashAlignment:
22
26
  EnforcedHashRocketStyle: table
23
27
  EnforcedColonStyle: table
data/CHANGELOG.md CHANGED
@@ -1,7 +1,7 @@
1
1
  ## Unreleased
2
2
  [full changelog](https://gitlab.com/sue445/gitlabci-bundle-update-mr/compare/v5.1.0...master)
3
3
 
4
- ## v5.1.0
4
+ ## [v5.1.0](https://gitlab.com/sue445/gitlabci-bundle-update-mr/-/releases/v5.1.0)
5
5
  [full changelog](https://gitlab.com/sue445/gitlabci-bundle-update-mr/compare/v5.0.2...v5.1.0)
6
6
 
7
7
  * Pass both `merge_when_pipeline_succeeds` and `auto_merge` to Merge a merge request API
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gitlabci-bundle-update-mr (5.1.0)
4
+ gitlabci-bundle-update-mr (6.0.0.rc1)
5
5
  bundler
6
6
  compare_linker (>= 1.4.11)
7
7
  git (= 1.7.0)
@@ -11,17 +11,17 @@ PATH
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- addressable (2.8.7)
15
- public_suffix (>= 2.0.2, < 7.0)
14
+ addressable (2.8.8)
15
+ public_suffix (>= 2.0.2, < 8.0)
16
16
  ast (2.4.3)
17
17
  base64 (0.2.0)
18
- bigdecimal (3.2.3)
18
+ bigdecimal (3.3.1)
19
19
  compare_linker (1.4.11)
20
20
  base64
21
21
  httpclient
22
22
  octokit
23
23
  ostruct
24
- crack (1.0.0)
24
+ crack (1.0.1)
25
25
  bigdecimal
26
26
  rexml
27
27
  csv (3.3.5)
@@ -32,8 +32,8 @@ GEM
32
32
  faraday-net_http (>= 2.0, < 3.5)
33
33
  json
34
34
  logger
35
- faraday-net_http (3.4.1)
36
- net-http (>= 0.5.0)
35
+ faraday-net_http (3.4.2)
36
+ net-http (~> 0.5)
37
37
  git (1.7.0)
38
38
  rchardet (~> 1.8)
39
39
  gitlab (6.0.0)
@@ -46,13 +46,13 @@ GEM
46
46
  logger
47
47
  thor
48
48
  hashdiff (1.2.1)
49
- httparty (0.23.1)
49
+ httparty (0.23.2)
50
50
  csv
51
51
  mini_mime (>= 1.0.0)
52
52
  multi_xml (>= 0.5.2)
53
53
  httpclient (2.9.0)
54
54
  mutex_m
55
- json (2.15.0)
55
+ json (2.16.0)
56
56
  language_server-protocol (3.17.0.5)
57
57
  lint_roller (1.1.0)
58
58
  logger (1.7.0)
@@ -60,9 +60,9 @@ GEM
60
60
  multi_xml (0.7.2)
61
61
  bigdecimal (~> 3.1)
62
62
  mutex_m (0.3.0)
63
- net-http (0.6.0)
64
- uri
65
- octokit (4.25.1)
63
+ net-http (0.8.0)
64
+ uri (>= 0.11.1)
65
+ octokit (10.0.0)
66
66
  faraday (>= 1, < 3)
67
67
  sawyer (~> 0.9)
68
68
  onkcop (1.0.0.0)
@@ -70,25 +70,25 @@ GEM
70
70
  rubocop-rspec (>= 1.34.0)
71
71
  ostruct (0.6.3)
72
72
  parallel (1.27.0)
73
- parser (3.3.9.0)
73
+ parser (3.3.10.0)
74
74
  ast (~> 2.4.1)
75
75
  racc
76
- prism (1.5.1)
77
- public_suffix (6.0.2)
76
+ prism (1.6.0)
77
+ public_suffix (7.0.0)
78
78
  racc (1.8.1)
79
79
  rainbow (3.1.1)
80
- rake (13.3.0)
80
+ rake (13.3.1)
81
81
  rchardet (1.10.0)
82
82
  regexp_parser (2.11.3)
83
83
  restore_bundled_with (1.0.0)
84
84
  git
85
85
  thor
86
86
  rexml (3.4.4)
87
- rspec (3.13.1)
87
+ rspec (3.13.2)
88
88
  rspec-core (~> 3.13.0)
89
89
  rspec-expectations (~> 3.13.0)
90
90
  rspec-mocks (~> 3.13.0)
91
- rspec-core (3.13.5)
91
+ rspec-core (3.13.6)
92
92
  rspec-support (~> 3.13.0)
93
93
  rspec-expectations (3.13.5)
94
94
  diff-lcs (>= 1.2.0, < 2.0)
@@ -96,13 +96,13 @@ GEM
96
96
  rspec-its (2.0.0)
97
97
  rspec-core (>= 3.13.0)
98
98
  rspec-expectations (>= 3.13.0)
99
- rspec-mocks (3.13.5)
99
+ rspec-mocks (3.13.7)
100
100
  diff-lcs (>= 1.2.0, < 2.0)
101
101
  rspec-support (~> 3.13.0)
102
102
  rspec-support (3.13.6)
103
- rspec-temp_dir (1.1.1)
103
+ rspec-temp_dir (1.1.2)
104
104
  rspec (>= 3.0)
105
- rubocop (1.81.1)
105
+ rubocop (1.81.7)
106
106
  json (~> 2.3)
107
107
  language_server-protocol (~> 3.17.0.2)
108
108
  lint_roller (~> 1.1.0)
@@ -113,20 +113,20 @@ GEM
113
113
  rubocop-ast (>= 1.47.1, < 2.0)
114
114
  ruby-progressbar (~> 1.7)
115
115
  unicode-display_width (>= 2.4.0, < 4.0)
116
- rubocop-ast (1.47.1)
116
+ rubocop-ast (1.48.0)
117
117
  parser (>= 3.3.7.2)
118
118
  prism (~> 1.4)
119
- rubocop-performance (1.26.0)
119
+ rubocop-performance (1.26.1)
120
120
  lint_roller (~> 1.1)
121
121
  rubocop (>= 1.75.0, < 2.0)
122
- rubocop-ast (>= 1.44.0, < 2.0)
123
- rubocop-rspec (3.7.0)
122
+ rubocop-ast (>= 1.47.1, < 2.0)
123
+ rubocop-rspec (3.8.0)
124
124
  lint_roller (~> 1.1)
125
- rubocop (~> 1.72, >= 1.72.1)
126
- rubocop_auto_corrector (0.5.0)
125
+ rubocop (~> 1.81)
126
+ rubocop_auto_corrector (0.5.1)
127
127
  rubocop (>= 1.30.0)
128
128
  ruby-progressbar (1.13.0)
129
- sawyer (0.9.2)
129
+ sawyer (0.9.3)
130
130
  addressable (>= 2.3.5)
131
131
  faraday (>= 0.17.3, < 3)
132
132
  simplecov (0.22.0)
@@ -144,8 +144,8 @@ GEM
144
144
  unicode-display_width (3.2.0)
145
145
  unicode-emoji (~> 4.1)
146
146
  unicode-emoji (4.1.0)
147
- uri (1.0.3)
148
- webmock (3.25.1)
147
+ uri (1.1.1)
148
+ webmock (3.26.1)
149
149
  addressable (>= 2.8.0)
150
150
  crack (>= 0.3.2)
151
151
  hashdiff (>= 0.4.0, < 2.0.0)
@@ -174,5 +174,73 @@ DEPENDENCIES
174
174
  webmock
175
175
  yard
176
176
 
177
+ CHECKSUMS
178
+ addressable (2.8.8) sha256=7c13b8f9536cf6364c03b9d417c19986019e28f7c00ac8132da4eb0fe393b057
179
+ ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
180
+ base64 (0.2.0) sha256=0f25e9b21a02a0cc0cea8ef92b2041035d39350946e8789c562b2d1a3da01507
181
+ bigdecimal (3.3.1) sha256=eaa01e228be54c4f9f53bf3cc34fe3d5e845c31963e7fcc5bedb05a4e7d52218
182
+ compare_linker (1.4.11) sha256=ca3d42c8bea1ead17dac9c5d7618bdf68217c6d43d8a9f1174bb4d474d01e316
183
+ crack (1.0.1) sha256=ff4a10390cd31d66440b7524eb1841874db86201d5b70032028553130b6d4c7e
184
+ csv (3.3.5) sha256=6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f
185
+ diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
186
+ docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e
187
+ dotenv (3.1.8) sha256=9e1176060ced581f8e6ce4384e91361817763a76e3c625c8bddc18b35bd392c3
188
+ faraday (2.14.0) sha256=8699cfe5d97e55268f2596f9a9d5a43736808a943714e3d9a53e6110593941cd
189
+ faraday-net_http (3.4.2) sha256=f147758260d3526939bf57ecf911682f94926a3666502e24c69992765875906c
190
+ git (1.7.0) sha256=21f4cf65813e12efa050011007dc855ac70110d10bdd99563a78683f450d1679
191
+ gitlab (6.0.0) sha256=be8e096775b84fb331f9e91b201b4356c3159eec6b0c7c4e157c46a02305a93a
192
+ gitlab_awesome_release (1.1.1) sha256=92a56f13eb4ceabe73dc62200fe170e213a4a0a7ce6bc693d665b81b4a3072fe
193
+ gitlabci-bundle-update-mr (6.0.0.rc1)
194
+ hashdiff (1.2.1) sha256=9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1
195
+ httparty (0.23.2) sha256=72d52830ab5862115a3c9a4b16738dd67d9a691ffd796cf86bad8abaa8f1febb
196
+ httpclient (2.9.0) sha256=4b645958e494b2f86c2f8a2f304c959baa273a310e77a2931ddb986d83e498c8
197
+ json (2.16.0) sha256=ca5630320bb5ca23ebfd0bac84532fab56eb357575653b815b9df42c051e1525
198
+ language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
199
+ lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
200
+ logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
201
+ mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef
202
+ multi_xml (0.7.2) sha256=307a96dc48613badb7b2fc174fd4e62d7c7b619bc36ea33bfd0c49f64f5787ce
203
+ mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751
204
+ net-http (0.8.0) sha256=df42c47ce9f9e95ad32a317c97c12f945bc1af365288837ea4ff259876ecb46d
205
+ octokit (10.0.0) sha256=82e99a539b7637b7e905e6d277bb0c1a4bed56735935cc33db6da7eae49a24e8
206
+ onkcop (1.0.0.0) sha256=29251a21c4332ae7ca85b700eeb46fbf2777fbffe69908508a7ed19c7e892635
207
+ ostruct (0.6.3) sha256=95a2ed4a4bd1d190784e666b47b2d3f078e4a9efda2fccf18f84ddc6538ed912
208
+ parallel (1.27.0) sha256=4ac151e1806b755fb4e2dc2332cbf0e54f2e24ba821ff2d3dcf86bf6dc4ae130
209
+ parser (3.3.10.0) sha256=ce3587fa5cc55a88c4ba5b2b37621b3329aadf5728f9eafa36bbd121462aabd6
210
+ prism (1.6.0) sha256=bfc0281a81718c4872346bc858dc84abd3a60cae78336c65ad35c8fbff641c6b
211
+ public_suffix (7.0.0) sha256=f7090b5beb0e56f9f10d79eed4d5fbe551b3b425da65877e075dad47a6a1b095
212
+ racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
213
+ rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
214
+ rake (13.3.1) sha256=8c9e89d09f66a26a01264e7e3480ec0607f0c497a861ef16063604b1b08eb19c
215
+ rchardet (1.10.0) sha256=d5ea2ed61a720a220f1914778208e718a0c7ed2a484b6d357ba695aa7001390f
216
+ regexp_parser (2.11.3) sha256=ca13f381a173b7a93450e53459075c9b76a10433caadcb2f1180f2c741fc55a4
217
+ restore_bundled_with (1.0.0) sha256=2534426ce26a02dc0e62e8dffa4b223dfb53f45d6f57dd74003fd78023e547e9
218
+ rexml (3.4.4) sha256=19e0a2c3425dfbf2d4fc1189747bdb2f849b6c5e74180401b15734bc97b5d142
219
+ rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
220
+ rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
221
+ rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836
222
+ rspec-its (2.0.0) sha256=a88e8bc38149f2835e93533591ec4f5c829aacbfd41269a2e6f9f5b82f5260df
223
+ rspec-mocks (3.13.7) sha256=0979034e64b1d7a838aaaddf12bf065ea4dc40ef3d4c39f01f93ae2c66c62b1c
224
+ rspec-support (3.13.6) sha256=2e8de3702427eab064c9352fe74488cc12a1bfae887ad8b91cba480ec9f8afb2
225
+ rspec-temp_dir (1.1.2) sha256=92ccd30b8f4c80632a67cc4bbd6701b7b9d34b410d5bfc1fb6a095c5e6d8ce0a
226
+ rubocop (1.81.7) sha256=6fb5cc298c731691e2a414fe0041a13eb1beed7bab23aec131da1bcc527af094
227
+ rubocop-ast (1.48.0) sha256=22df9bbf3f7a6eccde0fad54e68547ae1e2a704bf8719e7c83813a99c05d2e76
228
+ rubocop-performance (1.26.1) sha256=cd19b936ff196df85829d264b522fd4f98b6c89ad271fa52744a8c11b8f71834
229
+ rubocop-rspec (3.8.0) sha256=28440dccb3f223a9938ca1f946bd3438275b8c6c156dab909e2cb8bc424cab33
230
+ rubocop_auto_corrector (0.5.1) sha256=c15bc11fea8ae2dc723079e1850639ac75a8cc92a0bfd69ca6daa28f4d861bdb
231
+ ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
232
+ sawyer (0.9.3) sha256=0d0f19298408047037638639fe62f4794483fb04320269169bd41af2bdcf5e41
233
+ simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5
234
+ simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5
235
+ simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246
236
+ simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428
237
+ terminal-table (4.0.0) sha256=f504793203f8251b2ea7c7068333053f0beeea26093ec9962e62ea79f94301d2
238
+ thor (1.4.0) sha256=8763e822ccb0f1d7bee88cde131b19a65606657b847cc7b7b4b82e772bcd8a3d
239
+ unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42
240
+ unicode-emoji (4.1.0) sha256=4997d2d5df1ed4252f4830a9b6e86f932e2013fbff2182a9ce9ccabda4f325a5
241
+ uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
242
+ webmock (3.26.1) sha256=4f696fb57c90a827c20aadb2d4f9058bbff10f7f043bd0d4c3f58791143b1cd7
243
+ yard (0.9.37) sha256=a6e910399e78e613f80ba9add9ba7c394b1a935f083cccbef82903a3d2a26992
244
+
177
245
  BUNDLED WITH
178
- 2.6.2
246
+ 4.0.0
data/README.md CHANGED
@@ -164,7 +164,7 @@ Usage: gitlabci-bundle-update-mr [options]
164
164
  --user USER git username (default. `git config user.name`)
165
165
  -d, --duplicate Make MR even if it has already existed (default. false)
166
166
  -l, --labels 'In Review, Update' Add labels to the MR
167
- --update-bundled-with Whether to update `BUNDLED WITH` section in Gemfie.lock (default. false)
167
+ --update-bundled-with Whether to update `BUNDLED WITH` section in Gemfile.lock (default. false)
168
168
  --merge-when-pipeline-succeeds
169
169
  Whether to set 'Auto-merge' (formerly 'Merge when pipeline succeeds') (default. false)
170
170
  --assignees 'foo, bar' Add assignees to the MR
@@ -17,7 +17,7 @@ opt.on("--email EMAIL", "git email address (default. `git config user.email`)")
17
17
  opt.on("--user USER", "git username (default. `git config user.name`)") {|v| author_name = v }
18
18
  opt.on("-d", "--duplicate", "Make MR even if it has already existed (default. false)") {|v| allow_dup_mr = v }
19
19
  opt.on("-l", "--labels 'In Review, Update'", Array, "Add labels to the MR") {|v| mr_labels = v.map(&:strip) }
20
- opt.on("--update-bundled-with", "Whether to update `BUNDLED WITH` section in Gemfie.lock (default. false)") {|v| update_bundled_with = v }
20
+ opt.on("--update-bundled-with", "Whether to update `BUNDLED WITH` section in Gemfile.lock (default. false)") {|v| update_bundled_with = v }
21
21
 
22
22
  opt.on("--merge-when-pipeline-succeeds", "Whether to set 'Auto-merge' (formerly 'Merge when pipeline succeeds') (default. false)") do |v|
23
23
  merge_when_pipeline_succeeds = v
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
35
35
  spec.executables = spec.files.grep(%r{^exe/}) {|f| File.basename(f) }
36
36
  spec.require_paths = ["lib"]
37
37
 
38
- spec.required_ruby_version = ">= 3.1.2"
38
+ spec.required_ruby_version = ">= 3.2.0"
39
39
 
40
40
  spec.add_dependency "bundler"
41
41
  spec.add_dependency "compare_linker", ">= 1.4.11"
@@ -39,8 +39,7 @@ module Gitlabci
39
39
  assignee_ids = get_assignee_ids(assignees)
40
40
  old_lockfile = File.read(lockfile_name)
41
41
 
42
- system!("bundle update")
43
- system!("bundle update --ruby")
42
+ commit_message = run_bundle_update
44
43
 
45
44
  restore_bundled_with unless update_bundled_with
46
45
 
@@ -51,7 +50,7 @@ module Gitlabci
51
50
  return
52
51
  end
53
52
 
54
- commit_gemfile_lock(new_lockfile)
53
+ commit_gemfile_lock(lockfile: new_lockfile, commit_message: commit_message)
55
54
  description = merge_request_description(old_lockfile, new_lockfile)
56
55
 
57
56
  mr = create_merge_request(description:, mr_labels:, assignee_ids:)
@@ -64,11 +63,12 @@ module Gitlabci
64
63
  end
65
64
 
66
65
  # @param lockfile [String]
67
- def commit_gemfile_lock(lockfile)
66
+ # @param commit_message [String]
67
+ def commit_gemfile_lock(lockfile:, commit_message:)
68
68
  @gitlab.create_commit(
69
69
  @project_name,
70
70
  new_branch,
71
- "$ bundle update && bundle update --ruby",
71
+ commit_message,
72
72
  [
73
73
  {
74
74
  action: "update",
@@ -159,6 +159,23 @@ module Gitlabci
159
159
  user
160
160
  end
161
161
 
162
+ # @return [Gem::Version,nil]
163
+ def self.bundler_version
164
+ parse_bundler_version(`bundle -v`)
165
+ end
166
+
167
+ # parse bundler version from `bundle -v` result
168
+ #
169
+ # @param stdout [String]
170
+ #
171
+ # @return [Gem::Version,nil]
172
+ def self.parse_bundler_version(stdout)
173
+ m = /([\d.]+)(\w+)?/.match(stdout)
174
+ return nil unless m
175
+
176
+ Gem::Version.new("#{m[1]}#{m[2]}")
177
+ end
178
+
162
179
  private
163
180
 
164
181
  def system!(command)
@@ -177,6 +194,26 @@ module Gitlabci
177
194
  )
178
195
  end
179
196
 
197
+ # run `bundle update` and returns commit message
198
+ #
199
+ # @return [String] commit message
200
+ def run_bundle_update
201
+ bundler_version = self.class.bundler_version
202
+
203
+ if !bundler_version || bundler_version < Gem::Version.new("4.0.0")
204
+ system!("bundle update")
205
+ system!("bundle update --ruby")
206
+
207
+ return "$ bundle update && bundle update --ruby"
208
+ end
209
+
210
+ # bundler v4+
211
+ system!("bundle update --all")
212
+ system!("bundle update --ruby")
213
+
214
+ "$ bundle update --all && bundle update --ruby"
215
+ end
216
+
180
217
  def gemfile_name
181
218
  return @gemfile_name if @gemfile_name
182
219
 
@@ -2,7 +2,7 @@ module Gitlabci
2
2
  module Bundle
3
3
  module Update
4
4
  module Mr
5
- VERSION = "5.1.0".freeze
5
+ VERSION = "6.0.0.rc1".freeze
6
6
  end
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlabci-bundle-update-mr
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.1.0
4
+ version: 6.0.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - sue445
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2025-10-17 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: bundler
@@ -349,14 +349,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
349
349
  requirements:
350
350
  - - ">="
351
351
  - !ruby/object:Gem::Version
352
- version: 3.1.2
352
+ version: 3.2.0
353
353
  required_rubygems_version: !ruby/object:Gem::Requirement
354
354
  requirements:
355
355
  - - ">="
356
356
  - !ruby/object:Gem::Version
357
357
  version: '0'
358
358
  requirements: []
359
- rubygems_version: 3.6.2
359
+ rubygems_version: 3.6.9
360
360
  specification_version: 4
361
361
  summary: Create MergeRequest of bundle update in GitLab CI
362
362
  test_files: []