beaker-hostgenerator 3.8.0 → 3.8.1

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: 1f29cecf0074289de35809602614dfe2f7792bd2a1241b506bf2e184e3c18de7
4
- data.tar.gz: cfd9098e8cb71df14b202099e1e2773cd060fcdf36c32bff41df5d9ac6e93a64
3
+ metadata.gz: 23337cfbfef703241de859a11fbe3609ebaf9cd9439ecbfaefb2c4e17a9d2701
4
+ data.tar.gz: 3d78b1ce71ba4bb06aa352bcfe29160d8639acde21f78d34d7b56c06e677f602
5
5
  SHA512:
6
- metadata.gz: 948d48dcf7bb9175d06d4182bffb66e2dc67b71fe305e917d07a25937aee30101995cf64c5cfe5721c51d4cb7c99f80eebe48d573abcb92b5131cca728906451
7
- data.tar.gz: 005e1f904e185df7998b1189790f826ee64f50b2f871308a5c2214464a205ba5663536ea33698b2b7a4e23dda1fe6b0e44051245b76d40f82a167e1baaec5cb3
6
+ metadata.gz: 67bb08000cd28a9b29c8a3c30292c5395e42a277e10a051a1963874102d7b098cca358a770b54f9a78cfc11e52df600b3dc04e2b86a0d1be103c01eeb52e5ae3
7
+ data.tar.gz: b75d62fdfc8f18716fba1c05fba369b9a6d2ff46b7a21933d2daad53381984246b8d303cb78735c5ed409258acf3b4bafbff262fc5e4a2641729a6566a8c3aa5
@@ -15,16 +15,16 @@ jobs:
15
15
  name: Build the gem
16
16
  runs-on: ubuntu-24.04
17
17
  steps:
18
- - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
18
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
19
19
  - name: Install Ruby
20
- uses: ruby/setup-ruby@6e5d382445ae5590b7449d8b3bc8cb1c2c27f617 # v1.317.0
20
+ uses: ruby/setup-ruby@de492cf36cbab201753d720ce4f4e336cd688c94 # v1.336.0
21
21
  with:
22
22
  ruby-version: 'ruby'
23
23
  - name: Build gem
24
24
  shell: bash
25
25
  run: gem build --verbose *.gemspec
26
26
  - name: Upload gem to GitHub cache
27
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
27
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
28
28
  with:
29
29
  name: gem-artifact
30
30
  path: '*.gem'
@@ -39,7 +39,7 @@ jobs:
39
39
  contents: write # clone repo and create release
40
40
  steps:
41
41
  - name: Download gem from GitHub cache
42
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
42
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
43
43
  with:
44
44
  name: gem-artifact
45
45
  - name: Create Release
@@ -56,7 +56,7 @@ jobs:
56
56
  packages: write # publish to rubygems.pkg.github.com
57
57
  steps:
58
58
  - name: Download gem from GitHub cache
59
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
59
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
60
60
  with:
61
61
  name: gem-artifact
62
62
  - name: Publish gem to GitHub packages
@@ -73,7 +73,7 @@ jobs:
73
73
  id-token: write # rubygems.org authentication
74
74
  steps:
75
75
  - name: Download gem from GitHub cache
76
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
76
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
77
77
  with:
78
78
  name: gem-artifact
79
79
  - uses: rubygems/configure-rubygems-credentials@dc5a8d8553e6ee01fc26761a49e99e733d17954a # v2.1.0
@@ -92,11 +92,11 @@ jobs:
92
92
  - release-to-rubygems
93
93
  steps:
94
94
  - name: Download gem from GitHub cache
95
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
95
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
96
96
  with:
97
97
  name: gem-artifact
98
98
  - name: Install Ruby
99
- uses: ruby/setup-ruby@6e5d382445ae5590b7449d8b3bc8cb1c2c27f617 # v1.317.0
99
+ uses: ruby/setup-ruby@de492cf36cbab201753d720ce4f4e336cd688c94 # v1.336.0
100
100
  with:
101
101
  ruby-version: 'ruby'
102
102
  - name: Wait for release to propagate
