beaker-hiera 1.1.1 → 2.1.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: '09b212e362fa594e532f6492163977dc3535be4aef9bd8fafeda5f0bff798ac1'
4
- data.tar.gz: 9cb843cc2055ebc4c213cc5ac51c99669ae10d7bfec1835db916cc45c0a55379
3
+ metadata.gz: 05604decdcf144229079072c7bc33e49e3e6cfb797e46e7ab0f3bc88f517bd00
4
+ data.tar.gz: fcff09ef8ac306b6a831f51e8b584823605a8511c175e914f1d02fee3e4e4c14
5
5
  SHA512:
6
- metadata.gz: b50166b1991e2a83795d36a790737cd09f7dd9e1ee8544842bf55970cad54b59df4ff7cbc7cb56265013dc23f73570b1ab128542f7b418e4adf5c56f6ffa36a4
7
- data.tar.gz: 3e47767c8da360497cd526be181855582f92e97d383dff5d6e10641dcee4717b38661f9e26b8bf618a74d08e7c8c82d27b4e86412872fa334275811a225a44c5
6
+ metadata.gz: e954f369c6fda89a573ff97d5c967952a5af004f7c474b22ee667afb18390d4c731aaf2925a620003d81c1588eed09d11ce56e0bd4342ff4b32e1bbe018259d6
7
+ data.tar.gz: 330b1f647ebc3e14a2b5c00252f67efb7498899f793e68086874cf1445386d5c21dc69dd6875f760577a76e9f23330c250486242230afe09a303087eacfb0d68
@@ -0,0 +1,41 @@
1
+ ---
2
+ # https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes
3
+
4
+ changelog:
5
+ exclude:
6
+ labels:
7
+ - duplicate
8
+ - invalid
9
+ - modulesync
10
+ - question
11
+ - skip-changelog
12
+ - wont-fix
13
+ - wontfix
14
+ - github_actions
15
+
16
+ categories:
17
+ - title: Breaking Changes 🛠
18
+ labels:
19
+ - backwards-incompatible
20
+
21
+ - title: New Features 🎉
22
+ labels:
23
+ - enhancement
24
+
25
+ - title: Bug Fixes 🐛
26
+ labels:
27
+ - bug
28
+ - bugfix
29
+
30
+ - title: Documentation Updates 📚
31
+ labels:
32
+ - documentation
33
+ - docs
34
+
35
+ - title: Dependency Updates ⬆️
36
+ labels:
37
+ - dependencies
38
+
39
+ - title: Other Changes
40
+ labels:
41
+ - "*"
@@ -1,32 +1,106 @@
1
- name: Release
1
+ ---
2
+ name: Gem Release
2
3
 
3
4
  on:
4
5
  push:
5
6
  tags:
6
7
  - '*'
7
8
 
9
+ permissions: {}
10
+
8
11
  jobs:
9
- release:
10
- runs-on: ubuntu-latest
12
+ build-release:
13
+ # Prevent releases from forked repositories
11
14
  if: github.repository_owner == 'voxpupuli'
15
+ name: Build the gem
16
+ runs-on: ubuntu-24.04
12
17
  steps:
13
- - uses: actions/checkout@v4
14
- - name: Install Ruby 3.3
18
+ - uses: actions/checkout@v6
19
+ - name: Install Ruby
15
20
  uses: ruby/setup-ruby@v1
16
21
  with:
17
- ruby-version: '3.3'
18
- env:
19
- BUNDLE_WITHOUT: release:development:rubocop
22
+ ruby-version: 'ruby'
20
23
  - name: Build gem
