puppet_metadata 4.0.0 → 4.2.0

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: de32c4860778531eeabf95f42ff94cfd21efa518384b9870ec2c9e91e982b2ae
4
- data.tar.gz: 525f0f24c55dc00e198f52ad3a7708543e646c4d37548b3c0f781d02d6cf499d
3
+ metadata.gz: 6ec3e884b9ceee3dd846aaabb2be3e1627c666848ec1acf0bad245c4e0a73697
4
+ data.tar.gz: 2b899cb612f7aa773034fc4ce3a5445c4872d25e2118e955b75bf03e0e80a3fb
5
5
  SHA512:
6
- metadata.gz: e8b12b9a07f697156cf081cae45c5480f182468c0e25821472f91c4c684b6e444c31c4ded715f4574007b766099895fda5b066a245889a46a7708bb209e0358c
7
- data.tar.gz: 18a41a5b1c2bf722dcbeca24224222013a0316ea454197b2554e81a6bb20d11d05b4cd655718cb7058372c796d6a807a5390e1bc173a9df533e3eaa6bfc2b893
6
+ metadata.gz: feb2a288a528b822a0c09ce39cd31f765eaba0f38e045b4864e396c4134359907780d34a1faec7a983cb75bc4d0011ab91bf198d0be0455e2643b03c4478c5e8
7
+ data.tar.gz: a1006a6cac1cc9bd7ca02991930c03c0a9f0b3604c4bd19756777d3c24b2a56593c66afb0d9502cc3c9be544a0d069b464794968ad85fb35f4905081701b66f1
data/README.md CHANGED
@@ -212,6 +212,25 @@ The metadata object has several different methods that we can call
212
212
  [7] pry(main)>