@@ -15,16 +15,16 @@ jobs:
15
15
  outputs:
16
16
  ruby: ${{ steps.ruby.outputs.versions }}
17
17
  steps:
18
- - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
18
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
19
19
  - name: Install Ruby 4.0
20
- uses: ruby/setup-ruby@6e5d382445ae5590b7449d8b3bc8cb1c2c27f617 # v1.317.0
20
+ uses: ruby/setup-ruby@de492cf36cbab201753d720ce4f4e336cd688c94 # v1.336.0
21
21
  with:
22
22
  ruby-version: '4.0'
23
23
  bundler-cache: true
24
24
  - name: Run RuboCop
25
25
  run: bundle exec rake rubocop
26
26
  - id: ruby
27
- uses: voxpupuli/ruby-version@656370e339050da63b86b1c631f5f88a3f4c0803 # 1.0.1
27
+ uses: voxpupuli/ruby-version@be0467ce7366d206b2e87f5b7a032a030120b7cb # 2.0.0
28
28
 
29
29
  test:
30
30
  name: "Ruby ${{ matrix.ruby }}"
@@ -35,9 +35,9 @@ jobs:
35
35
  matrix:
36
36
  ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }}
37
37
  steps:
38
- - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
38
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
39
39
  - name: Setup ruby
40
- uses: ruby/setup-ruby@6e5d382445ae5590b7449d8b3bc8cb1c2c27f617 # v1.317.0
40
+ uses: ruby/setup-ruby@de492cf36cbab201753d720ce4f4e336cd688c94 # v1.336.0
41
41
  with:
42
42
  ruby-version: ${{ matrix.ruby }}
43
43
  bundler-cache: true
