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 +4 -4
- data/.github/workflows/release.yml +8 -8
- data/.github/workflows/test.yml +5 -5
- data/CHANGELOG.md +11 -0
- data/beaker-hostgenerator.gemspec +1 -1
- data/lib/beaker-hostgenerator/generator.rb +15 -12
- data/lib/beaker-hostgenerator/hypervisor/abs.rb +1 -1
- data/lib/beaker-hostgenerator/hypervisor/lima.rb +6 -6
- data/lib/beaker-hostgenerator/hypervisor/vagrant.rb +9 -1
- data/lib/beaker-hostgenerator/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 23337cfbfef703241de859a11fbe3609ebaf9cd9439ecbfaefb2c4e17a9d2701
|
|
4
|
+
data.tar.gz: 3d78b1ce71ba4bb06aa352bcfe29160d8639acde21f78d34d7b56c06e677f602
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
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@
|
|
18
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
19
19
|
- name: Install Ruby
|
|
20
|
-
uses: ruby/setup-ruby@
|
|
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@
|
|
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@
|
|
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@
|
|
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@
|
|
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@
|
|
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@
|
|
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
|
data/.github/workflows/test.yml
CHANGED
|
@@ -15,16 +15,16 @@ jobs:
|
|
|
15
15
|
outputs:
|
|
16
16
|
ruby: ${{ steps.ruby.outputs.versions }}
|
|
17
17
|
steps:
|
|
18
|
-
- uses: actions/checkout@
|
|
18
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
19
19
|
- name: Install Ruby 4.0
|
|
20
|
-
uses: ruby/setup-ruby@
|
|
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@
|
|
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@
|
|
38
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
39
39
|
- name: Setup ruby
|
|
40
|
-
uses: ruby/setup-ruby@
|
|
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.
|
|
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
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
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
|
-
|
|
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}
|
|
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 =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
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
|
-
|
|
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
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
210
|
+
rubygems_version: 4.0.20
|
|
211
211
|
specification_version: 4
|
|
212
212
|
summary: Beaker Host Generator Utility
|
|
213
213
|
test_files: []
|