Merge pull request #13 from xaque208/modulesync

Update from xaque208 modulesync_config
This commit is contained in:
Zach Leslie 2018-06-02 20:29:03 -07:00 committed by GitHub
commit 5f715d32d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
27 changed files with 552 additions and 85 deletions

2
.gitignore vendored
View File

@ -7,6 +7,7 @@ spec/fixtures/manifests/
spec/fixtures/modules/ spec/fixtures/modules/
.vagrant/ .vagrant/
.bundle/ .bundle/
.ruby-version
coverage/ coverage/
log/ log/
.idea/ .idea/
@ -16,3 +17,4 @@ Puppetfile.lock
*.iml *.iml
.*.sw? .*.sw?
.yardoc/ .yardoc/
Guardfile

View File

@ -1 +1 @@
modulesync_config_version: '0.19.3' modulesync_config_version: '1.9.3-rc0'

View File

@ -1 +1,20 @@
docs/ docs/
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/

1
.rspec_parallel Normal file
View File

@ -0,0 +1 @@
--format progress

View File

@ -9,6 +9,10 @@ AllCops:
- .vendor/**/* - .vendor/**/*
- pkg/**/* - pkg/**/*
- spec/fixtures/**/* - spec/fixtures/**/*
- Gemfile
- Rakefile
- Guardfile
- Vagrantfile
Lint/ConditionPosition: Lint/ConditionPosition:
Enabled: True Enabled: True
@ -42,13 +46,16 @@ Style/HashSyntax:
Style/RedundantReturn: Style/RedundantReturn:
Enabled: True Enabled: True
Layout/EndOfLine:
Enabled: False
Lint/AmbiguousOperator: Lint/AmbiguousOperator:
Enabled: True Enabled: True
Lint/AssignmentInCondition: Lint/AssignmentInCondition:
Enabled: True Enabled: True
Style/SpaceBeforeComment: Layout/SpaceBeforeComment:
Enabled: True Enabled: True
Style/AndOr: Style/AndOr:
@ -116,7 +123,7 @@ Lint/UselessAssignment:
Lint/Void: Lint/Void:
Enabled: True Enabled: True
Style/AccessModifierIndentation: Layout/AccessModifierIndentation:
Enabled: True Enabled: True
Style/AccessorMethodName: Style/AccessorMethodName:
@ -125,13 +132,13 @@ Style/AccessorMethodName:
Style/Alias: Style/Alias:
Enabled: True Enabled: True
Style/AlignArray: Layout/AlignArray:
Enabled: True Enabled: True
Style/AlignHash: Layout/AlignHash:
Enabled: True Enabled: True
Style/AlignParameters: Layout/AlignParameters:
Enabled: True Enabled: True
Metrics/BlockNesting: Metrics/BlockNesting:
@ -149,7 +156,7 @@ Style/BracesAroundHashParameters:
Style/CaseEquality: Style/CaseEquality:
Enabled: True Enabled: True
Style/CaseIndentation: Layout/CaseIndentation:
Enabled: True Enabled: True
Style/CharacterLiteral: Style/CharacterLiteral:
@ -183,64 +190,64 @@ Style/WordArray:
Style/UnneededPercentQ: Style/UnneededPercentQ:
Enabled: True Enabled: True
Style/Tab: Layout/Tab:
Enabled: True Enabled: True
Style/SpaceBeforeSemicolon: Layout/SpaceBeforeSemicolon:
Enabled: True Enabled: True
Style/TrailingBlankLines: Layout/TrailingBlankLines:
Enabled: True Enabled: True
Style/SpaceInsideBlockBraces: Layout/SpaceInsideBlockBraces:
Enabled: True Enabled: True
Style/SpaceInsideBrackets: Layout/SpaceInsideBrackets:
Enabled: True Enabled: True
Style/SpaceInsideHashLiteralBraces: Layout/SpaceInsideHashLiteralBraces:
Enabled: True Enabled: True
Style/SpaceInsideParens: Layout/SpaceInsideParens:
Enabled: True Enabled: True
Style/LeadingCommentSpace: Layout/LeadingCommentSpace:
Enabled: True Enabled: True
Style/SpaceBeforeFirstArg: Layout/SpaceBeforeFirstArg:
Enabled: True Enabled: True
Style/SpaceAfterColon: Layout/SpaceAfterColon:
Enabled: True Enabled: True
Style/SpaceAfterComma: Layout/SpaceAfterComma:
Enabled: True Enabled: True
Style/SpaceAfterMethodName: Layout/SpaceAfterMethodName:
Enabled: True Enabled: True
Style/SpaceAfterNot: Layout/SpaceAfterNot:
Enabled: True Enabled: True
Style/SpaceAfterSemicolon: Layout/SpaceAfterSemicolon:
Enabled: True Enabled: True
Style/SpaceAroundEqualsInParameterDefault: Layout/SpaceAroundEqualsInParameterDefault:
Enabled: True Enabled: True
Style/SpaceAroundOperators: Layout/SpaceAroundOperators:
Enabled: True Enabled: True
Style/SpaceBeforeBlockBraces: Layout/SpaceBeforeBlockBraces:
Enabled: True Enabled: True
Style/SpaceBeforeComma: Layout/SpaceBeforeComma:
Enabled: True Enabled: True
Style/CollectionMethods: Style/CollectionMethods:
Enabled: True Enabled: True
Style/CommentIndentation: Layout/CommentIndentation:
Enabled: True Enabled: True
Style/ColonMethodCall: Style/ColonMethodCall:
@ -265,7 +272,7 @@ Style/DefWithParentheses:
Style/PreferredHashMethods: Style/PreferredHashMethods:
Enabled: True Enabled: True
Style/DotPosition: Layout/DotPosition:
EnforcedStyle: trailing EnforcedStyle: trailing
Style/DoubleNegation: Style/DoubleNegation:
@ -274,25 +281,25 @@ Style/DoubleNegation:
Style/EachWithObject: Style/EachWithObject:
Enabled: True Enabled: True
Style/EmptyLineBetweenDefs: Layout/EmptyLineBetweenDefs:
Enabled: True Enabled: True
Style/IndentArray: Layout/IndentArray:
Enabled: True Enabled: True
Style/IndentHash: Layout/IndentHash:
Enabled: True Enabled: True
Style/IndentationConsistency: Layout/IndentationConsistency:
Enabled: True Enabled: True
Style/IndentationWidth: Layout/IndentationWidth:
Enabled: True Enabled: True
Style/EmptyLines: Layout/EmptyLines:
Enabled: True Enabled: True
Style/EmptyLinesAroundAccessModifier: Layout/EmptyLinesAroundAccessModifier:
Enabled: True Enabled: True
Style/EmptyLiteral: Style/EmptyLiteral:
@ -311,7 +318,7 @@ Style/MethodDefParentheses:
Style/LineEndConcatenation: Style/LineEndConcatenation:
Enabled: True Enabled: True
Style/TrailingWhitespace: Layout/TrailingWhitespace:
Enabled: True Enabled: True
Style/StringLiterals: Style/StringLiterals:
@ -463,9 +470,6 @@ Metrics/ParameterLists:
Lint/RequireParentheses: Lint/RequireParentheses:
Enabled: True Enabled: True
Style/SpaceBeforeFirstArg:
Enabled: True
Style/ModuleFunction: Style/ModuleFunction:
Enabled: True Enabled: True
@ -481,7 +485,7 @@ Style/Encoding:
Style/BlockDelimiters: Style/BlockDelimiters:
Enabled: True Enabled: True
Style/MultilineBlockLayout: Layout/MultilineBlockLayout:
Enabled: True Enabled: True
# 'Complexity' is very relative # 'Complexity' is very relative
@ -495,11 +499,15 @@ Metrics/PerceivedComplexity:
Lint/UselessAssignment: Lint/UselessAssignment:
Enabled: True Enabled: True
Style/ClosingParenthesisIndentation: Layout/ClosingParenthesisIndentation:
Enabled: True Enabled: True
# RSpec # RSpec
RSpec/BeforeAfterAll:
Exclude:
- spec/acceptance/**/*
# We don't use rspec in this way # We don't use rspec in this way
RSpec/DescribeClass: RSpec/DescribeClass:
Enabled: False Enabled: False
@ -523,9 +531,22 @@ RSpec/RepeatedExample:
RSpec/NestedGroups: RSpec/NestedGroups:
Enabled: False Enabled: False
# this is broken on ruby1.9
Layout/IndentHeredoc:
Enabled: False
# disable Yaml safe_load. This is needed to support ruby2.0.0 development envs # disable Yaml safe_load. This is needed to support ruby2.0.0 development envs
Security/YAMLLoad: Security/YAMLLoad:
Enabled: false Enabled: false
Security/MarshalLoad: Security/MarshalLoad:
Enabled: false Enabled: false
# This affects hiera interpolation, as well as some configs that we push.
Style/FormatStringToken:
Enabled: false
# This is useful, but sometimes a little too picky about where unit tests files
# are located.
RSpec/FilePath:
Enabled: false