21
- run: gem build --strict --verbose *.gemspec
24
+ shell: bash
25
+ run: gem build --verbose *.gemspec
26
+ - name: Upload gem to GitHub cache
27
+ uses: actions/upload-artifact@v6
28
+ with:
29
+ name: gem-artifact
30
+ path: '*.gem'
31
+ retention-days: 1
32
+ compression-level: 0
33
+
34
+ create-github-release:
35
+ needs: build-release
36
+ name: Create GitHub release
37
+ runs-on: ubuntu-24.04
38
+ permissions:
39
+ contents: write # clone repo and create release
40
+ steps:
41
+ - name: Download gem from GitHub cache
42
+ uses: actions/download-artifact@v7
43
+ with:
44
+ name: gem-artifact
45
+ - name: Create Release
46
+ shell: bash
47
+ env:
48
+ GH_TOKEN: ${{ github.token }}
49
+ run: gh release create --repo ${{ github.repository }} ${{ github.ref_name }} --generate-notes *.gem
50
+
51
+ release-to-github:
52
+ needs: build-release
53
+ name: Release to GitHub
54
+ runs-on: ubuntu-24.04
55
+ permissions:
56
+ packages: write # publish to rubygems.pkg.github.com
57
+ steps:
58
+ - name: Download gem from GitHub cache
59
+ uses: actions/download-artifact@v7
60
+ with:
61
+ name: gem-artifact
62
+ - name: Publish gem to GitHub packages
63
+ run: gem push --host https://rubygems.pkg.github.com/${{ github.repository_owner }} *.gem
64
+ env:
65
+ GEM_HOST_API_KEY: ${{ secrets.GITHUB_TOKEN }}
66
+
67
+ release-to-rubygems:
68
+ needs: build-release
69
+ name: Release gem to rubygems.org
70
+ runs-on: ubuntu-24.04
71
+ environment: release # recommended by rubygems.org
72
+ permissions:
73
+ id-token: write # rubygems.org authentication
74
+ steps:
75
+ - name: Download gem from GitHub cache
76
+ uses: actions/download-artifact@v7
77
+ with:
78
+ name: gem-artifact
79
+ - uses: rubygems/configure-rubygems-credentials@v1.0.0
22
80
  - name: Publish gem to rubygems.org
81
+ shell: bash
23
82
  run: gem push *.gem
24
- env:
25
- GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_AUTH_TOKEN }}'
26
- - name: Setup GitHub packages access
83
+
84
+ release-verification:
85
+ name: Check that all releases are done
86
+ runs-on: ubuntu-24.04
87
+ permissions:
88
+ contents: read # minimal permissions that we have to grant
89
+ needs:
90
+ - create-github-release
91
+ - release-to-github
92
+ - release-to-rubygems
93
+ steps:
94
+ - name: Download gem from GitHub cache
95
+ uses: actions/download-artifact@v7
96
+ with:
97
+ name: gem-artifact
98
+ - name: Install Ruby
99
+ uses: ruby/setup-ruby@v1
100
+ with:
101
+ ruby-version: 'ruby'
102
+ - name: Wait for release to propagate
103
+ shell: bash
27
104
  run: |
28
- mkdir -p ~/.gem
29
- echo ":github: Bearer ${{ secrets.GITHUB_TOKEN }}" >> ~/.gem/credentials
30
- chmod 0600 ~/.gem/credentials
31
- - name: Publish gem to GitHub packages
32
- run: gem push --key github --host https://rubygems.pkg.github.com/voxpupuli *.gem
105
+ gem install rubygems-await
106
+ gem await *.gem
@@ -1,3 +1,4 @@
1
+ ---
1
2
  name: Test
2
3
 
3
4
  on:
@@ -6,38 +7,36 @@ on:
6
7
  branches:
7
8
  - master
8
9
 
9
- env:
10
- BUNDLE_WITHOUT: release
10
+ permissions:
11
+ contents: read
11
12
 
12
13
  jobs:
13
- rubocop:
14
- runs-on: ubuntu-latest
14
+ rubocop_and_matrix:
15
+ runs-on: ubuntu-24.04
16
+ outputs:
17
+ ruby: ${{ steps.ruby.outputs.versions }}
15
18
  steps:
16
- - uses: actions/checkout@v4
19
+ - uses: actions/checkout@v6
17
20
  - name: Install Ruby ${{ matrix.ruby }}
18
21
  uses: ruby/setup-ruby@v1
19
22
  with:
20
- ruby-version: "3.3"
23
+ ruby-version: '4.0'
21
24
  bundler-cache: true
22
25
  - name: Run Rubocop
23
26
  run: bundle exec rake rubocop
27
+ - id: ruby
28
+ uses: voxpupuli/ruby-version@v2
29
+
24
30
  spec:
