beaker_puppet_helpers 2.2.0 → 3.0.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: 96b07dc57cf6ef1d1321846d99f810b208ec187cae8fcbb9f9671a7cb00684d5
4
- data.tar.gz: 71d45ebf93c52dd19cf097d828487148190ffe249a52ba44fdf0b369642d9347
3
+ metadata.gz: beb12f94905d8996a9533136b2ba29bd4c70956f2b7914357c943ca111e39869
4
+ data.tar.gz: 36cfcfa787c4e2ff2b9e20bad58e535c062d88682143a8cc1985f4aa53219bde
5
5
  SHA512:
6
- metadata.gz: d2a513bb98b4908fa0563adc2afd8d1e187db0f3ae79de0871a62a5d4db13c35fe5ee8c792a5f8f14c3c3eb6104c4ed6c47e175b8318097359dfbc2293ebeb8c
7
- data.tar.gz: cb55fb6ce9dc07741e88b30ea2e3497a24ecc1c5f34c31850609923b505f0d70c1cac195716489154ffbc6b5584f4fb949d4fa0a1e53f4f317f2c48b28108bf1
6
+ metadata.gz: ce9c0050e80fe4db7d2bfc9fad822456c0740cde672473531c9934b1e6b6bc205cab5305cdf32c2cc842c8b460bd0052bb9d18bad139fd95c3a09a0efb41ceba
7
+ data.tar.gz: 23b5c9cf10e4aed595a91d017ecf2928b2a2c92be2a1339597fd33edcb02c331527d249cd3d119c33ad1d8bb30d4462af85f2e65ce47377e583351785a204172
@@ -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,31 +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
18
  - uses: actions/checkout@v4
14
- - name: Install Ruby 3.4
19
+ - name: Install Ruby
15
20
  uses: ruby/setup-ruby@v1
16
21
  with:
17
- ruby-version: '3.4'
18
- bundler: 'none'
22
+ ruby-version: 'ruby'
19
23
  - name: Build gem
20
- 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@v4
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@v5
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@v5
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@v5
77
+ with:
78
+ name: gem-artifact
79
+ - uses: rubygems/configure-rubygems-credentials@v1.0.0
21
80
  - name: Publish gem to rubygems.org
81
+ shell: bash
22
82
  run: gem push *.gem
23
- env:
24
- GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_AUTH_TOKEN }}'
25
- - 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@v5
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
26
104
  run: |
27
- mkdir -p ~/.gem
28
- echo ":github: Bearer ${{ secrets.GITHUB_TOKEN }}" >> ~/.gem/credentials
29
- chmod 0600 ~/.gem/credentials
30
- - name: Publish gem to GitHub packages
31
- run: gem push --key github --host https://rubygems.pkg.github.com/${{ github.repository_owner }} *.gem
105
+ gem install rubygems-await
106
+ gem await *.gem
@@ -1,3 +1,4 @@
1
+ ---
1
2
  name: CI
2
3
 
3
4
  on:
@@ -8,7 +9,6 @@ on:
8
9
 
9
10
  env:
10
11
  BEAKER_HYPERVISOR: docker
11
- BUNDLE_WITHOUT: release
12
12
 
13
13
  jobs:
14
14
  rubocop_and_matrix:
data/.rubocop.yml CHANGED
@@ -12,3 +12,6 @@ RSpec/SubjectStub:
12
12
 
13
13
  RSpec/StubbedMock:
14
14
  Enabled: false
