From 5dd81e7da1b0e8822a0831646d170efe958dc19d Mon Sep 17 00:00:00 2001 From: Bram Vogelaar Date: Mon, 30 Nov 2020 17:52:41 +0100 Subject: [PATCH] bumping pdk version, updating documentation and moving to hiera based params loading --- .fixtures.yml | 15 +++-- .rubocop.yml | 4 ++ .travis.yml | 20 ++++++ .vscode/extensions.json | 2 +- README.md | 36 +++++------ REFERENCE.md | 109 +++++++++++++++++++++++++++++++++ Rakefile | 13 ++-- data/common.yaml | 10 +++ data/os/Debian.yaml | 2 + data/os/RedHat.yaml | 2 + examples/init.pp | 4 +- manifests/config.pp | 3 +- manifests/init.pp | 33 +++++----- manifests/install.pp | 12 ++-- manifests/params.pp | 43 ------------- manifests/service.pp | 5 +- metadata.json | 28 ++++----- provision.yaml | 7 +++ spec/acceptance/class_spec.rb | 40 ++++++++++++ spec/classes/init_spec.rb | 1 - spec/classes/install_spec.rb | 26 ++++---- spec/classes/params_spec.rb | 13 ---- spec/spec_helper.rb | 1 + spec/spec_helper_acceptance.rb | 7 +++ 24 files changed, 286 insertions(+), 150 deletions(-) create mode 100644 REFERENCE.md create mode 100644 data/os/Debian.yaml create mode 100644 data/os/RedHat.yaml delete mode 100644 manifests/params.pp create mode 100644 provision.yaml create mode 100644 spec/acceptance/class_spec.rb delete mode 100644 spec/classes/params_spec.rb create mode 100644 spec/spec_helper_acceptance.rb diff --git a/.fixtures.yml b/.fixtures.yml index d3bbb53..f47d219 100644 --- a/.fixtures.yml +++ b/.fixtures.yml @@ -1,7 +1,12 @@ +# This file can be used to install module depdencies for unit testing +# See https://github.com/puppetlabs/puppetlabs_spec_helper#using-fixtures for details +--- fixtures: + forge_modules: + archive: 'puppet/archive' + systemd: 'camptocamp/systemd' + stdlib: 'puppetlabs/stdlib' repositories: - stdlib: "https://github.com/puppetlabs/puppetlabs-stdlib.git" - systemd: "https://github.com/camptocamp/puppet-systemd.git" - wget: "https://github.com/maestrodev/puppet-wget.git" - symlinks: - "mailhog": "#{source_dir}" + facts: 'https://github.com/puppetlabs/puppetlabs-facts.git' + puppet_agent: 'https://github.com/puppetlabs/puppetlabs-puppet_agent.git' + provision: 'https://github.com/puppetlabs/provision.git' \ No newline at end of file diff --git a/.rubocop.yml b/.rubocop.yml index bab25db..5307849 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -40,6 +40,10 @@ Style/BlockDelimiters: Description: Prefer braces for chaining. Mostly an aesthetical choice. Better to be consistent then. EnforcedStyle: braces_for_chaining +Style/BracesAroundHashParameters: + Description: Braces are required by Ruby 2.7. Cop removed from RuboCop v0.80.0. + See https://github.com/rubocop-hq/rubocop/pull/7643 + Enabled: true Style/ClassAndModuleChildren: Description: Compact style reduces the required amount of indentation. EnforcedStyle: compact diff --git a/.travis.yml b/.travis.yml index 68d3e96..99324df 100644 --- a/.travis.yml +++ b/.travis.yml @@ -38,6 +38,26 @@ jobs: env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec rvm: 2.5.7 stage: spec + - + before_script: + - "bundle exec rake 'litmus:provision_list[puppet5]'" + - "bundle exec rake 'litmus:install_agent[puppet5]'" + - "bundle exec rake litmus:install_module" + bundler_args: + env: PLATFORMS=puppet5 + script: ["travis_wait 45 bundle exec rake litmus:acceptance:parallel"] + services: docker + stage: acceptance + - + before_script: + - "bundle exec rake 'litmus:provision_list[puppet6]'" + - "bundle exec rake 'litmus:install_agent[puppet6]'" + - "bundle exec rake litmus:install_module" + bundler_args: + env: PLATFORMS=puppet6 + script: ["travis_wait 45 bundle exec rake litmus:acceptance:parallel"] + services: docker + stage: acceptance - env: DEPLOY_TO_FORGE=yes stage: deploy diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 6177782..2f1e4f7 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,6 +1,6 @@ { "recommendations": [ - "jpogran.puppet-vscode", + "puppet.puppet-vscode", "rebornix.Ruby" ] } diff --git a/README.md b/README.md index baf0f43..5dbd08c 100644 --- a/README.md +++ b/README.md @@ -27,27 +27,17 @@ MailHog is an email testing tool for developers: - Package/service/configuration files for Mailhog - Listened-to ports -### Setup Requirements +## Usage -none +All options and configuration can be done through interacting with the parameters +on the main mailhog class. +These are now documented via [Puppet Strings](https://github.com/puppetlabs/puppet-strings) -### Beginning with mailhog +You can view example usage in [REFERENCE](REFERENCE.md). -To have Puppet install Mailhog with the default parameters, declare the mailhog class: +## Reference -``` puppet -class { 'mailhog': } -``` - -You can customize parameters when declaring the `mailhog` class. For instance, - this declaration installs Mailhog by downloading a tarball instead of instead of using a package. - -``` puppet -class { '::mailhog': - install_method => 'wget', - wget_source => 'https://github.com/mailhog/MailHog/releases/download/v0.2.1/MailHog_linux_amd64', -} -``` +See [REFERENCE](REFERENCE.md). ## Limitations @@ -57,12 +47,14 @@ This module currently only exposes a subset of all configuration options. ### Running tests -This project contains tests for both rspec-puppet and test kitchen to verify functionality. For detailed information on using these tools, please see their respective documentation. +This project contains tests for both rspec-puppet and litmus to verify functionality. For detailed information on using these tools, please see their respective documentation. #### Testing quickstart: ``` -gem install bundler -bundle install -bundle exec rake guard -bundle exec kitchen test +pdk bundle install +pdk bundle exec rake 'litmus:provision_list[puppet6]' +pdk bundle exec rake 'litmus:install_agent[puppet6]' +pdk bundle exec rake litmus:install_module +pdk bundle exec rake litmus:acceptance:parallel +pdk bundle exec rake litmus:tear_down diff --git a/REFERENCE.md b/REFERENCE.md new file mode 100644 index 0000000..b8ba38f --- /dev/null +++ b/REFERENCE.md @@ -0,0 +1,109 @@ +# Reference + + + +## Table of Contents + +### Classes + +#### Public Classes + +* [`mailhog`](#mailhog): Class to install and configure mailhog. Use this module to install and configure mailhog. + +#### Private Classes + +* `mailhog::config`: Class to configure mailhog. +* `mailhog::install`: Class to install mailhog. +* `mailhog::service`: Class to manage the mailhog service. + +## Classes + +### `mailhog` + +Class to install and configure mailhog. + +Use this module to install and configure mailhog. + +#### Examples + +##### Declaring the class + +```puppet +class { '::mailhog': + install_method => 'archive', + archive_source => 'https://github.com/mailhog/MailHog/releases/download/v1.0.1/MailHog_linux_amd64', +} +``` + +#### Parameters + +The following parameters are available in the `mailhog` class. + +##### `config` + +Data type: `String[1]` + +Mailhog config. + +##### `config_file` + +Data type: `Stdlib::Absolutepath` + +Mailhog config file. + +##### `install_dir` + +Data type: `Stdlib::Absolutepath` + +Location of mailhog binary release. + +##### `install_method` + +Data type: `Enum['package','archive']` + +How to install mailhog. + +##### `manage_service` + +Data type: `Boolean` + +Manage the mailhog service. + +##### `package_name` + +Data type: `String[1]` + +Name of package to install. + +##### `package_version` + +Data type: `String[1]` + +Version of mailhog to install. + +##### `service_name` + +Data type: `String[1]` + +Name of service to manage. + +##### `service_provider` + +Data type: `String[1]` + +Init system that is used. + +##### `service_ensure` + +Data type: `Enum['running','stopped']` + +The state of the service. + +##### `archive_source` + +Data type: `Optional[Stdlib::HTTPUrl]` + +Location of mailhog binary release. + +Default value: ``undef`` + diff --git a/Rakefile b/Rakefile index cb7ed0c..0a5093b 100644 --- a/Rakefile +++ b/Rakefile @@ -52,7 +52,7 @@ if Bundler.rubygems.find_name('github_changelog_generator').any? 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)." config.add_pr_wo_labels = true config.issues = false - config.merge_prefix = "### UNCATEGORIZED PRS; GO LABEL THEM" + config.merge_prefix = "### UNCATEGORIZED PRS; LABEL THEM ON GITHUB" config.configure_sections = { "Changed" => { "prefix" => "### Changed", @@ -60,11 +60,11 @@ if Bundler.rubygems.find_name('github_changelog_generator').any? }, "Added" => { "prefix" => "### Added", - "labels" => ["feature", "enhancement"], + "labels" => ["enhancement", "feature"], }, "Fixed" => { "prefix" => "### Fixed", - "labels" => ["bugfix"], + "labels" => ["bug", "documentation", "bugfix"], }, } end @@ -72,16 +72,15 @@ else desc 'Generate a Changelog from GitHub' task :changelog do raise <= Gem::Version.new('2.2.2')" + version: '~> 1.15' + condition: "Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.3.0')" EOM end end diff --git a/data/common.yaml b/data/common.yaml index ed97d53..53ba955 100644 --- a/data/common.yaml +++ b/data/common.yaml @@ -1 +1,11 @@ --- +mailhog::config: '-ui-bind-addr=127.0.0.1:8025 -api-bind-addr=127.0.0.1:8025' +mailhog::install_dir: '/usr/bin' +mailhog::install_method: 'package' +mailhog::manage_service: true +mailhog::manage_user: true +mailhog::package_name: 'mailhog' +mailhog::package_version: 'present' +mailhog::service_name: 'mailhog' +mailhog::service_ensure: 'running' +mailhog::service_provider: 'systemd' diff --git a/data/os/Debian.yaml b/data/os/Debian.yaml new file mode 100644 index 0000000..fd4b9f8 --- /dev/null +++ b/data/os/Debian.yaml @@ -0,0 +1,2 @@ +--- +mailhog::config_file: '/etc/default/mailhog' \ No newline at end of file diff --git a/data/os/RedHat.yaml b/data/os/RedHat.yaml new file mode 100644 index 0000000..8dbdb4f --- /dev/null +++ b/data/os/RedHat.yaml @@ -0,0 +1,2 @@ +--- +mailhog::config_file: '/etc/sysconfig/mailhog' \ No newline at end of file diff --git a/examples/init.pp b/examples/init.pp index dd282a0..18c6d22 100644 --- a/examples/init.pp +++ b/examples/init.pp @@ -10,6 +10,6 @@ # http://docs.puppetlabs.com/guides/tests_smoke.html # class { '::mailhog': - install_method => 'wget', - wget_source => 'https://github.com/mailhog/MailHog/releases/download/v0.2.1/MailHog_linux_amd64', + install_method => 'archive', + archive_source => 'https://github.com/mailhog/MailHog/releases/download/v1.0.1/MailHog_linux_amd64', } diff --git a/manifests/config.pp b/manifests/config.pp index 83789f2..df45635 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -1,7 +1,6 @@ # Class to configure mailhog. # -# Dont include this class directly. -# +# @api private class mailhog::config { file { 'mailhog-config': path => $::mailhog::config_file, diff --git a/manifests/init.pp b/manifests/init.pp index dfb234d..5e43d83 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -3,34 +3,35 @@ # Use this module to install and configure mailhog. # # @example Declaring the class -# include ::mailhog +# class { '::mailhog': +# install_method => 'archive', +# archive_source => 'https://github.com/mailhog/MailHog/releases/download/v1.0.1/MailHog_linux_amd64', +# } # # @param config Mailhog config. # @param config_file Mailhog config file. # @param install_dir Location of mailhog binary release. # @param install_method How to install mailhog. # @param manage_service Manage the mailhog service. -# @param manage_user Manage mailhog user and group. # @param package_name Name of package to install. # @param package_version Version of mailhog to install. # @param service_name Name of service to manage. # @param service_provider Init system that is used. # @param service_ensure The state of the service. -# @param wget_source Location of mailhog binary release. +# @param archive_source Location of mailhog binary release. class mailhog ( - String $config = $::mailhog::params::config, - String $config_file = $::mailhog::params::config_file, - String $install_dir = $::mailhog::params::install_dir, - Enum['package','wget'] $install_method = $::mailhog::params::install_method, - Boolean $manage_service = $::mailhog::params::manage_service, - Boolean $manage_user = $::mailhog::params::manage_user, - String $package_name = $::mailhog::params::package_name, - String $package_version = $::mailhog::params::package_version, - String $service_name = $::mailhog::params::service_name, - String $service_provider = $::mailhog::params::service_provider, - Enum['running','stopped'] $service_ensure = $::mailhog::params::service_ensure, - Optional[String] $wget_source = $::mailhog::params::wget_source, -) inherits mailhog::params { + String[1] $config , + Stdlib::Absolutepath $config_file , + Stdlib::Absolutepath $install_dir , + Enum['package','archive'] $install_method, + Boolean $manage_service, + String[1] $package_name, + String[1] $package_version, + String[1] $service_name, + String[1] $service_provider, + Enum['running','stopped'] $service_ensure, + Optional[Stdlib::HTTPUrl] $archive_source = undef, +) { anchor { 'mailhog::begin': } -> class{ '::mailhog::install': } -> class{ '::mailhog::config': } diff --git a/manifests/install.pp b/manifests/install.pp index 0af345b..91886cc 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -1,7 +1,6 @@ # Class to install mailhog. # -# Dont include this class directly. -# +# @api private class mailhog::install { case $::mailhog::install_method { 'package': { @@ -10,16 +9,13 @@ name => $::mailhog::package_name, } } - 'wget': { + 'archive': { file { 'mailhog install dir': ensure => directory, path => $::mailhog::install_dir, } - -> wget::fetch { 'mailhog binary': - source => $::mailhog::wget_source, - destination => "${::mailhog::install_dir}/mailhog", - timeout => 0, - verbose => false, + -> archive { "${::mailhog::install_dir}/mailhog": + source => $::mailhog::archive_source, } -> file { 'mailhog binary': group => 'root', diff --git a/manifests/params.pp b/manifests/params.pp deleted file mode 100644 index 822a9e4..0000000 --- a/manifests/params.pp +++ /dev/null @@ -1,43 +0,0 @@ -# Class to manage mailhog parameters. -# -# Dont include this class directly. -# -class mailhog::params () { - $config = '-ui-bind-addr=127.0.0.1:8025 -api-bind-addr=127.0.0.1:8025' - $install_dir = '/usr/bin' - $install_method = 'package' - $manage_service = true - $manage_user = true - $package_name = 'mailhog' - $package_version = 'present' - $service_name = 'mailhog' - $service_ensure = 'running' - $wget_source = undef - case $::osfamily { - 'Debian': { - $config_file = '/etc/default/mailhog' - case $::operatingsystemrelease { - /(^7.*|^14\.04.*)/ : { - $service_provider = 'debian' - } - default : { - $service_provider = 'systemd' - } - } - } - 'RedHat': { - $config_file = '/etc/sysconfig/mailhog' - case $::operatingsystemrelease { - /^6.*/ : { - $service_provider = 'redhat' - } - default : { - $service_provider = 'systemd' - } - } - } - default: { - fail("Unsupported osfamily ${::osfamily}, currently only supports Debian and RedHat") - } - } -} \ No newline at end of file diff --git a/manifests/service.pp b/manifests/service.pp index 8662b87..4c0489a 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -1,7 +1,6 @@ # Class to manage the mailhog service. # -# Dont include this class directly. -# +# @api private class mailhog::service { if $::mailhog::manage_service { case $::mailhog::service_provider { @@ -30,7 +29,7 @@ subscribe => Package['mailhog'], } } - 'wget': {} + 'archive': {} default: { fail("Installation method ${::mailhog::install_method} not supported") } diff --git a/metadata.json b/metadata.json index 23516a0..1dd3f26 100644 --- a/metadata.json +++ b/metadata.json @@ -1,6 +1,6 @@ { "name": "attachmentgenie-mailhog", - "version": "3.0.0", + "version": "4.0.0", "author": "bram vogelaar ", "summary": "Setup mailhog", "license": "MIT", @@ -9,38 +9,38 @@ "issues_url": "https://github.com/attachmentgenie/attachmentgenie-mailhog/issues", "dependencies": [ { - "name": "maestrodev-wget", - "version_requirement": ">=1.7.3 <2.0.0" + "name": "puppet-archive", + "version_requirement": ">= 4.2.0 < 5.0.0" }, { "name": "puppetlabs-stdlib", - "version_requirement": ">= 4.13.0 < 6.0.0" + "version_requirement": ">= 6.0.0 < 7.0.0" }, { "name": "camptocamp-systemd", - "version_requirement": ">=1.0.0 <=2.0.0" + "version_requirement": ">= 1.1.1 < 3.0.0" } ], "operatingsystem_support": [ { "operatingsystem": "Debian", "operatingsystemrelease": [ - "8", - "9" + "9", + "10" ] }, { "operatingsystem": "Ubuntu", "operatingsystemrelease": [ - "14", - "16" + "18", + "20" ] }, { "operatingsystem": "CentOS", "operatingsystemrelease": [ - "6", - "7" + "7", + "8" ] } ], @@ -53,7 +53,7 @@ "tags": [ "mailhog" ], - "pdk-version": "1.17.0", - "template-url": "pdk-default#1.17.0", - "template-ref": "tags/1.17.0-0-gd3a4319" + "pdk-version": "1.18.1", + "template-url": "pdk-default#1.18.1", + "template-ref": "tags/1.18.1-0-g3d2e75c" } diff --git a/provision.yaml b/provision.yaml new file mode 100644 index 0000000..e5841cc --- /dev/null +++ b/provision.yaml @@ -0,0 +1,7 @@ +--- +puppet5: + provisioner: docker + images: ['litmusimage/centos:7','litmusimage/centos:8','litmusimage/debian:9','litmusimage/debian:10','litmusimage/ubuntu:18.04'] +puppet6: + provisioner: docker + images: ['litmusimage/centos:7','litmusimage/centos:8','litmusimage/debian:9','litmusimage/debian:10','litmusimage/ubuntu:18.04','litmusimage/ubuntu:20.04'] diff --git a/spec/acceptance/class_spec.rb b/spec/acceptance/class_spec.rb new file mode 100644 index 0000000..e82f36e --- /dev/null +++ b/spec/acceptance/class_spec.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +require 'spec_helper_acceptance' + +describe 'with default parameters ', if: ['debian', 'redhat', 'ubuntu'].include?(os[:family]) do + pp = <<-PUPPETCODE + class { '::mailhog': + install_method => 'archive', + archive_source => 'https://github.com/mailhog/MailHog/releases/download/v1.0.1/MailHog_linux_amd64', + } +PUPPETCODE + + it 'applies idempotently' do + idempotent_apply(pp) + end + + describe file('/usr/bin/mailhog') do + it { is_expected.to be_file } + it { is_expected.to be_executable } + end + + if os[:family] == 'redhat' + describe file('/etc/sysconfig/mailhog') do + it { is_expected.to be_file } + end + elsif ['debian', 'ubuntu'].include?(os[:family]) + describe file('/etc/default/mailhog') do + it { is_expected.to be_file } + end + end + + describe service('mailhog') do + it { is_expected.to be_enabled } + it { is_expected.to be_running.under('systemd') } + end + + describe port(1025) do + it { is_expected.to be_listening } + end +end diff --git a/spec/classes/init_spec.rb b/spec/classes/init_spec.rb index f999d88..126e9db 100644 --- a/spec/classes/init_spec.rb +++ b/spec/classes/init_spec.rb @@ -7,7 +7,6 @@ context 'config' do context 'with defaults for all parameters' do it { is_expected.to contain_class('mailhog') } - it { is_expected.to contain_class('mailhog::params') } it { is_expected.to contain_anchor('mailhog::begin').that_comes_before('Class[mailhog::Install]') } it { is_expected.to contain_class('mailhog::install').that_comes_before('Class[mailhog::Config]') } it { is_expected.to contain_class('mailhog::config').that_notifies('Class[mailhog::Service]') } diff --git a/spec/classes/install_spec.rb b/spec/classes/install_spec.rb index f631382..d46ba4e 100644 --- a/spec/classes/install_spec.rb +++ b/spec/classes/install_spec.rb @@ -5,28 +5,28 @@ let(:facts) { facts } context 'install' do - context 'with wget_source set to special_mailhog' do + context 'with archive_source set to special_mailhog' do let(:params) do { - install_method: 'wget', - wget_source: 'special_mailhog', + install_method: 'archive', + archive_source: 'special_mailhog', } end - it { is_expected.to contain_wget__fetch('mailhog binary').with_source('special_mailhog') } + it { is_expected.to raise_error(%r{expects a match for Stdlib::HTTPUrl}) } end context 'with install_dir set to mailhog install dir' do let(:params) do { install_dir: '/opt/special', - install_method: 'wget', + install_method: 'archive', } end it { is_expected.to contain_file('mailhog install dir').with_path('/opt/special') } - it { is_expected.to contain_wget__fetch('mailhog binary').with_destination('/opt/special/mailhog') } - it { is_expected.to contain_wget__fetch('mailhog binary').that_requires('File[mailhog install dir]') } + it { is_expected.to contain_archive('/opt/special/mailhog') } + it { is_expected.to contain_archive('/opt/special/mailhog').that_requires('File[mailhog install dir]') } end context 'with install_method set to package' do @@ -38,22 +38,22 @@ } end - it { is_expected.not_to contain_file('mailhog install dir').that_comes_before('Wget::Fetch[mailhog binary]') } - it { is_expected.not_to contain_wget__fetch('mailhog binary') } + it { is_expected.not_to contain_file('mailhog install dir').that_comes_before('Archive[/usr/bin/mailhog]') } + it { is_expected.not_to contain_archive__fetch('mailhog binary') } it { is_expected.to contain_package('mailhog') } end - context 'with install_method set to wget' do + context 'with install_method set to archive' do let(:params) do { install_dir: '/usr/bin', - install_method: 'wget', + install_method: 'archive', package_name: 'mailhog', } end - it { is_expected.to contain_file('mailhog install dir').that_comes_before('Wget::Fetch[mailhog binary]') } - it { is_expected.to contain_wget__fetch('mailhog binary') } + it { is_expected.to contain_file('mailhog install dir').that_comes_before('Archive[/usr/bin/mailhog]') } + it { is_expected.to contain_archive('/usr/bin/mailhog') } it { is_expected.to contain_file('mailhog binary') } it { is_expected.not_to contain_package('mailhog') } end diff --git a/spec/classes/params_spec.rb b/spec/classes/params_spec.rb deleted file mode 100644 index f3d49a3..0000000 --- a/spec/classes/params_spec.rb +++ /dev/null @@ -1,13 +0,0 @@ -require 'spec_helper' -describe 'mailhog::params' do - on_supported_os.each do |os, facts| - context "on #{os}" do - let(:facts) { facts } - - context 'It should not contain any resources' do - it { is_expected.to contain_class('mailhog::params') } - it { is_expected.to have_resource_count(0) } - end - end - end -end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 35a1408..d3778ca 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -38,6 +38,7 @@ # set to strictest setting for testing # by default Puppet runs at warning level Puppet.settings[:strict] = :warning + Puppet.settings[:strict_variables] = true end c.filter_run_excluding(bolt: true) unless ENV['GEM_BOLT'] c.after(:suite) do diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb new file mode 100644 index 0000000..cd43020 --- /dev/null +++ b/spec/spec_helper_acceptance.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +require 'puppet_litmus' +require 'spec_helper_acceptance_local' if File.file?(File.join(File.dirname(__FILE__), 'spec_helper_acceptance_local.rb')) +include PuppetLitmus + +PuppetLitmus.configure!