Skip to content

Commit

Permalink
Merge pull request #75 from bastelfreak/puppet8
Browse files Browse the repository at this point in the history
Puppet 8: Run unit tests on Ruby 3.2
  • Loading branch information
bastelfreak committed Apr 26, 2023
2 parents 5755a9e + 906a8d2 commit 0b67bed
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 11 deletions.
1 change: 1 addition & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ jobs:
- ruby: "3.0"
- ruby: "3.1"
coverage: "yes"
- ruby: "3.2"
env:
COVERAGE: ${{ matrix.coverage }}
steps:
Expand Down
22 changes: 12 additions & 10 deletions lib/puppet_metadata/aio.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ class AIO
'RedHat' => {
'5' => 5..7,
'6' => 5..7,
'7' => 5..7,
'8' => 5..7,
'9' => 6..7,
'7' => 5..8,
'8' => 5..8,
'9' => 6..8,
},
'Fedora' => {
'26' => [5],
Expand All @@ -27,26 +27,27 @@ class AIO
'31' => 5..7,
'32' => 6..7,
'34' => 6..7,
'36' => 7-8,
},
'SLES' => {
'11' => [7],
'12' => [7],
'15' => [7],
'12' => 7..8,
'15' => 7..8,
},
# deb-based
'Debian' => {
'7' => [5],
'8' => 5..6,
'9' => 5..7,
'10' => 5..7,
'11' => 6..7,
'10' => 5..8,
'11' => 6..8,
},
'Ubuntu' => {
'14.04' => 5..6,
'16.04' => 5..7,
'18.04' => 5..7,
'20.04' => 6..7,
'22.04' => 6..7,
'18.04' => 5..8,
'20.04' => 6..8,
'22.04' => 6..8,
},
}.freeze

Expand All @@ -55,6 +56,7 @@ class AIO
5 => '2.4',
6 => '2.5',
7 => '2.7',
8 => '3.2',
}.freeze

class << self
Expand Down
19 changes: 18 additions & 1 deletion spec/github_actions_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@
it { is_expected.to be_an_instance_of(Array) }
it 'is expected to contain major versions 4, 5, 6 and 7' do
is_expected.to contain_exactly(
{puppet: 8, ruby: "3.2"},
{puppet: 7, ruby: "2.7"},
{puppet: 6, ruby: "2.5"},
{puppet: 5, ruby: "2.4"},
Expand All @@ -93,8 +94,9 @@
context 'when minimum_major_puppet_version is set to 6' do
let(:minimum_major_puppet_version) { '6' }

it 'is expected to contain major versions 6 and 7' do
it 'is expected to contain major versions 6,7 and 8' do
is_expected.to contain_exactly(
{puppet: 8, ruby: "3.2"},
{puppet: 7, ruby: "2.7"},
{puppet: 6, ruby: "2.5"},
)
Expand All @@ -111,17 +113,21 @@
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet5", name: "Puppet 5", value: 5}},
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet5", name: "Puppet 5", value: 5}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {collection: "puppet5", name: "Puppet 5", value: 5}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet5", name: "Puppet 5", value: 5}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
)
end

Expand All @@ -132,14 +138,18 @@
is_expected.to contain_exactly(
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 7", value: "centos7-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 8", value: "centos8-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
)
end
end
Expand All @@ -149,14 +159,17 @@

it 'is expected to contain supported os / puppet version combinations with image option' do
is_expected.to contain_exactly(
{setfile: {name: "CentOS 7", value: "centos7-64{image=centos:7.6.1810}"}, puppet: {name: "Puppet 8", value: 8, collection: "puppet8"}},
{setfile: {name: "CentOS 7", value: "centos7-64{image=centos:7.6.1810}"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "CentOS 7", value: "centos7-64{image=centos:7.6.1810}"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "CentOS 7", value: "centos7-64{image=centos:7.6.1810}"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet6", name: "Puppet 6", value: 6}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet7", name: "Puppet 7", value: 7}},
{setfile: {name: "CentOS 9", value: "centos9-64"}, puppet: {collection: "puppet8", name: "Puppet 8", value: 8}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "Debian 9", value: "debian9-64"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {name: "Puppet 8", value: 8, collection: "puppet8"}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "Debian 10", value: "debian10-64"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}}
Expand All @@ -169,17 +182,21 @@

it 'is expected to contain supported os / puppet version combinations with hostname option' do
is_expected.to contain_exactly(
{setfile: {name: "CentOS 7", value: "centos7-64{hostname=centos7-64-puppet8.example.com}"}, puppet: {name: "Puppet 8", value: 8, collection: "puppet8"}},
{setfile: {name: "CentOS 7", value: "centos7-64{hostname=centos7-64-puppet7.example.com}"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "CentOS 7", value: "centos7-64{hostname=centos7-64-puppet6.example.com}"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "CentOS 7", value: "centos7-64{hostname=centos7-64-puppet5.example.com}"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}},
{setfile: {name: "CentOS 8", value: "centos8-64{hostname=centos8-64-puppet8.example.com}"}, puppet: {name: "Puppet 8", value: 8, collection: "puppet8"}},
{setfile: {name: "CentOS 8", value: "centos8-64{hostname=centos8-64-puppet7.example.com}"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "CentOS 8", value: "centos8-64{hostname=centos8-64-puppet6.example.com}"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "CentOS 8", value: "centos8-64{hostname=centos8-64-puppet5.example.com}"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}},
{setfile: {name: "CentOS 9", value: "centos9-64{hostname=centos9-64-puppet8.example.com}"}, puppet: {name: "Puppet 8", value: 8, collection: "puppet8"}},
{setfile: {name: "CentOS 9", value: "centos9-64{hostname=centos9-64-puppet7.example.com}"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "CentOS 9", value: "centos9-64{hostname=centos9-64-puppet6.example.com}"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "Debian 9", value: "debian9-64{hostname=debian9-64-puppet7.example.com}"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "Debian 9", value: "debian9-64{hostname=debian9-64-puppet6.example.com}"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "Debian 9", value: "debian9-64{hostname=debian9-64-puppet5.example.com}"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}},
{setfile: {name: "Debian 10", value: "debian10-64{hostname=debian10-64-puppet8.example.com}"}, puppet: {name: "Puppet 8", value: 8, collection: "puppet8"}},
{setfile: {name: "Debian 10", value: "debian10-64{hostname=debian10-64-puppet7.example.com}"}, puppet: {name: "Puppet 7", value: 7, collection: "puppet7"}},
{setfile: {name: "Debian 10", value: "debian10-64{hostname=debian10-64-puppet6.example.com}"}, puppet: {name: "Puppet 6", value: 6, collection: "puppet6"}},
{setfile: {name: "Debian 10", value: "debian10-64{hostname=debian10-64-puppet5.example.com}"}, puppet: {name: "Puppet 5", value: 5, collection: "puppet5"}}
Expand Down

0 comments on commit 0b67bed

Please sign in to comment.