15
+
16
+ AllCops:
17
+ TargetRubyVersion: 3.2
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 10:04:32 UTC using RuboCop version 1.63.5.
2
+ # `rubocop --auto-gen-config --no-auto-gen-timestamp`
3
+ # using RuboCop version 1.75.8.
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
data/CHANGELOG.md CHANGED
@@ -2,6 +2,30 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [3.0.0](https://github.com/voxpupuli/beaker_puppet_helpers/tree/3.0.0) (2025-08-07)
6
+
7
+ [Full Changelog](https://github.com/voxpupuli/beaker_puppet_helpers/compare/2.3.0...3.0.0)
8
+
9
+ **Breaking changes:**
10
+
11
+ - Require Ruby 3.2 or newer [\#73](https://github.com/voxpupuli/beaker_puppet_helpers/pull/73) ([bastelfreak](https://github.com/bastelfreak))
12
+
13
+ **Implemented enhancements:**
14
+
15
+ - beaker: Allow 7.x [\#72](https://github.com/voxpupuli/beaker_puppet_helpers/pull/72) ([bastelfreak](https://github.com/bastelfreak))
16
+
17
+ **Merged pull requests:**
18
+
19
+ - CI: Dont test on Debian 10 [\#71](https://github.com/voxpupuli/beaker_puppet_helpers/pull/71) ([bastelfreak](https://github.com/bastelfreak))
20
+
21
+ ## [2.3.0](https://github.com/voxpupuli/beaker_puppet_helpers/tree/2.3.0) (2025-06-15)
22
+
23
+ [Full Changelog](https://github.com/voxpupuli/beaker_puppet_helpers/compare/2.2.0...2.3.0)
24
+
25
+ **Implemented enhancements:**
26
+
27
+ - Remove base64 & benchmark dependencies [\#68](https://github.com/voxpupuli/beaker_puppet_helpers/pull/68) ([bastelfreak](https://github.com/bastelfreak))
28
+
5
29
  ## [2.2.0](https://github.com/voxpupuli/beaker_puppet_helpers/tree/2.2.0) (2025-03-19)
6
30
 
7
31
  [Full Changelog](https://github.com/voxpupuli/beaker_puppet_helpers/compare/2.1.0...2.2.0)
data/Gemfile CHANGED
@@ -12,10 +12,6 @@ group :development do
12
12
  gem 'yard'
13
13
  end
14
14
 
15
- group :rubocop do
16
- gem 'voxpupuli-rubocop', '~> 3.0.0'
17
- end
18
-
19
15
  group :test do
20
16
  gem 'rspec', '~> 3.0'
21
17
  end
@@ -27,7 +23,7 @@ when 'vagrant', 'vagrant_libvirt'
27
23
  gem 'beaker-vagrant'
28
24
  end
29
25
 
30
- group :release do
26
+ group :release, optional: true do
31
27
  gem 'faraday-retry', require: false
32
28
  gem 'github_changelog_generator', require: false
33
29
  end
data/Rakefile CHANGED
@@ -35,7 +35,7 @@ DESC
35
35
  task :acceptance do
36
36
  hosts = {
37
37
  aio: %w[centos9 debian11 debian12],
38
- foss: %w[debian10 debian11 debian12 fedora37 fedora38],
38
+ foss: %w[debian11 debian12 fedora37 fedora38],
39
39
  }
40
40
  default_hosts = hosts.map { |type, h| h.map { |host| "#{host}-64{type=#{type}}" }.join('-') }.join('-')
41
41
  hosts = ENV['BEAKER_HOSTS'] || default_hosts
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'beaker_puppet_helpers'
5
- s.version = '2.2.0'
5
+ s.version = '3.0.0'
6
6
  s.authors = ['Vox Pupuli']
7
7
  s.email = ['voxpupuli@groups.io']
8
8
  s.homepage = 'https://github.com/voxpupuli/beaker_puppet_helpers'
@@ -10,15 +10,14 @@ Gem::Specification.new do |s|
10
10
  s.description = 'For use for the Beaker acceptance testing tool'
11
11
  s.license = 'Apache-2.0'
12
12
 
13
- s.required_ruby_version = '>= 2.7', '< 4'
13
+ s.required_ruby_version = '>= 3.2', '< 4'
14
14
 
15
15
  s.files = `git ls-files`.split("\n")
16
16
  s.require_paths = ['lib']
17
17
 
18
18
  # Run time dependencies
19
- s.add_dependency 'beaker', '>= 5.8.1', '< 7'
19
+ s.add_dependency 'beaker', '>= 5.8.1', '< 8'
20
20
  s.add_dependency 'puppet-modulebuilder', '>= 0.3', '< 3'
21
- # we need to declare both dependencies explicitly on Ruby 3.4+
22
- s.add_dependency 'base64', '~> 0.2.0'
23
- s.add_dependency 'benchmark', '~> 0.4.0'
21
+
22
+ s.add_development_dependency 'voxpupuli-rubocop', '~> 4.1.0'
24
23
  end
@@ -189,8 +189,8 @@ module BeakerPuppetHelpers
189
189
  # @return [Array<Result>, Result, nil] An array of results, a result
190
190
  # object, or nil. Check {Beaker::Shared::HostManager#run_block_on} for
191
191
  # more details on this.
192
- def apply_manifest(manifest, opts = {}, &block)
193
- apply_manifest_on(default, manifest, opts, &block)
192
+ def apply_manifest(manifest, opts = {}, &)
193
+ apply_manifest_on(default, manifest, opts, &)
194
194
  end
195
195
 
196
196
  # Get a facter fact from a provided host
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker_puppet_helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-03-19 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: beaker
@@ -18,7 +18,7 @@ dependencies:
18
18
  version: 5.8.1
19
19
  - - "<"
20
20
  - !ruby/object:Gem::Version
21
- version: '7'
21
+ version: '8'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -28,7 +28,7 @@ dependencies:
28
28
  version: 5.8.1
29
29
  - - "<"
30
30
  - !ruby/object:Gem::Version
31
- version: '7'
31
+ version: '8'
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: puppet-modulebuilder
34
34
  requirement: !ruby/object:Gem::Requirement
@@ -50,33 +50,19 @@ dependencies:
50
50
  - !ruby/object:Gem::Version
51
51
  version: '3'
52
52
  - !ruby/object:Gem::Dependency
53
- name: base64
53
+ name: voxpupuli-rubocop
54
54
  requirement: !ruby/object:Gem::Requirement
55
55
  requirements:
56
56
  - - "~>"
57
57
  - !ruby/object:Gem::Version
58
- version: 0.2.0
59
- type: :runtime
60
- prerelease: false
61
- version_requirements: !ruby/object:Gem::Requirement
62
- requirements:
63
- - - "~>"
64
- - !ruby/object:Gem::Version
65
- version: 0.2.0
66
- - !ruby/object:Gem::Dependency
67
- name: benchmark
68
- requirement: !ruby/object:Gem::Requirement
69
- requirements:
70
- - - "~>"
71
- - !ruby/object:Gem::Version
72
- version: 0.4.0
73
- type: :runtime
58
+ version: 4.1.0
59
+ type: :development
74
60
  prerelease: false
75
61
  version_requirements: !ruby/object:Gem::Requirement
76
62
  requirements:
77
63
  - - "~>"
78
64
  - !ruby/object:Gem::Version
79
- version: 0.4.0
65
+ version: 4.1.0
80
66
  description: For use for the Beaker acceptance testing tool
81
67
  email:
82
68
  - voxpupuli@groups.io
@@ -85,6 +71,7 @@ extensions: []
85
71
  extra_rdoc_files: []
86
72
  files:
87
73
  - ".github/dependabot.yml"
74
+ - ".github/release.yml"
88
75
  - ".github/workflows/release.yml"
89
76
  - ".github/workflows/test.yml"
90
77
  - ".gitignore"
@@ -119,7 +106,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
119
106
  requirements:
120
107
  - - ">="
121
108
  - !ruby/object:Gem::Version
122
- version: '2.7'
109
+ version: '3.2'
123
110
  - - "<"
124
111
  - !ruby/object:Gem::Version
125
112
  version: '4'
@@ -129,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
129
116
  - !ruby/object:Gem::Version
130
117
  version: '0'
131
118
  requirements: []
132
- rubygems_version: 3.6.2
119
+ rubygems_version: 3.6.9
133
120
  specification_version: 4
134
121
  summary: Beaker's Puppet DSL Extension Helpers
135
122
  test_files: []