--- /dev/null
+---
+stages:
+ - syntax
+ - unit
+
+default:
+ cache:
+ paths:
+ - vendor/bundle
+
+ before_script: &before_script
+ - bundle -v
+ - rm Gemfile.lock || true
+ - "# Update system gems if requested. This is useful to temporarily workaround troubles in the test runner"
+ - "# Set `rubygems_version` in the .sync.yml to set a value"
+ - "# Ignore exit code of SIGPIPE'd yes to not fail with shell's pipefail set"
+ - '[ -z "$RUBYGEMS_VERSION" ] || (yes || true) | gem update --system $RUBYGEMS_VERSION'
+ - gem --version
+ - bundle -v
+ - bundle install --without system_tests --path vendor/bundle --jobs $(nproc)
+
+validate lint check rubocop-Ruby 2.5.7-Puppet ~> 6:
+ stage: syntax
+ image: ruby:2.5.7
+ script:
+ - bundle exec rake validate lint check rubocop
+ variables:
+ PUPPET_GEM_VERSION: '~> 6'
+
+parallel_spec-Ruby 2.5.7-Puppet ~> 6:
+ stage: unit
+ image: ruby:2.5.7
+ script:
+ - bundle exec rake parallel_spec
+ variables:
+ PUPPET_GEM_VERSION: '~> 6'
+
+validate lint check rubocop-Ruby 2.7.2-Puppet ~> 7:
+ stage: syntax
+ image: ruby:2.7.2
+ script:
+ - bundle exec rake validate lint check rubocop
+ variables:
+ PUPPET_GEM_VERSION: '~> 7'
+
+parallel_spec-Ruby 2.7.2-Puppet ~> 7:
+ stage: unit
+ image: ruby:2.7.2
+ script:
+ - bundle exec rake parallel_spec
+ variables:
+ PUPPET_GEM_VERSION: '~> 7'
+
--relative
---no-relative_classname_inclusion-check
---no-parameter_types-check
---no-top_scope_facts-check
---no-legacy_facts-check
--- /dev/null
+---
+os: linux
+dist: xenial
+language: ruby
+cache: bundler
+before_install:
+ - bundle -v
+ - rm -f Gemfile.lock
+ - "# Update system gems if requested. This is useful to temporarily workaround troubles in the test runner"
+ - "# See https://github.com/puppetlabs/pdk-templates/commit/705154d5c437796b821691b707156e1b056d244f for an example of how this was used"
+ - "# Ignore exit code of SIGPIPE'd yes to not fail with shell's pipefail set"
+ - '[ -z "$RUBYGEMS_VERSION" ] || (yes || true) | gem update --system $RUBYGEMS_VERSION'
+ - gem --version
+ - bundle -v
+script:
+ - 'bundle exec rake $CHECK'
+bundler_args: --without system_tests
+rvm:
+ - 2.5.7
+stages:
+ - static
+ - spec
+ - acceptance
+ -
+ if: tag =~ ^v\d
+ name: deploy
+jobs:
+ fast_finish: true
+ include:
+ -
+ env: CHECK="validate lint check rubocop"
+ stage: static
+ -
+ env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
+ rvm: 2.5.7
+ stage: spec
+ -
+ env: DEPLOY_TO_FORGE=yes
+ stage: deploy
+branches:
+ only:
+ - main
+ - /^v\d/
+notifications:
+ email: false
end
group :development do
- gem "json", '~> 2.0', require: false
- gem "voxpupuli-puppet-lint-plugins", '~> 3.0', require: false
+ gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
+ gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 3.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
+ gem "json", '= 2.5.1', require: false if Gem::Requirement.create(['>= 3.0.0', '< 3.0.5']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
+ gem "json", '= 2.6.1', require: false if Gem::Requirement.create(['>= 3.1.0', '< 3.1.3']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
+ gem "json", '= 2.6.3', require: false if Gem::Requirement.create(['>= 3.2.0', '< 4.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
+ gem "voxpupuli-puppet-lint-plugins", '~> 3.1', require: false
gem "facterdb", '~> 1.18', require: false
gem "metadata-json-lint", '>= 2.0.2', '< 4.0.0', require: false
gem "puppetlabs_spec_helper", '>= 3.0.0', '< 5.0.0', require: false
gem "rubocop-performance", '= 1.9.1', require: false
gem "rubocop-rspec", '= 2.0.1', require: false
gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
- gem "github_changelog_generator", require: false
end
group :system_tests do
gem "puppet_litmus", '< 1.0.0', require: false, platforms: [:ruby]
end
PuppetLint.configuration.send('disable_relative')
-PuppetLint.configuration.send('disable_relative_classname_inclusion')
-PuppetLint.configuration.send('disable_parameter_types')
-PuppetLint.configuration.send('disable_top_scope_facts')
-PuppetLint.configuration.send('disable_legacy_facts')
if Bundler.rubygems.find_name('github_changelog_generator').any?
raise "Set CHANGELOG_GITHUB_TOKEN environment variable eg 'export CHANGELOG_GITHUB_TOKEN=valid_token_here'" if Rake.application.top_level_tasks.include? "changelog" and ENV['CHANGELOG_GITHUB_TOKEN'].nil?
config.user = "#{changelog_user}"
config.project = "#{changelog_project}"
- config.since_tag = "v3.0.0"
config.future_release = "#{changelog_future_release}"
config.exclude_labels = ['maintenance']
config.header = "# Change log\n\nAll notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org)."
--- /dev/null
+---
+version: 1.1.x.{build}
+skip_branch_with_pr: true
+branches:
+ only:
+ - main
+ - release
+skip_commits:
+ message: /^\(?doc\)?.*/
+clone_depth: 10
+init:
+ - SET
+ - 'mkdir C:\ProgramData\PuppetLabs\code && exit 0'
+ - 'mkdir C:\ProgramData\PuppetLabs\facter && exit 0'
+ - 'mkdir C:\ProgramData\PuppetLabs\hiera && exit 0'
+ - 'mkdir C:\ProgramData\PuppetLabs\puppet\var && exit 0'
+environment:
+ matrix:
+ -
+ RUBY_VERSION: 25-x64
+ CHECK: validate lint check rubocop
+ -
+ PUPPET_GEM_VERSION: ~> 6.0
+ RUBY_VERSION: 25
+ CHECK: parallel_spec
+ -
+ PUPPET_GEM_VERSION: ~> 6.0
+ RUBY_VERSION: 25-x64
+ CHECK: parallel_spec
+matrix:
+ fast_finish: true
+install:
+ - set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
+ - bundle install --jobs 4 --retry 2 --without system_tests
+ - type Gemfile.lock
+build: off
+test_script:
+ - bundle exec puppet -V
+ - ruby -v
+ - gem -v
+ - bundle -v
+ - bundle exec rake %CHECK%
+notifications:
+ - provider: Email
+ to:
+ - nobody@nowhere.com
+ on_build_success: false
+ on_build_failure: false
+ on_build_status_changed: false
}
],
"template-url": "https://github.com/puppetlabs/pdk-templates.git#main",
- "template-ref": "tags/2.6.0-0-gd0490b9",
+ "template-ref": "2.7.1-0-g9a16c87",
"pdk-version": "2.5.0"
}
end
c.filter_run_excluding(bolt: true) unless ENV['GEM_BOLT']
c.after(:suite) do
- RSpec::Puppet::Coverage.report!(0)
end
# Filter backtrace noise