puppet_metadata 1.10.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68bedde8f6ea8a9ec17503af06a802c698f01778c67c9e9d5ad4a94a607ae8c9
4
- data.tar.gz: 9e0681df7996aeb6238a8527b053d136004c3616de2b81389b7a8e045a5fbf1c
3
+ metadata.gz: 0764d746b3167ac13197106bbff4b5c0be055c96f512aa5e43461bb4aa69ccc5
4
+ data.tar.gz: 04635ef0d16094eb0728c6c8ae49ed6f63daa141e8fd434d9a58e8f6805273ee
5
5
  SHA512:
6
- metadata.gz: c46ae6d205020e08d950d9c67c237b5a8e1ddf97ab07c304f429b0457ec68c6f1df09f9ef8f7232f10ff6e3179827d30db16a464ab35b89919d5c6f26c09ef49
7
- data.tar.gz: 1a5bac401ba8acce959f7c1e5bf415eff67f6b46513b810c74bd7befc61f87be8b772aaee42ba009668a80a001e52e9302095e7ea0834f698e83bcd1e0433cde
6
+ metadata.gz: b6881e7df1e75a1324915a1cba67040cec62bbc7e6852aaefd14953345d3eed760fb9dcede23d97e2435624642dfb9d4f858bc9fe8c1ee8f852dcdae5672250b
7
+ data.tar.gz: 16c8b9c86ff5c4e8006e759972da86c69cdcc1fd5276435560cee6030425d53ea40369599e384f7da76f5bcd991adb942261faf20e7587979d85c7bb72edd3e3
data/README.md CHANGED
@@ -15,60 +15,66 @@ The gem intends to provide an abstraction over Puppet's metadata.json file. Its
15
15
  To get outputs [usable in Github Actions](https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-commands-for-github-actions), there is the `metadata2gha` command available. This generates based on metadata.json, such as [Beaker](https://github.com/voxpupuli/beaker) setfiles, Puppet major versions and a Puppet unit test matrix.
16
16
 
17
17
  ```console
18
- $ metadata2gha-beaker
19
- beaker_setfiles=[{"name":"CentOS 7","value":"centos7-64"},{"name":"CentOS 8","value":"centos8-64"},{"name":"Debian 10","value":"debian10-64"},{"name":"Ubuntu 18.04","value":"ubuntu1804-64"}]
20
- puppet_major_versions=[{"name":"Puppet 6","value":6,"collection":"puppet6"},{"name":"Puppet 5","value":5,"collection":"puppet5"}]
21
- puppet_unit_test_matrix=[{"puppet":6,"ruby":"2.5"},{"puppet":5,"ruby":"2.4"}]
18
+ $ metadata2gha
19
+ puppet_major_versions=[{"name":"Puppet 7","value":7,"collection":"puppet7"},{"name":"Puppet 6","value":6,"collection":"puppet6"}]
20
+ puppet_unit_test_matrix=[{"puppet":7,"ruby":"2.7"},{"puppet":6,"ruby":"2.5"}]
21
+ github_action_test_matrix=[{"setfile":{"name":"Debian 11","value":"debian11-64"},"puppet":{"name":"Puppet 7","value":7,"collection":"puppet7"}},{"setfile":{"name":"Debian 11","value":"debian11-64"},"puppet":{"name":"Puppet 6","value":6,"collection":"puppet6"}}]
22
22
  ```
23
23
 
24
- Beaker setfiles formatted for readability:
24
+ Puppet major versions formatted for readability:
25
25
  ```json
26
26
  [
27
27
  {
28
- "name": "CentOS 7",
29
- "value": "centos7-64"
30
- },
31
- {
32
- "name": "CentOS 8",
33
- "value": "centos8-64"
28
+ "name": "Puppet 7",
29
+ "value": 7,
30
+ "collection": "puppet7"
34
31
  },
35
32
  {
36
- "name": "Debian 10",
37
- "value": "debian10-64"
38
- },
39
- {
40
- "name": "Ubuntu 18.04",
41
- "value": "ubuntu1804-64"
33
+ "name": "Puppet 6",
34
+ "value": 6,
35
+ "collection": "puppet6"
42
36
  }
43
37
  ]
44
38
  ```
45
39
 
46
- Puppet major versions formatted for readability:
40
+ Puppet unit test matrix formatted for readability:
47
41
  ```json
48
42
  [
49
43
  {
50
- "name": "Puppet 6",
51
- "value": 6,
52
- "collection": "puppet6"
44
+ "puppet": 7,
45
+ "ruby": "2.7"
53
46
  },
54
47
  {
55
- "name": "Puppet 5",
56
- "value": 5,
57
- "collection": "puppet5"
48
+ "puppet": 6,
49
+ "ruby": "2.5"
58
50
  }
59
51
  ]
60
52
  ```
61
53
 
62
- Puppet unit test matrix formatted for readability:
54
+ GitHub Action test matrix formatted for readability
63
55
  ```json
64
56
  [
65
57
  {
66
- "puppet": 6,
67
- "ruby": "2.5"
58
+ "setfile": {
59
+ "name": "Debian 11",
60
+ "value": "debian11-64"
61
+ },
62
+ "puppet": {
63
+ "name": "Puppet 7",
64
+ "value": 7,
65
+ "collection": "puppet7"
66
+ }
68
67
  },
69
68
  {
70
- "puppet": 5,
71
- "ruby": "2.4"
69
+ "setfile": {
70
+ "name": "Debian 11",
71
+ "value": "debian11-64"
72
+ },
73
+ "puppet": {
74
+ "name": "Puppet 6",
75
+ "value": 6,
76
+ "collection": "puppet6"
77
+ }
72
78
  }
73
79
  ]
74
80
  ```
@@ -14,9 +14,9 @@ module PuppetMetadata
14
14
  'RedHat' => {
15
15
  '5' => 5..7,
16
16
  '6' => 5..7,
17
- '7' => 5..7,
18
- '8' => 5..7,
19
- '9' => 6..7,
17
+ '7' => 5..8,
18
+ '8' => 5..8,
19
+ '9' => 6..8,
20
20
  },
21
21
  'Fedora' => {
22
22
  '26' => [5],
@@ -27,26 +27,27 @@ module PuppetMetadata
27
27
  '31' => 5..7,
28
28
  '32' => 6..7,
29
29
  '34' => 6..7,
30
+ '36' => 7-8,
30
31
  },
31
32
  'SLES' => {
32
33
  '11' => [7],
33
- '12' => [7],
34
- '15' => [7],
34
+ '12' => 7..8,
35
+ '15' => 7..8,
35
36
  },
36
37
  # deb-based
37
38
  'Debian' => {
38
39
  '7' => [5],
39
40
  '8' => 5..6,
40
41
  '9' => 5..7,
41
- '10' => 5..7,
42
- '11' => 6..7,
42
+ '10' => 5..8,
43
+ '11' => 6..8,
43
44
  },
44
45
  'Ubuntu' => {
45
46
  '14.04' => 5..6,
46
47
  '16.04' => 5..7,
47
- '18.04' => 5..7,
48
- '20.04' => 6..7,
49
- '22.04' => 6..7,
48
+ '18.04' => 5..8,
49
+ '20.04' => 6..8,
50
+ '22.04' => 6..8,
50
51
  },
51
52
  }.freeze
