diff --git a/.github/workflows/pr_tests.yml b/.github/workflows/pr_tests.yml index 8b70da5..69ee672 100644 --- a/.github/workflows/pr_tests.yml +++ b/.github/workflows/pr_tests.yml @@ -86,7 +86,7 @@ jobs: bundle exec rake pkg:compare_latest_tag[,true] bundle exec rake pkg:create_tag_changelog - name: 'Test-build the Puppet module' - run: 'bundle exec pdk build --force' + run: 'bundle exec rake pupmod:build' spec-tests: name: 'Puppet Spec' @@ -95,10 +95,20 @@ jobs: strategy: matrix: puppet: - - label: 'Puppet 8.x' + - label: 'OpenVox 8.x (Ruby 3.2)' puppet_version: '~> 8.0' ruby_version: '3.2' experimental: false + - label: 'OpenVox 8.x (Ruby 3.4)' + puppet_version: '~> 8.0' + ruby_version: '3.4' + experimental: false + # OpenVox 9 is unreleased; preview the future Ruby 4.0 / OpenVox 9 + # combo by running the OpenVox 8 gem on Ruby 4.0. + - label: 'OpenVox 9.x preview (Ruby 4.0, OpenVox 8 gem)' + puppet_version: '~> 8.0' + ruby_version: '4.0' + experimental: false fail-fast: false env: PUPPET_VERSION: ${{matrix.puppet.puppet_version}} diff --git a/.github/workflows/tag_deploy.yml b/.github/workflows/tag_deploy.yml index a299b58..5800c6a 100644 --- a/.github/workflows/tag_deploy.yml +++ b/.github/workflows/tag_deploy.yml @@ -55,14 +55,14 @@ jobs: clean: true - uses: ruby/setup-ruby@v1 with: - ruby-version: 3.2.11 + ruby-version: 3.4.9 bundler-cache: true - run: bundle exec rake pkg:check_version - run: bundle exec rake pkg:compare_latest_tag - run: bundle exec rake pkg:create_tag_changelog - run: bundle exec rake metadata_lint - name: "Test that Puppet module can build" - run: "bundle exec pdk build --force" + run: "bundle exec rake pupmod:build" create-github-release: @@ -180,10 +180,10 @@ jobs: clean: true - uses: ruby/setup-ruby@v1 with: - ruby-version: 3.2.11 + ruby-version: 3.4.9 bundler-cache: true - name: Build Puppet module (PDK) - run: bundle exec pdk build --force + run: bundle exec rake pupmod:build - name: Deploy to Puppet Forge (skipped when prerelease) run: | curl -X POST --silent --show-error --fail \ diff --git a/Gemfile b/Gemfile index 73b9747..dbc41b2 100644 --- a/Gemfile +++ b/Gemfile @@ -6,37 +6,31 @@ # ------------------------------------------------------------------------------ gem_sources = ENV.fetch('GEM_SERVERS', 'https://rubygems.org').split(%r{[, ]+}) -ENV['PDK_DISABLE_ANALYTICS'] ||= 'true' - gem_sources.each { |gem_source| source gem_source } group :syntax do gem 'metadata-json-lint' gem 'puppet-lint-trailing_comma-check', require: false - gem 'rubocop', '~> 1.85' + # rubocop, rubocop-rake, and rubocop-rspec are pulled in and version-pinned by + # voxpupuli-test (via simp-rake-helpers); pinning them here conflicts with its + # constraints. rubocop-performance is not a voxpupuli-test dependency, so it + # stays explicit. gem 'rubocop-performance', '~> 1.26.0' - gem 'rubocop-rake', '~> 0.7.0' - gem 'rubocop-rspec', '~> 3.9' end group :test do puppet_version = ENV.fetch('PUPPET_VERSION', ['>= 8', '< 9']) openvox_version = ENV.fetch('OPENVOX_VERSION', puppet_version) - major_puppet_version = Array(puppet_version).first.scan(%r{(\d+)(?:\.|\Z)}).flatten.first.to_i gem 'hiera-puppet-helper' - # renovate: datasource=rubygems versioning=ruby - gem('pdk', ENV.fetch('PDK_VERSION', ['>= 2.0', '< 4.0']), require: false) if major_puppet_version > 5 - # Temporarily include both openvox and puppet gems until the puppet dependency is removed from other gems - ['openvox', 'puppet'].each do |gem_name| - gem gem_name, binding.local_variable_get("#{gem_name}_version".to_sym) - end - gem 'puppet-strings' + gem 'openvox', openvox_version + gem 'openvox-strings' gem 'rake' gem 'rspec' gem 'rspec-puppet' # renovate: datasource=rubygems versioning=ruby gem 'simp-rake-helpers', ENV.fetch('SIMP_RAKE_HELPERS_VERSION', '~> 6.0') # renovate: datasource=rubygems versioning=ruby + gem 'observer', require: false gem 'simp-rspec-puppet-facts', ENV.fetch('SIMP_RSPEC_PUPPET_FACTS_VERSION', '~> 4.0.0') end diff --git a/REFERENCE.md b/REFERENCE.md index f625f93..8f438f8 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -208,6 +208,8 @@ Data type: `String` The rsync daemon package +Default value: `'rsync-daemon'` + ### `rsync::server::global` Setup the global section of /etc/rsyncd.conf. @@ -1082,7 +1084,7 @@ Default value: `false` Exclude files matching PATTERN. Multiple values may be specified as an array. Defaults to ['.svn/','.git/'] -Default value: `['.svn/','.git/']` +Default value: `['.svn/', '.git/']` ##### `hard_links` diff --git a/Rakefile b/Rakefile index b3ed91e..cdf682a 100644 --- a/Rakefile +++ b/Rakefile @@ -1,4 +1,4 @@ require 'simp/rake/pupmod/helpers' -require 'puppet-strings/tasks' +require 'openvox-strings/tasks' Simp::Rake::Pupmod::Helpers.new(File.dirname(__FILE__))