--- /dev/null
+name: "release"
+
+on:
+ push:
+ branches:
+ - 'release'
+
+jobs:
+ LitmusAcceptance:
+ env:
+ HONEYCOMB_WRITEKEY: 7f3c63a70eecc61d635917de46bea4e6
+ HONEYCOMB_DATASET: litmus tests
+ runs-on: self-hosted
+ strategy:
+ matrix:
+ ruby_version: [2.5.x]
+ puppet_gem_version: [~> 6.0]
+ platform: [release_checks]
+ agent_family: ['puppet5', 'puppet6']
+
+ steps:
+ - uses: actions/checkout@v1
+ - name: Litmus Parallel
+ uses: puppetlabs/action-litmus_parallel@master
+ with:
+ platform: ${{ matrix.platform }}
+ agent_family: ${{ matrix.agent_family }}
+ Spec:
+ runs-on: self-hosted
+ strategy:
+ matrix:
+ check: [parallel_spec, 'syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop']
+ ruby_version: [2.5.x]
+ puppet_gem_version: [~> 5.0, ~> 6.0]
+ exclude:
+ - puppet_gem_version: ~> 5.0
+ check: 'syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop'
+ - ruby_version: 2.5.x
+ puppet_gem_version: ~> 5.0
+ steps:
+ - uses: actions/checkout@v1
+ - name: Spec Tests
+ uses: puppetlabs/action-litmus_spec@master
+ with:
+ puppet_gem_version: ${{ matrix.puppet_gem_version }}
+ check: ${{ matrix.check }}
- rubocop-i18n
- rubocop-rspec
".travis.yml":
+ global_env:
+ - HONEYCOMB_WRITEKEY="7f3c63a70eecc61d635917de46bea4e6",HONEYCOMB_DATASET="litmus tests"
deploy_to_forge:
enabled: false
branches:
- release
- includes:
- - bundler_args:
- dist: trusty
- env: PLATFORMS=deb_puppet5
- rvm: 2.5.3
- before_script:
- - bundle exec rake 'litmus:provision_list[travis_deb]'
- - bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
- - bundle exec rake 'litmus:install_agent[puppet5]'
- - bundle exec rake litmus:install_module
- script:
- - bundle exec rake litmus:acceptance:parallel
- services: docker
- stage: acceptance
- sudo: required
- - bundler_args:
- dist: trusty
- env: PLATFORM=deb_puppet6
- rvm: 2.5.3
- before_script:
- - bundle exec rake 'litmus:provision_list[travis_deb]'
- - bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
- - bundle exec rake 'litmus:install_agent[puppet6]'
- - bundle exec rake litmus:install_module
- script:
- - bundle exec rake litmus:acceptance:parallel
- services: docker
- sudo: required
- stage: acceptance
+ use_litmus: true
+ litmus:
+ provision_list:
+ - travis_deb
+ - travis_ub
+ - ---travis_el
simplecov: true
+ notifications:
+ slack:
+ secure: KeXxAkZ1x/P1otYM3pgpEFnJdFRLDDz0YlTmDRwdNYy09LGo4lRUuUUEUUZoTe4oQaMb3+NigiAs+3j2A7OIMKlcUFWz5zetqnyMdIceJm99iJOD6Ng/kVblo38bN28oVwss66XzG1T0c0+YFMF+X0NkUezbr6RaJrZNsCNTH9M=
appveyor.yml:
delete: true
Gemfile:
---
+os: linux
dist: xenial
language: ruby
cache: bundler
before_install:
- bundle -v
- rm -f Gemfile.lock
- - gem update --system $RUBYGEMS_VERSION
+ - "# 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:
bundler_args: --without system_tests
rvm:
- 2.5.3
+env:
+ global:
+ - HONEYCOMB_WRITEKEY="7f3c63a70eecc61d635917de46bea4e6",HONEYCOMB_DATASET="litmus tests"
stages:
- static
- spec
- acceptance
-matrix:
+jobs:
fast_finish: true
include:
-
- env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
- stage: static
- -
- env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec
- rvm: 2.4.5
- stage: spec
+ before_script:
+ - "bundle exec rake 'litmus:provision_list[travis_deb]'"
+ - "bundle exec rake 'litmus:install_agent[puppet5]'"
+ - "bundle exec rake litmus:install_module"
+ bundler_args:
+ dist: trusty
+ env: PLATFORMS=travis_deb_puppet5
+ rvm: 2.5.3
+ script: ["bundle exec rake litmus:acceptance:parallel"]
+ services: docker
+ stage: acceptance
-
- env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
+ before_script:
+ - "bundle exec rake 'litmus:provision_list[travis_ub]'"
+ - "bundle exec rake 'litmus:install_agent[puppet5]'"
+ - "bundle exec rake litmus:install_module"
+ bundler_args:
+ dist: trusty
+ env: PLATFORMS=travis_ub_puppet5
rvm: 2.5.3
- stage: spec
+ script: ["bundle exec rake litmus:acceptance:parallel"]
+ services: docker
+ stage: acceptance
-
- before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
+ before_script:
+ - "bundle exec rake 'litmus:provision_list[travis_deb]'"
+ - "bundle exec rake 'litmus:install_agent[puppet6]'"
+ - "bundle exec rake litmus:install_module"
bundler_args:
dist: trusty
- env: PLATFORMS=deb_puppet5
+ env: PLATFORMS=travis_deb_puppet6
rvm: 2.5.3
script: ["bundle exec rake litmus:acceptance:parallel"]
services: docker
stage: acceptance
- sudo: required
-
- before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
+ before_script:
+ - "bundle exec rake 'litmus:provision_list[travis_ub]'"
+ - "bundle exec rake 'litmus:install_agent[puppet6]'"
+ - "bundle exec rake litmus:install_module"
bundler_args:
dist: trusty
- env: PLATFORM=deb_puppet6
+ env: PLATFORMS=travis_ub_puppet6
rvm: 2.5.3
script: ["bundle exec rake litmus:acceptance:parallel"]
services: docker
stage: acceptance
- sudo: required
+ -
+ env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
+ stage: static
+ -
+ env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec
+ rvm: 2.4.5
+ stage: spec
+ -
+ env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
+ rvm: 2.5.3
+ stage: spec
branches:
only:
- master
- release
notifications:
email: false
+ slack:
+ secure: KeXxAkZ1x/P1otYM3pgpEFnJdFRLDDz0YlTmDRwdNYy09LGo4lRUuUUEUUZoTe4oQaMb3+NigiAs+3j2A7OIMKlcUFWz5zetqnyMdIceJm99iJOD6Ng/kVblo38bN28oVwss66XzG1T0c0+YFMF+X0NkUezbr6RaJrZNsCNTH9M=
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
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 "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
- gem "puppet-module-posix-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
- gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
- gem "puppet-module-win-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw]
- gem "puppet-module-win-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw]
+ gem "puppet-module-posix-default-r#{minor_version}", '~> 0.4', require: false, platforms: [:ruby]
+ gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.4', require: false, platforms: [:ruby]
+ gem "puppet-module-win-default-r#{minor_version}", '~> 0.4', require: false, platforms: [:mswin, :mingw, :x64_mingw]
+ gem "puppet-module-win-dev-r#{minor_version}", '~> 0.4', require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "github_changelog_generator", require: false, git: 'https://github.com/skywinder/github-changelog-generator', ref: '20ee04ba1234e9e83eb2ffb5056e23d641c7a018' if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.2.2')
gem "puppet-lint-i18n", require: false
end
+# frozen_string_literal: true
+
require 'puppet_litmus/rake_tasks' if Bundler.rubygems.find_name('puppet_litmus').any?
require 'puppetlabs_spec_helper/rake_tasks'
require 'puppet-syntax/tasks/puppet-syntax'
Optional[Variant[String, Hash]] $key = undef,
Optional[Variant[Integer, String, Hash]] $pin = 200,
){
+
+ include apt
+
if $location {
$_location = $location
}
}
}
- $sources_list_content = $_purge['sources.list'] ? {
- true => "# Repos managed by puppet.\n",
- default => undef,
+ $sources_list_ensure = $_purge['sources.list'] ? {
+ true => absent,
+ default => file,
}
$preferences_ensure = $_purge['preferences'] ? {
}
file { 'sources.list':
- ensure => file,
- path => $::apt::sources_list,
- owner => root,
- group => root,
- mode => '0644',
- content => $sources_list_content,
- notify => Class['apt::update'],
+ ensure => $sources_list_ensure,
+ path => $::apt::sources_list,
+ owner => root,
+ group => root,
+ mode => '0644',
+ notify => Class['apt::update'],
}
file { 'sources.list.d':
}
],
"template-url": "https://github.com/puppetlabs/pdk-templates#master",
- "template-ref": "heads/master-0-g643529a",
- "pdk-version": "1.14.1"
+ "template-ref": "heads/master-0-g88c96ab",
+ "pdk-version": "1.16.0"
}
default:
provisioner: docker
images: ['waffleimage/debian8']
-travis_deb:
- provisioner: docker
- images: ['debian:8', 'debian:9', 'ubuntu:16.04', 'ubuntu:18.04']
-waffle_deb:
- provisioner: docker
- images: ['waffleimage/debian8', 'waffleimage/debian9', 'waffleimage/ubuntu14.04', 'waffleimage/ubuntu16.04', 'waffleimage/ubuntu18.04']
vagrant:
provisioner: vagrant
- images: ['centos/7', 'generic/ubuntu1804']
+ images: ['centos/7', 'generic/ubuntu1804']
+travis_deb:
+ provisioner: docker
+ images: ['waffleimage/debian9', 'waffleimage/debian10']
+travis_ub:
+ provisioner: docker
+ images: ['ubuntu:16.04', 'ubuntu:18.04']
+travis_el6:
+ provisioner: docker
+ images: []
+travis_el7:
+ provisioner: docker
+ images: []
release_checks:
provisioner: vmpooler
images: ['debian-8-x86_64', 'debian-9-x86_64', 'debian-10-x86_64', 'ubuntu-1404-x86_64', 'ubuntu-1604-x86_64', 'ubuntu-1804-x86_64']
+# frozen_string_literal: true
+
RSpec.configure do |c|
c.mock_with :rspec
end