52
53
 
@@ -55,6 +56,7 @@ module PuppetMetadata
55
56
  5 => '2.4',
56
57
  6 => '2.5',
57
58
  7 => '2.7',
59
+ 8 => '3.2',
58
60
  }.freeze
59
61
 
60
62
  class << self
@@ -71,7 +71,7 @@ module PuppetMetadata
71
71
  # Return whether a Beaker setfile can be generated for the given OS
72
72
  # @param [String] os The operating system
73
73
  def os_supported?(os)
74
- ['Archlinux', 'CentOS', 'Fedora', 'Debian', 'Ubuntu'].include?(os)
74
+ ['Archlinux', 'CentOS', 'Fedora', 'Debian', 'Ubuntu', 'Rocky', 'AlmaLinux'].include?(os)
75
75
  end
76
76
 
77
77
  private
@@ -13,7 +13,6 @@ module PuppetMetadata
13
13
  # @return [Hash[Symbol, Any]] The outputs for Github Actions
14
14
  def outputs
15
15
  {
16
- beaker_setfiles: beaker_setfiles,
17
16
  puppet_major_versions: puppet_major_versions,
18
17
  puppet_unit_test_matrix: puppet_unit_test_matrix,
19
18
  github_action_test_matrix: github_action_test_matrix,
@@ -22,18 +21,6 @@ module PuppetMetadata
22
21
 
23
22
  private
24
23
 
25
-
26
- def beaker_setfiles
27
- setfiles = []
28
- metadata.beaker_setfiles(use_fqdn: options[:beaker_use_fqdn], pidfile_workaround: options[:beaker_pidfile_workaround], domain: options[:domain]) do |setfile, name|
29
- setfiles << {
30
- name: name,
31
- value: setfile,
32
- }
33
- end
34
- setfiles
35
- end
36
-
37
24
  def puppet_major_versions
38
25
  metadata.puppet_major_versions.sort.reverse.map do |version|
39
26
  next if puppet_version_below_minimum?(version)
@@ -188,25 +188,6 @@ module PuppetMetadata
188
188
  PuppetMetadata::GithubActions.new(self, options)
189
189
  end
190
190
 
191
- # @param [Boolean] use_fqdn
192
- # Whether to set the hostname to a fully qualified domain name (deprecated, use domain)
193
- # @param [Boolean] pidfile_workaround
194
- # Whether to apply the Docker pidfile workaround
195
- # @param [String] domain
196
- # Enforce a domain to be appended to the hostname, making it an FQDN
197
- # @yieldparam [String] setfile
198
- # The supported setfile configurations
199
- # @see PuppetMetadata::Beaker#os_release_to_setfile
200
- def beaker_setfiles(use_fqdn: false, pidfile_workaround: false, domain: nil)
201
- operatingsystems.each do |os, releases|
202
- next unless PuppetMetadata::Beaker.os_supported?(os)
203
- releases&.each do |release|
204
- setfile = PuppetMetadata::Beaker.os_release_to_setfile(os, release, use_fqdn: use_fqdn, pidfile_workaround: pidfile_workaround, domain: domain)
205
- yield setfile if setfile
206
- end
207
- end
208
- end
209
-
210
191
  private
211
192
 
212
193
  def build_version_requirement_hash(array)
@@ -115,7 +115,7 @@ module PuppetMetadata
115
115
  '19.10' => '2020-07-15',
116
116
  '19.04' => '2020-01-15',
117
117
  '18.10' => '2019-07-15',
118
- '18.04' => '2023-04-15',
118
+ '18.04' => '2023-05-31',
119
119
  '17.10' => '2018-07-15',
120
120
  '17.04' => '2018-01-15',
121
121
  '16.10' => '2017-07-20',
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: 1.10.0
4
+ version: 2.1.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: 2022-12-20 00:00:00.000000000 Z
12
+ date: 2023-04-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: metadata-json-lint
@@ -132,7 +132,7 @@ files:
132
132
  - lib/puppet_metadata/github_actions.rb
133
133
  - lib/puppet_metadata/metadata.rb
134
134
  - lib/puppet_metadata/operatingsystem.rb
135
- homepage: http://github.com/voxpupuli/puppet_metadata
135
+ homepage: https://github.com/voxpupuli/puppet_metadata
136
136
  licenses:
137
137
  - Apache-2.0
138
138
  metadata: {}