View File

@ -3,34 +3,50 @@ sudo: false
dist: trusty dist: trusty
language: ruby language: ruby
cache: bundler cache: bundler
bundler_args: --without system_tests development # related to https://github.com/rubygems/rubygems/issues/2123
before_install: before_install:
- bundle -v - 'rm -f Gemfile.lock'
- rm Gemfile.lock || true - 'gem update --system'
- gem update --system - 'gem install bundler'
- gem update bundler
- gem --version
- bundle -v
script: script:
- 'bundle exec rake $CHECK' - 'bundle exec rake $CHECK'
matrix: matrix:
fast_finish: true fast_finish: true
include: include:
- rvm: 2.1.9 - rvm: 2.1.9
env: PUPPET_VERSION="~> 4.0" CHECK=test bundler_args: --without system_tests development release
- rvm: 2.2.6 env: PUPPET_VERSION="~> 4.0" CHECK=test PARALLEL_TEST_PROCESSORS=12
env: PUPPET_VERSION="~> 4.0" CHECK=test - rvm: 2.4.4
- rvm: 2.3.3 bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 4.0" CHECK=test env: PUPPET_VERSION="~> 5.0" CHECK=test
- rvm: 2.4.0 - rvm: 2.5.1
env: PUPPET_VERSION="~> 4.0" CHECK=test bundler_args: --without system_tests development release
- rvm: 2.4.0 env: PUPPET_VERSION="~> 5.0" CHECK=test_with_coveralls
env: PUPPET_VERSION="~> 4.0" CHECK=rubocop - rvm: 2.4.4
- rvm: 2.4.0 bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 4.0" CHECK=build env: PUPPET_VERSION="~> 5.0" CHECK=rubocop
- rvm: 2.5.1
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=build
branches: branches:
only: only:
- master - master
- /^v\d/ - /^v\d/
notifications: notifications:
email: false email: false
irc:
on_success: false
on_failure: false
channels:
- "chat.freenode.org#voxpupuli-notifications"
deploy:
provider: puppetforge
user: puppet
password:
secure: ""
on:
tags: true
# all_branches is required to use tags
all_branches: true
# Only publish the build marked with "DEPLOY_TO_FORGE"
condition: "$DEPLOY_TO_FORGE = yes"

