Compare commits

...

73 commits

Author SHA1 Message Date
Tim Meusel
c4ea89c7bf
Merge pull request #50 from voxpupuli/modulesync
modulesync 9.6.0-4-gdb4d91b
2025-05-28 17:57:05 +02:00
pccibot
fb8b63cd2a
modulesync 9.6.0-4-gdb4d91b 2025-05-28 15:43:08 +00:00
Tim Meusel
a1548cf7e5
Merge pull request #49 from voxpupuli/add-openvox
metadata.json: Add OpenVox
2025-03-19 21:21:15 +01:00
Jason Straw
5f04b07e9c
Add openvox to metadata.json 2025-03-19 14:04:54 -05:00
Tim Meusel
9d17a4d4f8
Merge pull request #48 from voxpupuli/modulesync
modulesync 9.5.0-4-g2cf9dc0
2025-03-19 15:40:54 +01:00
pccibot
4e104e262f
modulesync 9.5.0-4-g2cf9dc0 2025-03-19 13:14:03 +00:00
Tim Meusel
13553def3e
[blacksmith] Bump version to 3.3.1-rc0 2025-02-11 16:07:42 +01:00
Tim Meusel
2db021c6e2
Merge pull request #46 from voxpupuli/release-prep
Release 3.3.0
2025-02-11 16:06:56 +01:00
Release Automation
5fee23bff9 Release 3.3.0 2025-02-11 14:59:51 +00:00
Tim Meusel
d56416cfb7
Merge pull request #47 from bastelfreak/ubuntu24
Add Ubuntu 24.04 support
2025-02-11 15:58:59 +01:00
Tim Meusel
d519ef600d
Add Ubuntu 24.04 support 2025-02-11 15:53:18 +01:00
Tim Meusel
2eaae539d6
Merge pull request #44 from voxpupuli/modulesync
modulesync 9.1.0
2025-02-11 15:52:21 +01:00
Tim Meusel
fa2a7bff68
Merge pull request #45 from bastelfreak/apt2
puppetlabs/apt: Allow 10.x
2025-02-11 15:52:08 +01:00
Tim Meusel
a734fba308
puppetlabs/apt: Allow 10.x 2025-02-11 15:46:38 +01:00
Tim Meusel
9076e5e97a
modulesync 9.4.0 2025-02-05 10:21:16 +01:00
Tim Meusel
a635338303
modulesync 9.3.0 2024-09-16 20:46:31 +02:00
Tim Meusel
0b736b0ef5
modulesync 9.2.0 2024-09-13 14:41:01 +02:00
Tim Meusel
f383d32565
modulesync 9.1.0 2024-07-09 15:14:49 +02:00
Tim Meusel
0116f1caf5
Merge pull request #43 from voxpupuli/modulesync
modulesync 9.0.0
2024-06-12 12:47:51 +02:00
Tim Meusel
b6edd3777a
modulesync 9.0.0 2024-06-12 11:25:04 +02:00
Tim Meusel
cc529dea62
Merge pull request #42 from voxpupuli/modulesync
modulesync 8.0.1
2024-06-03 20:39:20 +02:00
Tim Meusel
b24a437c8c
modulesync 8.0.1 2024-06-03 18:43:38 +02:00
Tim Meusel
7777366f79
Merge pull request #41 from voxpupuli/modulesync
modulesync 7.5.0
2024-04-26 11:04:38 +02:00
markuszilch
0c133afe4b
modulesync 7.5.0 2024-04-25 17:15:50 +02:00
Markus Zilch
f6f808c6b3
Merge pull request #40 from voxpupuli/modulesync
modulesync 7.4.0
2024-04-13 01:06:10 +02:00
Tim Meusel
7073f88b8c
modulesync 7.4.0 2024-04-13 01:03:13 +02:00
Tim Meusel
edb01d72b1
[blacksmith] Bump version to 3.2.1-rc0 2024-03-24 21:44:08 +01:00
Tim Meusel
d9d0e30bcf
Merge pull request #39 from bastelfreak/rel320
Release 3.2.0
2024-03-24 21:42:54 +01:00
Tim Meusel
b0baa714f9
Release 3.2.0 2024-03-24 21:38:24 +01:00
Markus Zilch
5f806e0a8b
Merge pull request #38 from voxpupuli/modulesync
modulesync 7.3.0
2024-02-06 13:22:08 +01:00
markuszilch
7934180513
modulesync 7.3.0 2024-02-06 12:32:37 +01:00
Tim Meusel
5aebbda1fe
Merge pull request #37 from voxpupuli/modulesync
modulesync 7.2.0
2023-12-15 13:37:34 +01:00
Tim Meusel
53c5611c17
modulesync 7.2.0 2023-12-15 13:18:01 +01:00
Robert Grizzell
2e6986a13f
Add support for AArch64/ARM64 binaries (#36)
* Add support for AArch64/ARM64 binaries

* Update manifests/repo.pp

---------

Co-authored-by: Kenyon Ralph <kenyon@kenyonralph.com>
2023-11-30 15:50:15 -08:00
Tim Meusel
eb19c0ada2
[blacksmith] Bump version to 3.1.1-rc0 2023-11-19 12:40:42 +01:00
Tim Meusel
45f3539aab
Merge pull request #35 from bastelfreak/rel310
Release 3.1.0
2023-11-19 12:39:40 +01:00
Tim Meusel
4e30760edd
Release 3.1.0 2023-11-19 12:36:10 +01:00
Tim Meusel
f79ebaa3b7
Merge pull request #34 from bastelfreak/debian12
Add Debian 12 support
2023-11-18 23:19:20 +01:00
Tim Meusel
51aead9b5b
Add Debian 12 support 2023-11-18 18:48:32 +01:00
Tim Meusel
4371c15313
[blacksmith] Bump version to 3.0.1-rc0 2023-08-19 22:49:30 +02:00
Tim Meusel
9939845bb5
Merge pull request #33 from bastelfreak/rel300
Release 3.0.0
2023-08-19 22:48:47 +02:00
Tim Meusel
f85c0e1c91
Release 3.0.0 2023-08-19 22:42:43 +02:00
Tim Meusel
a2fcd501c2
Merge pull request #32 from bastelfreak/ubuntu
Add Ubuntu 22.04 support
2023-08-19 22:40:07 +02:00
Tim Meusel
5362eacb42
Merge pull request #31 from bastelfreak/debian
Add Debian 11 support
2023-08-19 22:37:53 +02:00
Tim Meusel
49430fe22c
Merge pull request #30 from bastelfreak/el9
Add EL9 support
2023-08-19 22:37:20 +02:00
Tim Meusel
b5efffa046
Merge pull request #29 from bastelfreak/el8
Add AlmaLinux/Rocky/OracleLinux support
2023-08-19 22:37:03 +02:00
Tim Meusel
2c73977159
Add Ubuntu 22.04 support 2023-08-19 22:34:36 +02:00
Tim Meusel
111a70112e
Add Debian 11 support 2023-08-19 22:33:46 +02:00
Tim Meusel
90be685aef
Add EL9 support 2023-08-19 22:31:52 +02:00
Tim Meusel
a9b8122a4f
Add AlmaLinux/Rocky/OracleLinux support 2023-08-19 22:30:53 +02:00
Tim Meusel
1adcdf5092
Merge pull request #27 from voxpupuli/puppet8_20230723
Add Puppet 8 support
2023-08-19 22:29:42 +02:00
Tim Meusel
d01ef71f0f
Add Puppet 8 support 2023-08-19 22:25:10 +02:00
Tim Meusel
07e2d9c55a
modulesync 7.0.0 2023-08-19 22:25:04 +02:00
Tim Meusel
55197bfb6d
modulesync 6.0.0 2023-08-19 22:25:04 +02:00
Tim Meusel
cfb42236a2
Merge pull request #26 from voxpupuli/stdlib9_20230723
puppetlabs/stdlib: Allow 9.x
2023-08-19 22:24:45 +02:00
Tim Meusel
7c499e9af0
puppetlabs/stdlib: Allow 9.x 2023-08-19 22:18:07 +02:00
Tim Meusel
05b2be143d
Merge pull request #28 from voxpupuli/puppet7
Drop Puppet 6 support
2023-08-19 22:17:46 +02:00
Tim Meusel
d5870ce6f4
Drop Puppet 6 support 2023-04-28 14:00:47 +02:00
Romain Tartière
7eae45628b
Merge pull request #24 from voxpupuli/modulesync
modulesync 5.5.0
2023-04-15 07:48:16 -10:00
Massimiliano Adamo
f7b6e2de9d
modulesync 5.5.0 2023-04-15 09:57:27 +02:00
Tim Meusel
df00263284
[blacksmith] Bump version to 2.2.1-rc0 2023-01-27 10:22:57 +01:00
Tim Meusel
fd70af1b0b
Merge pull request #23 from bastelfreak/rel220
Release 2.2.0
2023-01-27 10:22:31 +01:00
Tim Meusel
1b767380d4
Release 2.2.0 2023-01-27 10:17:20 +01:00
Bram Vogelaar
c6790e40c2
Merge pull request #21 from wimkorevaar/wimkorevaar-enable-toggle-yumrepo
add toggle for enabling yum repo
2023-01-27 09:38:51 +01:00
wimkorevaar
95853efb4e
Merge branch 'voxpupuli:master' into wimkorevaar-enable-toggle-yumrepo 2023-01-27 09:06:39 +01:00
Bram Vogelaar
6b47544e6e
Merge pull request #22 from BDelacour/master
use new gpg key
2023-01-26 22:00:47 +01:00
Benjamin Delacour
32ad7df19e
fix: use new gpg key (see https://status.hashicorp.com/incidents/fgkyvr1kwpdh) 2023-01-26 19:24:18 +01:00
wimkorevaar
283f474dd1
add toggle for enabling yum repo 2023-01-25 11:20:19 +01:00
Tim Meusel
e1ddfd95e2
Merge pull request #20 from voxpupuli/modulesync
modulesync 5.4.0
2022-12-21 23:31:58 +01:00
Tim Meusel
eece189d0e
modulesync 5.4.0 2022-12-20 15:56:39 +01:00
Tim Meusel
132ae81120
Merge pull request #19 from voxpupuli/modulesync
modulesync 5.3.0
2022-10-02 15:35:07 +02:00
Tim Meusel
d1218a7291
modulesync 5.3.0 2022-10-02 15:29:59 +02:00
Tim Meusel
957f1627ba
[blacksmith] Bump version to 2.1.1-rc0 2022-08-28 17:43:39 +02:00
23 changed files with 357 additions and 279 deletions

View file

@ -124,26 +124,36 @@ If you have Ruby 2.x or want a specific version of Puppet,
you must set an environment variable such as:
```sh
export PUPPET_VERSION="~> 5.5.6"
export PUPPET_GEM_VERSION="~> 6.1.0"
```
You can install all needed gems for spec tests into the modules directory by
running:
```sh
bundle install --path .vendor/ --without development system_tests release --jobs "$(nproc)"
bundle config set --local path '.vendor/'
bundle config set --local without 'development system_tests release'
bundle install --jobs "$(nproc)"
```
If you also want to run acceptance tests:
```sh
bundle install --path .vendor/ --with system_tests --without development release --jobs "$(nproc)"
bundle config set --local path '.vendor/'
bundle config set --local without 'development release'
bundle config set --local with 'system_tests'
bundle install --jobs "$(nproc)"
```
Our all in one solution if you don't know if you need to install or update gems:
```sh
bundle install --path .vendor/ --with system_tests --without development release --jobs "$(nproc)"; bundle update; bundle clean
bundle config set --local path '.vendor/'
bundle config set --local without 'development release'
bundle config set --local with 'system_tests'
bundle install --jobs "$(nproc)"
bundle update
bundle clean
```
As an alternative to the `--jobs "$(nproc)` parameter, you can set an
@ -232,19 +242,29 @@ simple tests against it after applying the module. You can run this
with:
```sh
BEAKER_setfile=debian10-x64 bundle exec rake beaker
BEAKER_PUPPET_COLLECTION=puppet7 BEAKER_setfile=debian11-64 bundle exec rake beaker
```
You can replace the string `debian10` with any common operating system.
or
```sh
BEAKER_PUPPET_COLLECTION=none BEAKER_setfile=archlinux-64 bundle exec rake beaker
```
This latter example will use the distribution's own version of Puppet.
You can replace the string `debian11` with any common operating system.
The following strings are known to work:
* ubuntu1604
* ubuntu1804
* ubuntu2004
* debian9
* debian10
* centos7
* centos8
* ubuntu2204
* debian11
* debian12
* centos9
* archlinux
* almalinux8
* almalinux9
* fedora36
For more information and tips & tricks, see [voxpupuli-acceptance's documentation](https://github.com/voxpupuli/voxpupuli-acceptance#running-tests).

3
.github/SECURITY.md vendored
View file

@ -1,3 +0,0 @@
# Vox Pupuli Security Policy
Our vulnerabilities reporting process is at https://voxpupuli.org/security/

View file

@ -1,5 +1,6 @@
---
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
--format documentation
--color
skip-changelog:
- head-branch: ['^release-*', 'release']

42
.github/release.yml vendored Normal file
View file

@ -0,0 +1,42 @@
---
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
# https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes
changelog:
exclude:
labels:
- duplicate
- invalid
- modulesync
- question
- skip-changelog
- wont-fix
- wontfix
categories:
- title: Breaking Changes 🛠
labels:
- backwards-incompatible
- title: New Features 🎉
labels:
- enhancement
- title: Bug Fixes 🐛
labels:
- bug
- title: Documentation Updates 📚
labels:
- documentation
- docs
- title: Dependency Updates ⬆️
labels:
- dependencies
- title: Other Changes
labels:
- "*"

View file

@ -4,87 +4,19 @@
name: CI
on: pull_request
# yamllint disable-line rule:truthy
on:
pull_request: {}
push:
branches:
- main
- master
concurrency:
group: ${{ github.head_ref }}
group: ${{ github.ref_name }}
cancel-in-progress: true
jobs:
setup_matrix:
name: 'Setup Test Matrix'
runs-on: ubuntu-latest
timeout-minutes: 40
outputs:
puppet_unit_test_matrix: ${{ steps.get-outputs.outputs.puppet_unit_test_matrix }}
github_action_test_matrix: ${{ steps.get-outputs.outputs.github_action_test_matrix }}
env:
BUNDLE_WITHOUT: development:system_tests:release
steps:
- uses: actions/checkout@v2
- name: Setup ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
bundler-cache: true
- name: Run static validations
run: bundle exec rake validate lint check
- name: Run rake rubocop
run: bundle exec rake rubocop
- name: Setup Test Matrix
id: get-outputs
run: bundle exec metadata2gha --use-fqdn --pidfile-workaround false
unit:
needs: setup_matrix
runs-on: ubuntu-latest
timeout-minutes: 40
strategy:
fail-fast: false
matrix:
include: ${{fromJson(needs.setup_matrix.outputs.puppet_unit_test_matrix)}}
env:
BUNDLE_WITHOUT: development:system_tests:release
PUPPET_VERSION: "~> ${{ matrix.puppet }}.0"
name: Puppet ${{ matrix.puppet }} (Ruby ${{ matrix.ruby }})
steps:
- uses: actions/checkout@v2
- name: Setup ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests
run: bundle exec rake parallel_spec
acceptance:
needs: setup_matrix
runs-on: ubuntu-latest
env:
BUNDLE_WITHOUT: development:test:release
strategy:
fail-fast: false
matrix:
include: ${{fromJson(needs.setup_matrix.outputs.github_action_test_matrix)}}
name: ${{ matrix.puppet.name }} - ${{ matrix.setfile.name }}
steps:
- uses: actions/checkout@v2
- name: Setup ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
bundler-cache: true
- name: Run tests
run: bundle exec rake beaker
env:
BEAKER_PUPPET_COLLECTION: ${{ matrix.puppet.collection }}
BEAKER_setfile: ${{ matrix.setfile.value }}
tests:
needs:
- unit
- acceptance
runs-on: ubuntu-latest
name: Test suite
steps:
- run: echo Test suite completed
puppet:
name: Puppet
uses: voxpupuli/gha-puppet/.github/workflows/beaker.yml@v3

18
.github/workflows/labeler.yml vendored Normal file
View file

@ -0,0 +1,18 @@
---
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
name: "Pull Request Labeler"
# yamllint disable-line rule:truthy
on:
pull_request_target: {}
jobs:
labeler:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5

23
.github/workflows/prepare_release.yml vendored Normal file
View file

@ -0,0 +1,23 @@
---
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
name: 'Prepare Release'
on:
workflow_dispatch:
inputs:
version:
description: 'Module version to be released. Must be a valid semver string without leading v. (1.2.3)'
required: false
jobs:
release_prep:
uses: 'voxpupuli/gha-puppet/.github/workflows/prepare_release.yml@v3'
with:
version: ${{ github.event.inputs.version }}
allowed_owner: 'voxpupuli'
secrets:
# Configure secrets here:
# https://docs.github.com/en/actions/security-guides/encrypted-secrets
github_pat: '${{ secrets.PCCI_PAT_RELEASE_PREP }}'

View file

@ -4,31 +4,20 @@
name: Release
# yamllint disable-line rule:truthy
on:
push:
tags:
- '*'
env:
BUNDLE_WITHOUT: development:test:system_tests
jobs:
deploy:
name: 'deploy to forge'
runs-on: ubuntu-latest
if: github.repository_owner == 'voxpupuli'
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '2.7'
bundler-cache: true
- name: Build and Deploy
env:
# Configure secrets here:
# https://docs.github.com/en/free-pro-team@latest/actions/reference/encrypted-secrets
BLACKSMITH_FORGE_USERNAME: '${{ secrets.PUPPET_FORGE_USERNAME }}'
BLACKSMITH_FORGE_API_KEY: '${{ secrets.PUPPET_FORGE_API_KEY }}'
run: bundle exec rake module:push
release:
name: Release
uses: voxpupuli/gha-puppet/.github/workflows/release.yml@v3
with:
allowed_owner: 'voxpupuli'
secrets:
# Configure secrets here:
# https://docs.github.com/en/actions/security-guides/encrypted-secrets
username: ${{ secrets.PUPPET_FORGE_USERNAME }}
api_key: ${{ secrets.PUPPET_FORGE_API_KEY }}

38
.gitignore vendored
View file

@ -1,23 +1,25 @@
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
pkg/
Gemfile.lock
Gemfile.local
vendor/
.vendor/
spec/fixtures/manifests/
spec/fixtures/modules/
.vagrant/
.bundle/
.ruby-version
coverage/
log/
.idea/
.dependencies/
.librarian/
Puppetfile.lock
/pkg/
/Gemfile.lock
/Gemfile.local
/vendor/
/.vendor/
/spec/fixtures/manifests/
/spec/fixtures/modules/
/.vagrant/
/.bundle/
/.ruby-version
/coverage/
/log/
/.idea/
/.dependencies/
/.librarian/
/Puppetfile.lock
*.iml
.*.sw?
.yardoc/
Guardfile
/.yardoc/
/Guardfile
bolt-debug.log
.rerun.json

View file

@ -2,4 +2,4 @@
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
modulesync_config_version: '5.1.0'
modulesync_config_version: '9.7.0'

View file

@ -43,10 +43,12 @@ PreCommit:
enabled: true
description: 'Runs rubocop on modified files only'
command: ['bundle', 'exec', 'rubocop']
PuppetLint:
RakeTarget:
enabled: true
description: 'Runs puppet-lint on modified files only'
command: ['bundle', 'exec', 'puppet-lint']
description: 'Runs lint on modified files only'
targets:
- 'lint'
command: ['bundle', 'exec', 'rake']
YamlSyntax:
enabled: true
JsonSyntax:

View file

@ -1,37 +1,39 @@
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
docs/
pkg/
Gemfile
Gemfile.lock
Gemfile.local
vendor/
.vendor/
spec/
Rakefile
.vagrant/
.bundle/
.ruby-version
coverage/
log/
.idea/
.dependencies/
.github/
.librarian/
Puppetfile.lock
/docs/
/pkg/
/Gemfile
/Gemfile.lock
/Gemfile.local
/vendor/
/.vendor/
/spec/
/Rakefile
/.vagrant/
/.bundle/
/.ruby-version
/coverage/
/log/
/.idea/
/.dependencies/
/.github/
/.librarian/
/Puppetfile.lock
/Puppetfile
*.iml
.editorconfig
.fixtures.yml
.gitignore
.msync.yml
.overcommit.yml
.pmtignore
.rspec
.rspec_parallel
.rubocop.yml
.sync.yml
/.editorconfig
/.fixtures.yml
/.gitignore
/.msync.yml
/.overcommit.yml
/.pmtignore
/.rspec
/.rspec_parallel
/.rubocop.yml
/.sync.yml
.*.sw?
.yardoc/
.yardopts
Dockerfile
/.yardoc/
/.yardopts
/Dockerfile
/HISTORY.md

View file

@ -1,3 +1,4 @@
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
--fail-on-warnings
--no-parameter_documentation-check
--no-parameter_types-check

View file

@ -1,4 +0,0 @@
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
--format progress

View file

@ -1,5 +1,5 @@
---
Gemfile:
optional:
':test':
- gem: puppet-lint-param-docs
.puppet-lint.rc:
enabled_lint_checks:
- parameter_documentation
- parameter_types

View file

@ -4,6 +4,60 @@ All notable changes to this project will be documented in this file.
Each new release typically also includes the latest modulesync defaults.
These should not affect the functionality of the module.
## [v3.3.0](https://github.com/voxpupuli/puppet-hashi_stack/tree/v3.3.0) (2025-02-11)
[Full Changelog](https://github.com/voxpupuli/puppet-hashi_stack/compare/v3.2.0...v3.3.0)
**Merged pull requests:**
- Add Ubuntu 24.04 support [\#47](https://github.com/voxpupuli/puppet-hashi_stack/pull/47) ([bastelfreak](https://github.com/bastelfreak))
- puppetlabs/apt: Allow 10.x [\#45](https://github.com/voxpupuli/puppet-hashi_stack/pull/45) ([bastelfreak](https://github.com/bastelfreak))
## [v3.2.0](https://github.com/voxpupuli/puppet-hashi_stack/tree/v3.2.0) (2024-03-24)
[Full Changelog](https://github.com/voxpupuli/puppet-hashi_stack/compare/v3.1.0...v3.2.0)
**Implemented enhancements:**
- Add support for AArch64/ARM64 binaries [\#36](https://github.com/voxpupuli/puppet-hashi_stack/pull/36) ([rgrizzell](https://github.com/rgrizzell))
## [v3.1.0](https://github.com/voxpupuli/puppet-hashi_stack/tree/v3.1.0) (2023-11-19)
[Full Changelog](https://github.com/voxpupuli/puppet-hashi_stack/compare/v3.0.0...v3.1.0)
**Implemented enhancements:**
- Add Debian 12 support [\#34](https://github.com/voxpupuli/puppet-hashi_stack/pull/34) ([bastelfreak](https://github.com/bastelfreak))
## [v3.0.0](https://github.com/voxpupuli/puppet-hashi_stack/tree/v3.0.0) (2023-08-19)
[Full Changelog](https://github.com/voxpupuli/puppet-hashi_stack/compare/v2.2.0...v3.0.0)
**Breaking changes:**
- Drop Puppet 6 support [\#28](https://github.com/voxpupuli/puppet-hashi_stack/pull/28) ([bastelfreak](https://github.com/bastelfreak))
**Implemented enhancements:**
- Add Ubuntu 22.04 support [\#32](https://github.com/voxpupuli/puppet-hashi_stack/pull/32) ([bastelfreak](https://github.com/bastelfreak))
- Add Debian 11 support [\#31](https://github.com/voxpupuli/puppet-hashi_stack/pull/31) ([bastelfreak](https://github.com/bastelfreak))
- Add EL9 support [\#30](https://github.com/voxpupuli/puppet-hashi_stack/pull/30) ([bastelfreak](https://github.com/bastelfreak))
- Add AlmaLinux/Rocky/OracleLinux support [\#29](https://github.com/voxpupuli/puppet-hashi_stack/pull/29) ([bastelfreak](https://github.com/bastelfreak))
- Add Puppet 8 support [\#27](https://github.com/voxpupuli/puppet-hashi_stack/pull/27) ([bastelfreak](https://github.com/bastelfreak))
- puppetlabs/stdlib: Allow 9.x [\#26](https://github.com/voxpupuli/puppet-hashi_stack/pull/26) ([bastelfreak](https://github.com/bastelfreak))
## [v2.2.0](https://github.com/voxpupuli/puppet-hashi_stack/tree/v2.2.0) (2023-01-27)
[Full Changelog](https://github.com/voxpupuli/puppet-hashi_stack/compare/v2.1.0...v2.2.0)
**Implemented enhancements:**
- add toggle for enabling yum repo [\#21](https://github.com/voxpupuli/puppet-hashi_stack/pull/21) ([wimkorevaar](https://github.com/wimkorevaar))
**Merged pull requests:**
- use new gpg key [\#22](https://github.com/voxpupuli/puppet-hashi_stack/pull/22) ([BDelacour](https://github.com/BDelacour))
## [v2.1.0](https://github.com/voxpupuli/puppet-hashi_stack/tree/v2.1.0) (2022-08-28)
[Full Changelog](https://github.com/voxpupuli/puppet-hashi_stack/compare/v2.0.1...v2.1.0)

View file

@ -1,24 +0,0 @@
# MANAGED BY MODULESYNC
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
FROM ruby:2.7
WORKDIR /opt/puppet
# https://github.com/puppetlabs/puppet/blob/06ad255754a38f22fb3a22c7c4f1e2ce453d01cb/lib/puppet/provider/service/runit.rb#L39
RUN mkdir -p /etc/sv
ARG PUPPET_VERSION="~> 6.0"
ARG PARALLEL_TEST_PROCESSORS=4
# Cache gems
COPY Gemfile .
RUN bundle install --without system_tests development release --path=${BUNDLE_PATH:-vendor/bundle}
COPY . .
RUN bundle install
RUN bundle exec rake release_checks
# Container should not saved
RUN exit 1

17
Gemfile
View file

@ -1,14 +1,11 @@
# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/
source ENV['GEM_SOURCE'] || "https://rubygems.org"
source ENV['GEM_SOURCE'] || 'https://rubygems.org'
group :test do
gem 'voxpupuli-test', '~> 5.0', :require => false
gem 'coveralls', :require => false
gem 'simplecov-console', :require => false
gem 'puppet_metadata', '~> 1.0', :require => false
gem 'puppet-lint-param-docs', :require => false
gem 'voxpupuli-test', '~> 10.0', :require => false
gem 'puppet_metadata', '~> 5.0', :require => false
end
group :development do
@ -17,19 +14,17 @@ group :development do
end
group :system_tests do
gem 'voxpupuli-acceptance', '~> 1.0', :require => false
gem 'voxpupuli-acceptance', '~> 3.5', :require => false
end
group :release do
gem 'github_changelog_generator', '>= 1.16.1', :require => false if RUBY_VERSION >= '2.5'
gem 'voxpupuli-release', '>= 1.2.0', :require => false
gem 'puppet-strings', '>= 2.2', :require => false
gem 'voxpupuli-release', '~> 3.0', :require => false
end
gem 'rake', :require => false
gem 'facter', ENV['FACTER_GEM_VERSION'], :require => false, :groups => [:test]
puppetversion = ENV['PUPPET_VERSION'] || '>= 6.0'
puppetversion = ENV['PUPPET_GEM_VERSION'] || [">= 7.24", "< 9"]
gem 'puppet', puppetversion, :require => false, :groups => [:test]
# vim: syntax=ruby

View file

@ -6,11 +6,11 @@
### Classes
* [`hashi_stack::repo`](#hashi_stackrepo): Set up the package repository for the HashiCorp Stack components
* [`hashi_stack::repo`](#hashi_stack--repo): Set up the package repository for the HashiCorp Stack components
## Classes
### <a name="hashi_stackrepo"></a>`hashi_stack::repo`
### <a name="hashi_stack--repo"></a>`hashi_stack::repo`
This class installs the hashicorp repository
@ -36,23 +36,24 @@ package { 'packer':
The following parameters are available in the `hashi_stack::repo` class:
* [`priority`](#priority)
* [`proxy`](#proxy)
* [`key_id`](#key_id)
* [`key_source`](#key_source)
* [`description`](#description)
* [`rpm_base`](#rpm_base)
* [`repo_gpgcheck`](#repo_gpgcheck)
* [`priority`](#-hashi_stack--repo--priority)
* [`proxy`](#-hashi_stack--repo--proxy)
* [`key_id`](#-hashi_stack--repo--key_id)
* [`key_source`](#-hashi_stack--repo--key_source)
* [`description`](#-hashi_stack--repo--description)
* [`rpm_base`](#-hashi_stack--repo--rpm_base)
* [`repo_gpgcheck`](#-hashi_stack--repo--repo_gpgcheck)
* [`repo_enabled`](#-hashi_stack--repo--repo_enabled)
##### <a name="priority"></a>`priority`
##### <a name="-hashi_stack--repo--priority"></a>`priority`
Data type: `Optional[Integer]`
A numeric priority for the repo, passed to the package management system
Default value: ``undef``
Default value: `undef`
##### <a name="proxy"></a>`proxy`
##### <a name="-hashi_stack--repo--proxy"></a>`proxy`
Data type: `String`
@ -60,15 +61,15 @@ The URL of a HTTP proxy to use for package downloads (YUM only)
Default value: `'absent'`
##### <a name="key_id"></a>`key_id`
##### <a name="-hashi_stack--repo--key_id"></a>`key_id`
Data type: `String`
GPG key to authenticate Apt package signatures.
Default value: `'E8A032E094D8EB4EA189D270DA418C88A3219F7B'`
Default value: `'798AEC654E5C15428C8E42EEAA16FCBCA621E701'`
##### <a name="key_source"></a>`key_source`
##### <a name="-hashi_stack--repo--key_source"></a>`key_source`
Data type: `Stdlib::HTTPSUrl`
@ -76,7 +77,7 @@ The location of an existing GPG key file to copy.
Default value: `'https://apt.releases.hashicorp.com/gpg'`
##### <a name="description"></a>`description`
##### <a name="-hashi_stack--repo--description"></a>`description`
Data type: `String`
@ -84,7 +85,7 @@ Repository description
Default value: `'HashiCorp package repository.'`
##### <a name="rpm_base"></a>`rpm_base`
##### <a name="-hashi_stack--repo--rpm_base"></a>`rpm_base`
Data type: `String`
@ -92,11 +93,19 @@ Base URL for the Yum repository
Default value: `'https://rpm.releases.hashicorp.com'`
##### <a name="repo_gpgcheck"></a>`repo_gpgcheck`
##### <a name="-hashi_stack--repo--repo_gpgcheck"></a>`repo_gpgcheck`
Data type: `Integer[0,1]`
enables gpg validation of packages from the repo
Default value: `0`
##### <a name="-hashi_stack--repo--repo_enabled"></a>`repo_enabled`
Data type: `Integer[0,1]`
enables/disables the repository
Default value: `1`

View file

@ -24,6 +24,10 @@ end
begin
require 'voxpupuli/release/rake_tasks'
rescue LoadError
# voxpupuli-release not present
else
GCGConfig.user = 'voxpupuli'
GCGConfig.project = 'puppet-hashi_stack'
end
desc "Run main 'test' task and report merged results to coveralls"
@ -37,36 +41,4 @@ task test_with_coveralls: [:test] do
end
end
desc 'Generate REFERENCE.md'
task :reference, [:debug, :backtrace] do |t, args|
patterns = ''
Rake::Task['strings:generate:reference'].invoke(patterns, args[:debug], args[:backtrace])
end
begin
require 'github_changelog_generator/task'
require 'puppet_blacksmith'
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
metadata = Blacksmith::Modulefile.new
config.future_release = "v#{metadata.version}" if metadata.version =~ /^\d+\.\d+.\d+$/
config.header = "# Changelog\n\nAll notable changes to this project will be documented in this file.\nEach new release typically also includes the latest modulesync defaults.\nThese should not affect the functionality of the module."
config.exclude_labels = %w{duplicate question invalid wontfix wont-fix modulesync skip-changelog}
config.user = 'voxpupuli'
config.project = metadata.metadata['name']
end
# Workaround for https://github.com/github-changelog-generator/github-changelog-generator/issues/715
require 'rbconfig'
if RbConfig::CONFIG['host_os'] =~ /linux/
task :changelog do
puts 'Fixing line endings...'
changelog_file = File.join(__dir__, 'CHANGELOG.md')
changelog_txt = File.read(changelog_file)
new_contents = changelog_txt.gsub(%r{\r\n}, "\n")
File.open(changelog_file, "w") {|file| file.puts new_contents }
end
end
rescue LoadError
end
# vim: syntax=ruby

View file

@ -18,22 +18,31 @@
# @param key_source The location of an existing GPG key file to copy.
# @param description Repository description
# @param rpm_base Base URL for the Yum repository
# @param repo_gpgcheck enables gpg validation of packages from the repo
# @param repo_enabled enables/disables the repository
#
class hashi_stack::repo (
Optional[Integer] $priority = undef,
String $proxy = 'absent',
String $key_id = 'E8A032E094D8EB4EA189D270DA418C88A3219F7B',
String $key_id = '798AEC654E5C15428C8E42EEAA16FCBCA621E701',
Stdlib::HTTPSUrl $key_source = 'https://apt.releases.hashicorp.com/gpg',
String $description = 'HashiCorp package repository.',
String $rpm_base = 'https://rpm.releases.hashicorp.com',
Integer[0,1] $repo_gpgcheck = 0,
Integer[0,1] $repo_enabled = 1,
) {
$arch = $facts['os']['architecture'] ? {
'aarch64' => 'arm64', # 'aarch64' is official, but Hashicorp uses 'arm64'
default => $facts['os']['architecture'],
}
case $facts['os']['family'] {
'Debian': {
include apt
apt::source { 'HashiCorp':
ensure => 'present',
architecture => 'amd64',
architecture => $arch,
comment => $description,
location => 'https://apt.releases.hashicorp.com',
repos => 'main',
@ -55,7 +64,7 @@ class hashi_stack::repo (
gpgcheck => 1,
gpgkey => $key_source,
repo_gpgcheck => $repo_gpgcheck,
enabled => 1,
enabled => $repo_enabled,
proxy => $proxy,
priority => $priority,
}

View file

@ -1,6 +1,6 @@
{
"name": "puppet-hashi_stack",
"version": "2.1.0",
"version": "3.3.1-rc0",
"author": "Vox Pupuli",
"summary": "This module contains shared code for various HashiCorp modules",
"license": "AGPL-3.0",
@ -10,11 +10,11 @@
"dependencies": [
{
"name": "puppetlabs-stdlib",
"version_requirement": ">= 5.1.0 < 9.0.0"
"version_requirement": ">= 5.1.0 < 10.0.0"
},
{
"name": "puppetlabs/apt",
"version_requirement": ">= 6.1.0 < 10.0.0"
"version_requirement": ">= 6.1.0 < 11.0.0"
}
],
"operatingsystem_support": [
@ -22,34 +22,65 @@
"operatingsystem": "RedHat",
"operatingsystemrelease": [
"7",
"8"
"8",
"9"
]
},
{
"operatingsystem": "OracleLinux",
"operatingsystemrelease": [
"8",
"9"
]
},
{
"operatingsystem": "AlmaLinux",
"operatingsystemrelease": [
"8",
"9"
]
},
{
"operatingsystem": "Rocky",
"operatingsystemrelease": [
"8",
"9"
]
},
{
"operatingsystem": "CentOS",
"operatingsystemrelease": [
"7",
"8"
"8",
"9"
]
},
{
"operatingsystem": "Debian",
"operatingsystemrelease": [
"10"
"10",
"11",
"12"
]
},
{
"operatingsystem": "Ubuntu",
"operatingsystemrelease": [
"18.04",
"20.04"
"20.04",
"22.04",
"24.04"
]
}
],
"requirements": [
{
"name": "puppet",
"version_requirement": ">= 6.1.0 < 8.0.0"
"version_requirement": ">= 7.0.0 < 9.0.0"
},
{
"name": "openvox",
"version_requirement": ">= 7.0.0 < 9.0.0"
}
]
}

View file

@ -9,9 +9,16 @@ ENV['COVERAGE'] ||= 'yes' if Dir.exist?(File.expand_path('../lib', __dir__))
require 'voxpupuli/test/spec_helper'
RSpec.configure do |c|
c.facterdb_string_keys = false
end
add_mocked_facts!
if File.exist?(File.join(__dir__, 'default_module_facts.yml'))
facts = YAML.safe_load(File.read(File.join(__dir__, 'default_module_facts.yml')))
facts&.each do |name, value|
add_custom_fact name.to_sym, value
end
end
Dir['./spec/support/spec/**/*.rb'].sort.each { |f| require f }