29 changes: 17 additions & 12 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
This module has grown over time based on a range of contributions from
people using it. If you follow these contributing guidelines your patch
will likely make it into a release a little quicker.
will likely make it into a release a little more quickly.

## Contributing

Expand Down Expand Up @@ -65,6 +65,10 @@ add tests if you're adding new functionality. If you've not used
[rspec-puppet](http://rspec-puppet.com/) before then feel free to ask
about how best to test your new feature.

To run the linter, the syntax checker and the unit tests:

bundle exec rake test

To run your all the unit tests

bundle exec rake spec SPEC_OPTS='--format documentation'
Expand All @@ -73,10 +77,6 @@ To run a specific spec test set the `SPEC` variable:

bundle exec rake spec SPEC=spec/foo_spec.rb

To run the linter, the syntax checker and the unit tests:

bundle exec rake test

## Integration tests

The unit tests just check the code runs, not that it does exactly what
Expand All @@ -89,15 +89,20 @@ with:

bundle exec rake acceptance

This will run the tests on an Ubuntu 12.04 virtual machine. You can also
run the integration tests against Centos 6.6 with.
This will run the tests on the module's default nodeset. You can override the
nodeset used, e.g.,

BEAKER_set=centos-7-x64 bundle exec rake acceptance

There are default rake tasks for the various acceptance test modules, e.g.,

BEAKER_set=centos-66-x64 bundle exec rake acceptances
bundle exec rake beaker:centos-7-x64
bundle exec rake beaker:ssh:centos-7-x64

If you don't want to have to recreate the virtual machine every time you
can use `BEAKER_DESTROY=no` and `BEAKER_PROVISION=no`. On the first run you will
at least need `BEAKER_PROVISION` set to yes (the default). The Vagrantfile
for the created virtual machines will be in `.vagrant/beaker_vagrant_fies`.
If you don't want to have to recreate the virtual machine every time you can
use `BEAKER_destroy=no` and `BEAKER_provision=no`. On the first run you will at
least need `BEAKER_provision` set to yes (the default). The Vagrantfile for the
created virtual machines will be in `.vagrant/beaker_vagrant_files`.

The easiest way to debug in a docker container is to open a shell:

Expand Down
2 changes: 1 addition & 1 deletion .msync.yml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
modulesync_config_version: '0.21.3'
modulesync_config_version: '1.4.0'
90 changes: 50 additions & 40 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ AllCops:
- Gemfile
- Rakefile
- Guardfile
- Vagrantfile
Lint/ConditionPosition:
Enabled: True

Expand Down Expand Up @@ -45,13 +46,16 @@ Style/HashSyntax:
Style/RedundantReturn:
Enabled: True

Style/EndOfLine:
Enabled: False

Lint/AmbiguousOperator:
Enabled: True

Lint/AssignmentInCondition:
Enabled: True

Style/SpaceBeforeComment:
Layout/SpaceBeforeComment:
Enabled: True

Style/AndOr:
Expand Down Expand Up @@ -119,7 +123,7 @@ Lint/UselessAssignment:
Lint/Void:
Enabled: True

Style/AccessModifierIndentation:
Layout/AccessModifierIndentation:
Enabled: True

Style/AccessorMethodName:
Expand All @@ -128,13 +132,13 @@ Style/AccessorMethodName:
Style/Alias:
Enabled: True

Style/AlignArray:
Layout/AlignArray:
Enabled: True

Style/AlignHash:
Layout/AlignHash:
Enabled: True

Style/AlignParameters:
Layout/AlignParameters:
Enabled: True

Metrics/BlockNesting:
Expand All @@ -152,7 +156,7 @@ Style/BracesAroundHashParameters:
Style/CaseEquality:
Enabled: True

Style/CaseIndentation:
Layout/CaseIndentation:
Enabled: True

Style/CharacterLiteral:
Expand Down Expand Up @@ -186,64 +190,64 @@ Style/WordArray:
Style/UnneededPercentQ:
Enabled: True

Style/Tab:
Layout/Tab:
Enabled: True

Style/SpaceBeforeSemicolon:
Layout/SpaceBeforeSemicolon:
Enabled: True

Style/TrailingBlankLines:
Layout/TrailingBlankLines:
Enabled: True

Style/SpaceInsideBlockBraces:
Layout/SpaceInsideBlockBraces:
Enabled: True

Style/SpaceInsideBrackets:
Layout/SpaceInsideBrackets:
Enabled: True

Style/SpaceInsideHashLiteralBraces:
Layout/SpaceInsideHashLiteralBraces:
Enabled: True

Style/SpaceInsideParens:
Layout/SpaceInsideParens:
Enabled: True

Style/LeadingCommentSpace:
Layout/LeadingCommentSpace:
Enabled: True

Style/SpaceBeforeFirstArg:
Layout/SpaceBeforeFirstArg:
Enabled: True

Style/SpaceAfterColon:
Layout/SpaceAfterColon:
Enabled: True

Style/SpaceAfterComma:
Layout/SpaceAfterComma:
Enabled: True

Style/SpaceAfterMethodName:
Layout/SpaceAfterMethodName:
Enabled: True

Style/SpaceAfterNot:
Layout/SpaceAfterNot:
Enabled: True

Style/SpaceAfterSemicolon:
Layout/SpaceAfterSemicolon:
Enabled: True

Style/SpaceAroundEqualsInParameterDefault:
Layout/SpaceAroundEqualsInParameterDefault:
Enabled: True

Style/SpaceAroundOperators:
Layout/SpaceAroundOperators:
Enabled: True

Style/SpaceBeforeBlockBraces:
Layout/SpaceBeforeBlockBraces:
Enabled: True

Style/SpaceBeforeComma:
Layout/SpaceBeforeComma:
Enabled: True

Style/CollectionMethods:
Enabled: True

Style/CommentIndentation:
Layout/CommentIndentation:
Enabled: True

Style/ColonMethodCall:
Expand All @@ -268,7 +272,7 @@ Style/DefWithParentheses:
Style/PreferredHashMethods:
Enabled: True

Style/DotPosition:
Layout/DotPosition:
EnforcedStyle: trailing

Style/DoubleNegation:
Expand All @@ -277,25 +281,25 @@ Style/DoubleNegation:
Style/EachWithObject:
Enabled: True

Style/EmptyLineBetweenDefs:
Layout/EmptyLineBetweenDefs:
Enabled: True

Style/IndentArray:
Layout/IndentArray:
Enabled: True

Style/IndentHash:
Layout/IndentHash:
Enabled: True

Style/IndentationConsistency:
Layout/IndentationConsistency:
Enabled: True

Style/IndentationWidth:
Layout/IndentationWidth:
Enabled: True

Style/EmptyLines:
Layout/EmptyLines:
Enabled: True

Style/EmptyLinesAroundAccessModifier:
Layout/EmptyLinesAroundAccessModifier:
Enabled: True

Style/EmptyLiteral:
Expand All @@ -314,7 +318,7 @@ Style/MethodDefParentheses:
Style/LineEndConcatenation:
Enabled: True

Style/TrailingWhitespace:
Layout/TrailingWhitespace:
Enabled: True

Style/StringLiterals:
Expand Down Expand Up @@ -466,9 +470,6 @@ Metrics/ParameterLists:
Lint/RequireParentheses:
Enabled: True

Style/SpaceBeforeFirstArg:
Enabled: True

Style/ModuleFunction:
Enabled: True

Expand All @@ -484,7 +485,7 @@ Style/Encoding:
Style/BlockDelimiters:
Enabled: True

Style/MultilineBlockLayout:
Layout/MultilineBlockLayout:
Enabled: True

# 'Complexity' is very relative
Expand All @@ -498,7 +499,7 @@ Metrics/PerceivedComplexity:
Lint/UselessAssignment:
Enabled: True

Style/ClosingParenthesisIndentation:
Layout/ClosingParenthesisIndentation:
Enabled: True

# RSpec
Expand Down Expand Up @@ -527,9 +528,18 @@ RSpec/NestedGroups:
Enabled: False

# this is broken on ruby1.9
Style/IndentHeredoc:
Layout/IndentHeredoc:
Enabled: False

# disable Yaml safe_load. This is needed to support ruby2.0.0 development envs
Security/YAMLLoad:
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
34 changes: 15 additions & 19 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,32 +16,28 @@ matrix:
fast_finish: true
include:
- rvm: 2.1.9
bundler_args: --without system_tests development
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 4.0" CHECK=test
- rvm: 2.2.7
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 4.0" CHECK=test
- rvm: 2.3.4
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 4.0" CHECK=test
- rvm: 2.4.1
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 4.0" CHECK=test
- rvm: 2.4.1
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 5.0" CHECK=test
- rvm: 2.4.1
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 4.0" CHECK=rubocop
- rvm: 2.4.1
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 4.0" CHECK=build DEPLOY_TO_FORGE=yes
- rvm: 2.4.2
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=test_with_coveralls
- rvm: 2.4.2
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=rubocop
- rvm: 2.4.2
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=build DEPLOY_TO_FORGE=yes
branches:
only:
- master
- /^v\d/
notifications:
email: false
irc:
on_success: change
on_failure: always
channels:
- "chat.freenode.org#voxpupuli-notifications"
deploy:
provider: puppetforge
user: puppet
Expand Down
Loading