55
Gemfile
View File

@ -11,11 +11,10 @@ def location_for(place, fake_version = nil)
end end
group :test do group :test do
gem 'puppetlabs_spec_helper', '~> 1.2.2', :require => false gem 'puppetlabs_spec_helper', '~> 2.6.0', :require => false
gem 'rspec-puppet', '~> 2.5', :require => false gem 'rspec-puppet', '~> 2.5', :require => false
gem 'rspec-puppet-facts', :require => false gem 'rspec-puppet-facts', :require => false
gem 'rspec-puppet-utils', :require => false gem 'rspec-puppet-utils', :require => false
gem 'puppet-lint-absolute_classname-check', :require => false
gem 'puppet-lint-leading_zero-check', :require => false gem 'puppet-lint-leading_zero-check', :require => false
gem 'puppet-lint-trailing_comma-check', :require => false gem 'puppet-lint-trailing_comma-check', :require => false
gem 'puppet-lint-version_comparison-check', :require => false gem 'puppet-lint-version_comparison-check', :require => false
@ -23,33 +22,55 @@ group :test do
gem 'puppet-lint-unquoted_string-check', :require => false gem 'puppet-lint-unquoted_string-check', :require => false
gem 'puppet-lint-variable_contains_upcase', :require => false gem 'puppet-lint-variable_contains_upcase', :require => false
gem 'metadata-json-lint', :require => false gem 'metadata-json-lint', :require => false
gem 'puppet-blacksmith', :require => false
gem 'voxpupuli-release', :require => false, :git => 'https://github.com/voxpupuli/voxpupuli-release-gem.git'
gem 'puppet-strings', '~> 1.0.0', :require => false
gem 'redcarpet', :require => false gem 'redcarpet', :require => false
gem 'rubocop', '~> 0.47.0', :require => false if RUBY_VERSION >= '2.3.0' gem 'rubocop', '~> 0.49.1', :require => false if RUBY_VERSION >= '2.3.0'
gem 'rubocop-rspec', '~> 1.10.0', :require => false if RUBY_VERSION >= '2.3.0' gem 'rubocop-rspec', '~> 1.15.0', :require => false if RUBY_VERSION >= '2.3.0'
gem 'mocha', '>= 1.2.1', :require => false gem 'mocha', '~> 1.4.0', :require => false
gem 'coveralls', :require => false gem 'coveralls', :require => false
gem 'simplecov-console', :require => false gem 'simplecov-console', :require => false
gem 'github_changelog_generator', '~> 1.13.0', :require => false if RUBY_VERSION < '2.2.2'
gem 'rack', '~> 1.0', :require => false if RUBY_VERSION < '2.2.2' gem 'rack', '~> 1.0', :require => false if RUBY_VERSION < '2.2.2'
gem 'github_changelog_generator', :require => false if RUBY_VERSION >= '2.2.2' gem 'parallel_tests', :require => false
end end
group :development do group :development do
gem 'travis', :require => false gem 'travis', :require => false
gem 'travis-lint', :require => false gem 'travis-lint', :require => false
gem 'guard-rake', :require => false gem 'guard-rake', :require => false
gem 'overcommit', '>= 0.39.1', :require => false
end
group :system_tests do
gem 'winrm', :require => false
if beaker_version = ENV['BEAKER_VERSION']
gem 'beaker', *location_for(beaker_version)
else
gem 'beaker', '>= 3.9.0', :require => false
end
if beaker_rspec_version = ENV['BEAKER_RSPEC_VERSION']
gem 'beaker-rspec', *location_for(beaker_rspec_version)
else
gem 'beaker-rspec', :require => false
end
gem 'serverspec', :require => false
gem 'beaker-hostgenerator', '>= 1.1.10', :require => false
gem 'beaker-puppet_install_helper', :require => false
gem 'beaker-module_install_helper', :require => false
end
group :release do
gem 'github_changelog_generator', :require => false, :git => 'https://github.com/skywinder/github-changelog-generator' if RUBY_VERSION >= '2.2.2'
gem 'puppet-blacksmith', :require => false
gem 'voxpupuli-release', :require => false, :git => 'https://github.com/voxpupuli/voxpupuli-release-gem'
gem 'puppet-strings', '~> 1.0', :require => false
end end
group :extra do group :extra do
gem 'net-ldap', '~> 0.16.0', :require => false gem 'net-ldap', '~> 0.12.1', :require => false
end end
group :testextra do group :testextra do
gem 'rspec-mocks' gem 'rspec-mocks', :require => false
gem 'rspec-expectations' gem 'rspec-expectations', :require => false
end end
@ -60,7 +81,7 @@ else
gem 'facter', :require => false, :groups => [:test] gem 'facter', :require => false, :groups => [:test]
end end
ENV['PUPPET_VERSION'].nil? ? puppetversion = '~> 4.0' : puppetversion = ENV['PUPPET_VERSION'].to_s ENV['PUPPET_VERSION'].nil? ? puppetversion = '~> 5.0' : puppetversion = ENV['PUPPET_VERSION'].to_s
gem 'puppet', puppetversion, :require => false, :groups => [:test] gem 'puppet', puppetversion, :require => false, :groups => [:test]
# vim: syntax=ruby # vim: syntax=ruby