25
- runs-on: ubuntu-latest
31
+ runs-on: ubuntu-24.04
32
+ needs: rubocop_and_matrix
26
33
  strategy:
27
34
  fail-fast: false
28
35
  matrix:
29
- include:
30
- - ruby: "2.7"
31
- coverage: "yes"
32
- - ruby: "3.0"
33
- - ruby: "3.1"
34
- - ruby: "3.2"
35
- - ruby: "3.3"
36
- env:
37
- COVERAGE: ${{ matrix.coverage }}
36
+ ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }}
38
37
  name: RSpec - Ruby ${{ matrix.ruby }}
39
38
  steps:
40
- - uses: actions/checkout@v4
39
+ - uses: actions/checkout@v6
41
40
  - name: Install Ruby ${{ matrix.ruby }}
42
41
  uses: ruby/setup-ruby@v1
43
42
  with:
@@ -49,10 +48,14 @@ jobs:
49
48
  run: gem build --strict --verbose *.gemspec
50
49
 
51
50
  tests:
51
+ if: always()
52
52
  needs:
53
+ - rubocop_and_matrix
53
54
  - spec
54
- - rubocop
55
- runs-on: ubuntu-latest
55
+ runs-on: ubuntu-24.04
56
56
  name: Test suite
57
57
  steps:
58
- - run: echo Test suite completed
58
+ - name: Decide whether the needed jobs succeeded or failed
59
+ uses: re-actors/alls-green@release/v1
60
+ with:
61
+ jobs: ${{ toJSON(needs) }}
data/.rubocop_todo.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
- # `rubocop --auto-gen-config`
3
- # on 2024-05-28 09:37:31 UTC using RuboCop version 1.63.5.
2
+ # `rubocop --auto-gen-config --no-auto-gen-timestamp`
3
+ # using RuboCop version 1.81.7.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
@@ -15,23 +15,12 @@ Naming/FileName:
15
15
  - 'Rakefile.rb'
16
16
  - 'lib/beaker-hiera.rb'
17
17
 
18
- # Offense count: 1
19
- # Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
20
- # Include: **/*_spec*rb*, **/spec/**/*
21
- RSpec/FilePath:
22
- Exclude:
23
- - 'spec/beaker-hiera/helpers_spec.rb'
24
-
25
18
  # Offense count: 6
26
19
  # Configuration parameters: .
27
20
  # SupportedStyles: have_received, receive
28
21
  RSpec/MessageSpies:
29
22
  EnforcedStyle: receive
30
23
 
31
- # Offense count: 2
32
- RSpec/MultipleExpectations:
33
- Max: 2
34
-
35
24
  # Offense count: 11
36
25
  # Configuration parameters: EnforcedStyle, IgnoreSharedExamples.
37
26
  # SupportedStyles: always, named_only
@@ -40,8 +29,8 @@ RSpec/NamedSubject:
40
29
  - 'spec/beaker-hiera/helpers_spec.rb'
41
30
 
42
31
  # Offense count: 1
43
- # Configuration parameters: Include, CustomTransform, IgnoreMethods, IgnoreMetadata.
44
- # Include: **/*_spec.rb
32
+ # Configuration parameters: CustomTransform, IgnoreMethods, IgnoreMetadata, InflectorPath, EnforcedInflector.
33
+ # SupportedInflectors: default, active_support
45
34
  RSpec/SpecFilePathFormat:
46
35
  Exclude:
47
36
  - '**/spec/routing/**/*'
@@ -59,18 +48,17 @@ RSpec/SubjectStub:
59
48
 
60
49
  # Offense count: 1
61
50
  # This cop supports unsafe autocorrection (--autocorrect-all).
62
- # Configuration parameters: .
63
- # SupportedStyles: constant, string
64
51
  RSpec/VerifiedDoubleReference:
65
- EnforcedStyle: string
52
+ Exclude:
53
+ - 'spec/beaker-hiera/helpers_spec.rb'
66
54
 
67
- # Offense count: 10
55
+ # Offense count: 9
68
56
  # This cop supports unsafe autocorrection (--autocorrect-all).
69
57
  # Configuration parameters: EnforcedStyle.