data/CHANGELOG.md CHANGED
@@ -2,6 +2,17 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [3.8.1](https://github.com/voxpupuli/beaker-hostgenerator/tree/3.8.1) (2026-11-05)
6
+
7
+ [Full Changelog](https://github.com/voxpupuli/beaker-hostgenerator/compare/3.8.0...3.8.1)
8
+
9
+ **Fixed bugs:**
10
+
11
+ - fix\(vagrant\): select CentOS box URL by provider [\#504](https://github.com/voxpupuli/beaker-hostgenerator/pull/504) ([alaunay](https://github.com/alaunay))
12
+ - CentOS: Add 10 support, fix vagrant libvirt image URLs [\#501](https://github.com/voxpupuli/beaker-hostgenerator/pull/501) ([bastelfreak](https://github.com/bastelfreak))
13
+ - Fix ABS template for Ubuntu POWER platforms [\#497](https://github.com/voxpupuli/beaker-hostgenerator/pull/497) ([GlazerMann](https://github.com/GlazerMann))
14
+ - Only convert plain decimal integers in host settings [\#496](https://github.com/voxpupuli/beaker-hostgenerator/pull/496) ([GlazerMann](https://github.com/GlazerMann))
15
+
5
16
  ## [3.8.0](https://github.com/voxpupuli/beaker-hostgenerator/tree/3.8.0) (2026-07-15)
6
17
 
7
18
  [Full Changelog](https://github.com/voxpupuli/beaker-hostgenerator/compare/3.7.0...3.8.0)
@@ -28,7 +28,7 @@ Gem::Specification.new do |s|
28
28
  s.add_development_dependency 'rake', '~> 13.0'
29
29
  s.add_development_dependency 'rspec', '~> 3.0'
30
30
  s.add_development_dependency 'rspec-its', '>= 1.3.1', '< 3'
31
- s.add_development_dependency 'voxpupuli-rubocop', '~> 5.2.0'
31
+ s.add_development_dependency 'voxpupuli-rubocop', '~> 5.3.0'
32
32
 
33
33
  # Run time dependencies
34
34
  s.add_dependency 'deep_merge', '~> 1.0'
@@ -140,22 +140,25 @@ module BeakerHostGenerator
140
140
  # For example "123" would be converted to 123, and "true"/"false" would be
141
141
  # converted to true/false.
142
142
  # The only valid boolean-strings are "true" and "false".
143
+ # Only plain decimal integers are converted ("-5" and "0" are, but "007",
144
+ # "010", "0x1F", "1_000" and "+5" are not), because Kernel#Integer would
145
+ # also read leading zeros as octal and accept hex, binary and underscores,
146
+ # silently changing the value the user typed.
143
147
  def unstringify_value(value)
144
- result = begin
145
- Integer(value)
146
- rescue StandardError
147
- value
148
- end
149
- if value == 'true'
150
- result = true
151
- elsif value == 'false'
152
- result = false
153
- elsif value.is_a?(Array)
148
+ case value
149
+ when 'true'
150
+ true
151
+ when 'false'
152
+ false
153
+ when /\A-?(?:0|[1-9]\d*)\z/
154
+ value.to_i
155
+ when Array
154
156
  value.each_with_index do |v, i|
155
- result[i] = unstringify_value(v)
157
+ value[i] = unstringify_value(v)
156
158
  end
159
+ else
160
+ value
157
161
  end
158
- result
159
162
  end
160
163
  end
161
164
  end
@@ -57,7 +57,7 @@ module BeakerHostGenerator
57
57
  when 'AARCH64'
58
58
  'arm64'
59
59
  when 'POWER'
60
- base_template.sub!(/#{os}-(\d\d)/, "#{os}-\1.")
60
+ base_template.sub!(/#{os}-(\d\d)/, "#{os}-\\1.")
61
61
  'power8'
62
62
  else
63
63
  raise "Unknown bits '#{node_info['bits']}' for '#{node_info['ostype']}'"
@@ -11,12 +11,12 @@ module BeakerHostGenerator
11
11
  def generate_node(node_info, base_config, bhg_version)
12
12
  # Generate the Lima template URL based on the OS type
13
13
  template = get_template(node_info['ostype'])
14
- arch = case node_info['bits']
15
- when '64'
16
- 'x86_64'
17
- when 'AARCH64'
18
- 'aarch64'
19
- end
14
+ arch = case node_info['bits']
15
+ when '64'
16
+ 'x86_64'
17
+ when 'AARCH64'
18
+ 'aarch64'
19
+ end
20
20
 
21
21
  base_config['lima'] = {
22
22
  'config' => {
@@ -34,7 +34,15 @@ module BeakerHostGenerator
34
34
  end
35
35
  when /^centos(\d+)-64/
36
36
  version = Regexp.last_match(1)
37
- base_config['box'] = (version.to_i >= 8) ? "centos/stream#{version}" : "centos/#{version}"
37
+ ver = version.to_i
38
+ if ver >= 8
39
+ base_config['box'] = "centos/stream#{version}"
40
+ provider, extension = (@name == 'vagrant_libvirt') ? %w[Libvirt vagrant-libvirt] : %w[VirtualBox vagrant-virtualbox]
41
+ variant = (ver == 8) ? 'Vagrant' : "Vagrant-#{provider}"
42
+ base_config['box_url'] = "https://cloud.centos.org/centos/#{version}-stream/x86_64/images/CentOS-Stream-#{variant}-#{version}-latest.x86_64.#{extension}.box"
43
+ else
44
+ base_config['box'] = "centos/#{version}"
45
+ end
38
46
  end
39
47
 
40
48
  # We don't use this by default
@@ -1,5 +1,5 @@
1
1
  module BeakerHostGenerator
2
2
  module Version
3
- STRING = '3.8.0'
3
+ STRING = '3.8.1'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker-hostgenerator
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.0
4
+ version: 3.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Branan Purvine-Riley
@@ -120,14 +120,14 @@ dependencies:
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: 5.2.0
123
+ version: 5.3.0
124
124
  type: :development
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: 5.2.0
130
+ version: 5.3.0
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: deep_merge
133
133
  requirement: !ruby/object:Gem::Requirement
@@ -207,7 +207,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0'
209
209
  requirements: []
210
- rubygems_version: 4.0.16
210
+ rubygems_version: 4.0.20
211
211
  specification_version: 4
212
212
  summary: Beaker Host Generator Utility
213
213
  test_files: []