2
Jenkinsfile vendored
View File

@ -10,7 +10,7 @@ pipeline {
stages { stages {
stage('test') { stage('test') {
steps { steps {
sh '. .env.sh && printenv && bundle install --without=development' sh '. .env.sh && printenv && bundle install --without=development system_tests'
sh '. .env.sh && bundle exec rake test' sh '. .env.sh && bundle exec rake test'
} }
} }

View File

@ -1,7 +1,13 @@
require 'puppetlabs_spec_helper/rake_tasks' require 'puppetlabs_spec_helper/rake_tasks'
require 'puppet_blacksmith/rake_tasks'
require 'voxpupuli/release/rake_tasks' # load optional tasks for releases
require 'puppet-strings/tasks' # only available if gem group releases is installed
begin
require 'puppet_blacksmith/rake_tasks'
require 'voxpupuli/release/rake_tasks'
require 'puppet-strings/tasks'
rescue LoadError
end
PuppetLint.configuration.log_format = '%{path}:%{line}:%{check}:%{KIND}:%{message}' PuppetLint.configuration.log_format = '%{path}:%{line}:%{check}:%{KIND}:%{message}'
PuppetLint.configuration.fail_on_warnings = true PuppetLint.configuration.fail_on_warnings = true
@ -20,6 +26,12 @@ exclude_paths = %w(
PuppetLint.configuration.ignore_paths = exclude_paths PuppetLint.configuration.ignore_paths = exclude_paths
PuppetSyntax.exclude_paths = exclude_paths PuppetSyntax.exclude_paths = exclude_paths
desc 'Auto-correct puppet-lint offenses'
task 'lint:auto_correct' do
PuppetLint.configuration.fix = true
Rake::Task[:lint].invoke
end
desc 'Run acceptance tests' desc 'Run acceptance tests'
RSpec::Core::RakeTask.new(:acceptance) do |t| RSpec::Core::RakeTask.new(:acceptance) do |t|
t.pattern = 'spec/acceptance' t.pattern = 'spec/acceptance'
@ -31,13 +43,49 @@ task test: [
:release_checks, :release_checks,
] ]
desc "Run main 'test' task and report merged results to coveralls"
task test_with_coveralls: [:test] do
if Dir.exist?(File.expand_path('../lib', __FILE__))
require 'coveralls/rake/task'
Coveralls::RakeTask.new
Rake::Task['coveralls:push'].invoke
else
puts 'Skipping reporting to coveralls. Module has no lib dir'
end
end
desc "Print supported beaker sets"
task 'beaker_sets', [:directory] do |t, args|
directory = args[:directory]
metadata = JSON.load(File.read('metadata.json'))
(metadata['operatingsystem_support'] || []).each do |os|
(os['operatingsystemrelease'] || []).each do |release|
if directory
beaker_set = "#{directory}/#{os['operatingsystem'].downcase}-#{release}"
else
beaker_set = "#{os['operatingsystem'].downcase}-#{release}-x64"
end
filename = "spec/acceptance/nodesets/#{beaker_set}.yml"
puts beaker_set if File.exists? filename
end
end
end
begin begin
require 'github_changelog_generator/task' require 'github_changelog_generator/task'
GitHubChangelogGenerator::RakeTask.new :changelog do |config| GitHubChangelogGenerator::RakeTask.new :changelog do |config|
version = (Blacksmith::Modulefile.new).version version = (Blacksmith::Modulefile.new).version
config.future_release = "#{version}" config.future_release = "v#{version}" if version =~ /^\d+\.\d+.\d+$/
config.header = "# Change log\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 impact the functionality of the module." 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 modulesync} config.exclude_labels = %w{duplicate question invalid wontfix wont-fix modulesync skip-changelog}
config.user = 'voxpupuli'
metadata_json = File.join(File.dirname(__FILE__), 'metadata.json')
metadata = JSON.load(File.read(metadata_json))
config.project = metadata['name']
end end
rescue LoadError rescue LoadError
end end

View File

@ -0,0 +1,13 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
archlinux-2-x64:
roles:
- master
platform: archlinux-2-x64
box: archlinux/archlinux
hypervisor: vagrant
CONFIG:
type: foss

View File

@ -0,0 +1,15 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
centos-6-x64:
roles:
- master
platform: el-6-x86_64
box: centos/6
hypervisor: vagrant
CONFIG:
type: aio
...
# vim: syntax=yaml

View File

@ -0,0 +1,17 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
centos-66-x64:
roles:
- master
- database
- dashboard
platform: el-6-x86_64
box: puppetlabs/centos-6.6-64-puppet-enterprise
hypervisor: vagrant
CONFIG:
type: pe
...
# vim: syntax=yaml

View File

@ -0,0 +1,15 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
centos-7-x64:
roles:
- master
platform: el-7-x86_64
box: centos/7
hypervisor: vagrant
CONFIG:
type: aio
...
# vim: syntax=yaml

View File

@ -0,0 +1,15 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
debian-82-x64:
roles:
- master
platform: debian-8-amd64
box: puppetlabs/debian-8.2-64-nocm
hypervisor: vagrant
CONFIG:
type: foss
...
# vim: syntax=yaml

View File

@ -0,0 +1,31 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# Additional ~/.fog config file with AWS EC2 credentials
# required.
#
# see: https://github.com/puppetlabs/beaker/blob/master/docs/how_to/hypervisors/ec2.md
#
# Amazon Linux is not a RHEL clone.
#
HOSTS:
amazonlinux-2016091-x64:
roles:
- master
platform: centos-6-x86_64
hypervisor: ec2
# refers to image_tempaltes.yaml AMI[vmname] entry:
vmname: amazonlinux-2016091-eu-central-1
# refers to image_tempaltes.yaml entry inside AMI[vmname][:image]:
snapshot: aio
# t2.micro is free tier eligible (https://aws.amazon.com/en/free/):
amisize: t2.micro
# required so that beaker sanitizes sshd_config and root authorized_keys:
user: ec2-user
CONFIG:
type: aio
:ec2_yaml: spec/acceptance/nodesets/ec2/image_templates.yaml
...
# vim: syntax=yaml

View File

@ -0,0 +1,34 @@
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# see also: https://github.com/puppetlabs/beaker/blob/master/docs/how_to/hypervisors/ec2.md
#
# Hint: image IDs (ami-*) for the same image are different per location.
#
AMI:
# Amazon Linux AMI 2016.09.1 (HVM), SSD Volume Type
amazonlinux-2016091-eu-central-1:
:image:
:aio: ami-af0fc0c0
:region: eu-central-1
# Red Hat Enterprise Linux 7.3 (HVM), SSD Volume Type
rhel-73-eu-central-1:
:image:
:aio: ami-e4c63e8b
:region: eu-central-1
# SUSE Linux Enterprise Server 12 SP2 (HVM), SSD Volume Type
sles-12sp2-eu-central-1:
:image:
:aio: ami-c425e4ab
:region: eu-central-1
# Ubuntu Server 16.04 LTS (HVM), SSD Volume Type
ubuntu-1604-eu-central-1:
:image:
:aio: ami-fe408091
:region: eu-central-1
# Microsoft Windows Server 2016 Base
windows-2016-base-eu-central-1:
:image:
:aio: ami-88ec20e7
:region: eu-central-1

View File

@ -0,0 +1,29 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# Additional ~/.fog config file with AWS EC2 credentials
# required.
#
# see: https://github.com/puppetlabs/beaker/blob/master/docs/how_to/hypervisors/ec2.md
#
HOSTS:
rhel-73-x64:
roles:
- master
platform: el-7-x86_64
hypervisor: ec2
# refers to image_tempaltes.yaml AMI[vmname] entry:
vmname: rhel-73-eu-central-1
# refers to image_tempaltes.yaml entry inside AMI[vmname][:image]:
snapshot: aio
# t2.micro is free tier eligible (https://aws.amazon.com/en/free/):
amisize: t2.micro
# required so that beaker sanitizes sshd_config and root authorized_keys:
user: ec2-user
CONFIG:
type: aio
:ec2_yaml: spec/acceptance/nodesets/ec2/image_templates.yaml
...
# vim: syntax=yaml

View File

@ -0,0 +1,29 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# Additional ~/.fog config file with AWS EC2 credentials
# required.
#
# see: https://github.com/puppetlabs/beaker/blob/master/docs/how_to/hypervisors/ec2.md
#
HOSTS:
sles-12sp2-x64:
roles:
- master
platform: sles-12-x86_64
hypervisor: ec2
# refers to image_tempaltes.yaml AMI[vmname] entry:
vmname: sles-12sp2-eu-central-1
# refers to image_tempaltes.yaml entry inside AMI[vmname][:image]:
snapshot: aio
# t2.micro is free tier eligible (https://aws.amazon.com/en/free/):
amisize: t2.micro
# required so that beaker sanitizes sshd_config and root authorized_keys:
user: ec2-user
CONFIG:
type: aio
:ec2_yaml: spec/acceptance/nodesets/ec2/image_templates.yaml
...
# vim: syntax=yaml

View File

@ -0,0 +1,29 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# Additional ~/.fog config file with AWS EC2 credentials
# required.
#
# see: https://github.com/puppetlabs/beaker/blob/master/docs/how_to/hypervisors/ec2.md
#
HOSTS:
ubuntu-1604-x64:
roles:
- master
platform: ubuntu-16.04-amd64
hypervisor: ec2
# refers to image_tempaltes.yaml AMI[vmname] entry:
vmname: ubuntu-1604-eu-central-1
# refers to image_tempaltes.yaml entry inside AMI[vmname][:image]:
snapshot: aio
# t2.micro is free tier eligible (https://aws.amazon.com/en/free/):
amisize: t2.micro
# required so that beaker sanitizes sshd_config and root authorized_keys:
user: ubuntu
CONFIG:
type: aio
:ec2_yaml: spec/acceptance/nodesets/ec2/image_templates.yaml
...
# vim: syntax=yaml

View File

@ -0,0 +1,29 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# Additional ~/.fog config file with AWS EC2 credentials
# required.
#
# see: https://github.com/puppetlabs/beaker/blob/master/docs/how_to/hypervisors/ec2.md
#
HOSTS:
windows-2016-base-x64:
roles:
- master
platform: windows-2016-64
hypervisor: ec2
# refers to image_tempaltes.yaml AMI[vmname] entry:
vmname: windows-2016-base-eu-central-1
# refers to image_tempaltes.yaml entry inside AMI[vmname][:image]:
snapshot: aio
# t2.micro is free tier eligible (https://aws.amazon.com/en/free/):
amisize: t2.micro
# required so that beaker sanitizes sshd_config and root authorized_keys:
user: ec2-user
CONFIG:
type: aio
:ec2_yaml: spec/acceptance/nodesets/ec2/image_templates.yaml
...
# vim: syntax=yaml

View File

@ -0,0 +1,16 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
HOSTS:
fedora-25-x64:
roles:
- master
platform: fedora-25-x86_64
box: fedora/25-cloud-base
hypervisor: vagrant
CONFIG:
type: aio
...
# vim: syntax=yaml

View File

@ -0,0 +1,16 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
HOSTS:
fedora-26-x64:
roles:
- master
platform: fedora-26-x86_64
box: fedora/26-cloud-base
hypervisor: vagrant
CONFIG:
type: aio
...
# vim: syntax=yaml

View File

@ -0,0 +1,18 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
#
# platform is fedora 26 because there is no puppet-agent
# for fedora 27 as of 2017-11-17
HOSTS:
fedora-27-x64:
roles:
- master
platform: fedora-26-x86_64
box: fedora/27-cloud-base
hypervisor: vagrant
CONFIG:
type: aio
...
# vim: syntax=yaml

View File

@ -0,0 +1,15 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
ubuntu-server-1404-x64:
roles:
- master
platform: ubuntu-14.04-amd64
box: puppetlabs/ubuntu-14.04-64-nocm
hypervisor: vagrant
CONFIG:
type: foss
...
# vim: syntax=yaml

View File

@ -0,0 +1,15 @@
---
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
HOSTS:
ubuntu-server-1604-x64:
roles:
- master
platform: ubuntu-16.04-amd64
box: puppetlabs/ubuntu-16.04-64-nocm
hypervisor: vagrant
CONFIG:
type: foss
...
# vim: syntax=yaml

View File

@ -2,14 +2,17 @@ require 'puppetlabs_spec_helper/module_spec_helper'
require 'rspec-puppet-facts' require 'rspec-puppet-facts'
include RspecPuppetFacts include RspecPuppetFacts
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/xaque208/modulesync_config
if Dir.exist?(File.expand_path('../../lib', __FILE__)) if Dir.exist?(File.expand_path('../../lib', __FILE__))
require 'coveralls' require 'coveralls'
require 'simplecov' require 'simplecov'
require 'simplecov-console' require 'simplecov-console'
SimpleCov.formatters = [ SimpleCov.formatters = [
SimpleCov::Formatter::HTMLFormatter, SimpleCov::Formatter::HTMLFormatter,
SimpleCov::Formatter::Console, SimpleCov::Formatter::Console
Coveralls::SimpleCov::Formatter
] ]
SimpleCov.start do SimpleCov.start do
track_files 'lib/**/*.rb' track_files 'lib/**/*.rb'

View File

@ -44,7 +44,7 @@ describe 'PuppetX::LDAPquery' do
filter = '(uid=zach)' filter = '(uid=zach)'
attributes = ['objectClass'] attributes = ['objectClass']
wanted = [{ 'dn' => ['uid=zach,ou=users,dc=puppetlabs,dc=com'], 'objectclass' => %w(posixAccount shadowAccount inetOrgPerson puppetPerson ldapPublicKey top) }] wanted = [{ 'dn' => ['uid=zach,ou=users,dc=puppetlabs,dc=com'], 'objectclass' => %w[posixAccount shadowAccount inetOrgPerson puppetPerson ldapPublicKey top] }]
entries = Marshal.load(File.read('spec/fixtures/entries_objectClass.obj')) entries = Marshal.load(File.read('spec/fixtures/entries_objectClass.obj'))