213
213
  ```
214
214
 
215
+ ## List supported setfiles
216
+
217
+ When running beaker on the CLI, you can specify a specific setfile. `puppet_metadata` provides `bin/setfiles` to list all setfiles:
218
+
219
+ ```
220
+ $ bundle exec setfiles
221
+ Skipping EOL operating system Debian 10
222
+ Skipping EOL operating system Ubuntu 18.04
223
+ BEAKER_SETFILE="centos9-64{hostname=centos9-64-puppet8.example.com}"
224
+ BEAKER_SETFILE="centos9-64{hostname=centos9-64-puppet7.example.com}"
225
+ BEAKER_SETFILE="debian11-64{hostname=debian11-64-puppet8.example.com}"
226
+ BEAKER_SETFILE="debian11-64{hostname=debian11-64-puppet7.example.com}"
227
+ BEAKER_SETFILE="ubuntu2004-64{hostname=ubuntu2004-64-puppet8.example.com}"
228
+ BEAKER_SETFILE="ubuntu2004-64{hostname=ubuntu2004-64-puppet7.example.com}"
229
+ ```
230
+
231
+ As an argument you can provide a path to a metadata.json. If none provided, it assumes that there's a metadata.json in the same directory where you run the command.
232
+ To make copy and paste easier, each setfile string is prefixed so it can directly be used as environment variable.
233
+
215
234
  ## Transfer Notice
216
235
 
217
236
  This plugin was originally authored by [Ewoud Kohl van Wijngaarden](https://github.com/ekohl).
data/bin/setfiles ADDED
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # frozen_string_literal: true
4
+
5
+ require 'json'
6
+ require 'puppet_metadata'
7
+
8
+ filename = ARGV[0]
9
+ filename = 'metadata.json' if filename.nil? || filename.empty?
10
+
11
+ begin
12
+ metadata = PuppetMetadata.read(filename)
13
+ rescue StandardError => e
14
+ warn "Failed to read #{filename}: #{e}"
15
+ exit 2
16
+ end
17
+
18
+ options = {
19
+ beaker_pidfile_workaround: false,
20
+ domain: 'example.com',
21
+ minimum_major_puppet_version: nil,
22
+ beaker_fact: nil,
23
+ beaker_hosts: nil,
24
+ }
25
+
26
+ metadata.github_actions(options).outputs[:puppet_beaker_test_matrix].each do |os|
27
+ puts "BEAKER_SETFILE=\"#{os[:env]['BEAKER_SETFILE']}\""
28
+ end
@@ -28,6 +28,7 @@ module PuppetMetadata
28
28
  '32' => 6..7,
29
29
  '34' => 6..7,
30
30
  '36' => 7..8,
31
+ '40' => 7..8,
31
32
  },
32
33
  'SLES' => {
33
34
  '11' => [7],
@@ -13,9 +13,9 @@ module PuppetMetadata
13
13
  # The EOL dates for the various operating systems
14
14
  # @see .eol_date
15
15
  EOL_DATES = {
16
- # https://almalinux.org/ FAQ at the bottom
16
+ # https://wiki.almalinux.org/release-notes/
17
17
  'AlmaLinux' => {
18
- '9' => nil,
18
+ '9' => '2032-05-31',
19
19
  '8' => '2029-05-31',
20
20
  },
21
21
  # https://endoflife.software/operating-systems/linux/centos
@@ -28,13 +28,12 @@ module PuppetMetadata
28
28
  '4' => '2012-02-29',
29
29
  '3' => '2010-10-30',
30
30
  },
31
- # https://endoflife.software/operating-systems/linux/debian
32
31
  # https://wiki.debian.org/DebianReleases
33
32
  'Debian' => {
34
33
  # TODO: EOL is standard support, not the extended life cycle
35
34
  '12' => nil, # '~2026',
36
35
  '11' => nil, # '~2024',
37
- '10' => nil, # '~2022',
36
+ '10' => '2022-09-10',
38
37
  '9' => '2020-07-06',
39
38
  '8' => '2018-06-17',
40
39
  '7' => '2016-04-26',
@@ -52,11 +51,20 @@ module PuppetMetadata
52
51
  '8' => '2029-07-01',
53
52
  '7' => '2024-12-31',
54
53
  },
55
- # https://endoflife.software/operating-systems/linux/fedora
54
+ # https://docs.fedoraproject.org/en-US/releases/eol/
56
55
  'Fedora' => {
57
- '32' => nil,
58
- '31' => nil,
59
- '30' => nil,
56
+ '41' => nil,
57
+ '40' => nil,
58
+ '39' => nil,
59
+ '38' => '2024-05-21',
60
+ '37' => '2023-12-05',
61
+ '36' => '2023-05-16',
62
+ '35' => '2022-12-13',
63
+ '34' => '2022-06-07',
64
+ '33' => '2021-11-30',
65
+ '32' => '2021-05-25',
66
+ '31' => '2020-11-24',
67
+ '30' => '2020-05-26',
60
68
  '29' => '2019-11-26',
61
69
  '28' => '2019-05-28',
62
70
  '27' => '2018-11-30',
@@ -110,9 +118,9 @@ module PuppetMetadata
110
118
  '4' => '2012-02-29',
111
119
  '3' => '2010-10-31',
112
120
  },
113
- # https://endoflife.date/rocky-linux
121
+ # https://wiki.rockylinux.org/rocky/version/
114
122
  'Rocky' => {
115
- '9' => nil,
123
+ '9' => '2032-05-31',
116
124
  '8' => '2029-05-31',
117
125
  },
118
126
  # https://endoflife.software/operating-systems/linux/ubuntu
@@ -220,11 +228,6 @@ module PuppetMetadata
220
228
  # @return [Optional[Integer]] The Puppet major version, if any
221
229
  def os_release_puppet_version(operatingsystem, release)
222
230
  case operatingsystem
223
- when 'Debian'
224
- case release
225
- when '12'
226
- 7
227
- end
228
231
  when 'Fedora'
229
232
  case release
230
233
  when '39', '40'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet_metadata
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-05-08 00:00:00.000000000 Z
12
+ date: 2024-07-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: metadata-json-lint
@@ -107,14 +107,14 @@ dependencies:
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 2.6.0
110
+ version: 2.8.0
111
111
  type: :development
112
112
  prerelease: false
113
113
  version_requirements: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 2.6.0
117
+ version: 2.8.0
118
118
  - !ruby/object:Gem::Dependency
119
119
  name: yard
120
120
  requirement: !ruby/object:Gem::Requirement
@@ -134,12 +134,14 @@ email:
134
134
  - voxpupuli@groups.io
135
135
  executables:
136
136
  - metadata2gha
137
+ - setfiles
137
138
  extensions: []
138
139
  extra_rdoc_files:
139
140
  - README.md
140
141
  files:
141
142
  - README.md
142
143
  - bin/metadata2gha
144
+ - bin/setfiles
143
145
  - lib/puppet_metadata.rb
144
146
  - lib/puppet_metadata/aio.rb
145
147
  - lib/puppet_metadata/beaker.rb
@@ -170,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
170
172
  - !ruby/object:Gem::Version
171
173
  version: '0'
172
174
  requirements: []
173
- rubygems_version: 3.5.9
175
+ rubygems_version: 3.5.11
174
176
  signing_key:
175
177
  specification_version: 4
176
178
  summary: Data structures for the Puppet Metadata