70
58
  # SupportedStyles: always, always_true, never
71
59
  Style/FrozenStringLiteralComment:
72
60
  Exclude:
73
- - '.simplecov'
61
+ - '**/*.arb'
74
62
  - 'Gemfile'
75
63
  - 'Rakefile'
76
64
  - 'beaker-hiera.gemspec'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.1.0](https://github.com/voxpupuli/beaker-hiera/tree/2.1.0) (2026-01-06)
4
+
5
+ [Full Changelog](https://github.com/voxpupuli/beaker-hiera/compare/2.0.0...2.1.0)
6
+
7
+ **Implemented enhancements:**
8
+
9
+ - Add Ruby 4.0 support [\#54](https://github.com/voxpupuli/beaker-hiera/pull/54) ([bastelfreak](https://github.com/bastelfreak))
10
+
11
+ ## [2.0.0](https://github.com/voxpupuli/beaker-hiera/tree/2.0.0) (2025-08-07)
12
+
13
+ [Full Changelog](https://github.com/voxpupuli/beaker-hiera/compare/1.1.1...2.0.0)
14
+
15
+ **Breaking changes:**
16
+
17
+ - Require Ruby 3.2 or newer [\#44](https://github.com/voxpupuli/beaker-hiera/pull/44) ([bastelfreak](https://github.com/bastelfreak))
18
+
19
+ **Implemented enhancements:**
20
+
21
+ - CI: Generate matrix dynamically / drop simplecov [\#43](https://github.com/voxpupuli/beaker-hiera/pull/43) ([bastelfreak](https://github.com/bastelfreak))
22
+ - beaker: Allow 7.x [\#42](https://github.com/voxpupuli/beaker-hiera/pull/42) ([bastelfreak](https://github.com/bastelfreak))
23
+
3
24
  ## [1.1.1](https://github.com/voxpupuli/beaker-hiera/tree/1.1.1) (2024-05-28)
4
25
 
5
26
  [Full Changelog](https://github.com/voxpupuli/beaker-hiera/compare/1.1.0...1.1.1)
data/Gemfile CHANGED
@@ -2,7 +2,7 @@ source ENV['GEM_SOURCE'] || 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- group :release do
6
- gem 'faraday-retry', require: false
7
- gem 'github_changelog_generator', require: false
5
+ group :release, optional: true do
6
+ gem 'faraday-retry', '~> 2.1', require: false
7
+ gem 'github_changelog_generator', '~> 1.16.4', require: false
8
8
  end
data/beaker-hiera.gemspec CHANGED
@@ -15,15 +15,14 @@ Gem::Specification.new do |s|
15
15
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
16
16
  s.require_paths = ['lib']
17
17
 
18
- s.required_ruby_version = '>= 2.7', '< 4'
18
+ s.required_ruby_version = '>= 3.2', '< 5'
19
19
 
20
20
  # Testing dependencies
21
21
  s.add_development_dependency 'pry', '~> 0.10'
22
22
  s.add_development_dependency 'rake', '~> 13.0'
23
23
  s.add_development_dependency 'rspec', '~> 3.0'
24
- s.add_development_dependency 'simplecov', '~> 0.22.0'
25
- s.add_development_dependency 'voxpupuli-rubocop', '~> 2.7.0'
24
+ s.add_development_dependency 'voxpupuli-rubocop', '~> 5.1.0'
26
25
 
27
26
  # Run time dependencies
28
- s.add_runtime_dependency 'beaker', '>= 4', '< 7'
27
+ s.add_dependency 'beaker', '>= 4', '< 8'
29
28
  end
@@ -4,7 +4,7 @@ module Beaker
4
4
  module Hiera
5
5
  module Version
6
6
  # Current version of beaker-hiera
7
- STRING = '1.1.1'.freeze
7
+ STRING = '2.1.0'.freeze
8
8
  end
9
9
  end
10
10
  end
data/spec/spec_helper.rb CHANGED
@@ -1,4 +1,3 @@
1
- require 'simplecov'
2
1
  require 'beaker-hiera'
3
2
 
4
3
  RSpec.configure do |config|
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker-hiera
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  - Puppetlabs
9
- autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2024-05-28 00:00:00.000000000 Z
11
+ date: 1980-01-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: pry
@@ -53,34 +52,20 @@ dependencies:
53
52
  - - "~>"
54
53
  - !ruby/object:Gem::Version
55
54
  version: '3.0'
56
- - !ruby/object:Gem::Dependency
57
- name: simplecov
58
- requirement: !ruby/object:Gem::Requirement
59
- requirements:
60
- - - "~>"
61
- - !ruby/object:Gem::Version
62
- version: 0.22.0
63
- type: :development
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - "~>"
68
- - !ruby/object:Gem::Version
69
- version: 0.22.0
70
55
  - !ruby/object:Gem::Dependency
71
56
  name: voxpupuli-rubocop
72
57
  requirement: !ruby/object:Gem::Requirement
73
58
  requirements:
74
59
  - - "~>"
75
60
  - !ruby/object:Gem::Version
76
- version: 2.7.0
61
+ version: 5.1.0
77
62
  type: :development
78
63
  prerelease: false
79
64
  version_requirements: !ruby/object:Gem::Requirement
80
65
  requirements:
81
66
  - - "~>"
82
67
  - !ruby/object:Gem::Version
83
- version: 2.7.0
68
+ version: 5.1.0
84
69
  - !ruby/object:Gem::Dependency
85
70
  name: beaker
86
71
  requirement: !ruby/object:Gem::Requirement
@@ -90,7 +75,7 @@ dependencies:
90
75
  version: '4'
91
76
  - - "<"
92
77
  - !ruby/object:Gem::Version
93
- version: '7'
78
+ version: '8'
94
79
  type: :runtime
95
80
  prerelease: false
96
81
  version_requirements: !ruby/object:Gem::Requirement
@@ -100,7 +85,7 @@ dependencies:
100
85
  version: '4'
101
86
  - - "<"
102
87
  - !ruby/object:Gem::Version
103
- version: '7'
88
+ version: '8'
104
89
  description: For use for the Beaker acceptance testing tool
105
90
  email:
106
91
  - voxpupuli@groups.io
@@ -110,13 +95,13 @@ extensions: []
110
95
  extra_rdoc_files: []
111
96
  files:
112
97
  - ".github/dependabot.yml"
98
+ - ".github/release.yml"
113
99
  - ".github/workflows/release.yml"
114
100
  - ".github/workflows/test.yml"
115
101
  - ".gitignore"
116
102
  - ".rspec"
117
103
  - ".rubocop.yml"
118
104
  - ".rubocop_todo.yml"
119
- - ".simplecov"
120
105
  - CHANGELOG.md
121
106
  - Gemfile
122
107
  - LICENSE
@@ -133,7 +118,6 @@ homepage: https://github.com/voxpupuli/beaker-hiera
133
118
  licenses:
134
119
  - Apache-2.0
135
120
  metadata: {}
136
- post_install_message:
137
121
  rdoc_options: []
138
122
  require_paths:
139
123
  - lib
@@ -141,18 +125,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
141
125
  requirements:
142
126
  - - ">="
143
127
  - !ruby/object:Gem::Version
144
- version: '2.7'
128
+ version: '3.2'
145
129
  - - "<"
146
130
  - !ruby/object:Gem::Version
147
- version: '4'
131
+ version: '5'
148
132
  required_rubygems_version: !ruby/object:Gem::Requirement
149
133
  requirements:
150
134
  - - ">="
151
135
  - !ruby/object:Gem::Version
152
136
  version: '0'
153
137
  requirements: []
154
- rubygems_version: 3.5.9
155
- signing_key:
138
+ rubygems_version: 4.0.3
156
139
  specification_version: 4
157
140
  summary: Hiera DSL Helpers!
158
141
  test_files: []
data/.simplecov DELETED
@@ -1,9 +0,0 @@
1
- SimpleCov.configure do
2
- add_filter 'spec/'
3
- add_filter 'vendor/'
4
- add_filter do |file|
5
- file.lines_of_code < 10
6
- end
7
- end
8
-
9
- SimpleCov.start if ENV['BEAKER_HIERA_COVERAGE']