Showing with 12,280 additions and 230 deletions.
  1. +17 −12 .github/CONTRIBUTING.md
  2. +1 −1 .msync.yml
  3. +13 −0 .rubocop.yml
  4. +22 −22 .travis.yml
  5. +31 −1 CHANGELOG.md
  6. +11 −6 Gemfile
  7. +1 −3 README.md
  8. +50 −3 Rakefile
  9. +301 −0 docs/Puppet/Provider/Rabbitmqctl.html
  10. +339 −0 docs/_index.html
  11. +59 −0 docs/class_list.html
  12. +8 −0 docs/css/common.css
  13. +58 −0 docs/css/full_list.css
  14. +492 −0 docs/css/style.css
  15. +441 −0 docs/file.README.html
  16. +17 −0 docs/frames.html
  17. +441 −0 docs/index.html
  18. +248 −0 docs/js/app.js
  19. +216 −0 docs/js/full_list.js
  20. +4 −0 docs/js/jquery.js
  21. +75 −0 docs/method_list.html
  22. +129 −0 docs/puppet_class_list.html
  23. +2,154 −0 docs/puppet_classes/rabbitmq.html
  24. +653 −0 docs/puppet_classes/rabbitmq_3A_3Aconfig.html
  25. +152 −0 docs/puppet_classes/rabbitmq_3A_3Ainstall.html
  26. +236 −0 docs/puppet_classes/rabbitmq_3A_3Ainstall_3A_3Arabbitmqadmin.html
  27. +130 −0 docs/puppet_classes/rabbitmq_3A_3Amanagement.html
  28. +407 −0 docs/puppet_classes/rabbitmq_3A_3Aparams.html
  29. +282 −0 docs/puppet_classes/rabbitmq_3A_3Arepo_3A_3Aapt.html
  30. +184 −0 docs/puppet_classes/rabbitmq_3A_3Arepo_3A_3Arhel.html
  31. +434 −0 docs/puppet_classes/rabbitmq_3A_3Aserver.html
  32. +215 −0 docs/puppet_classes/rabbitmq_3A_3Aservice.html
  33. +139 −0 docs/puppet_provider_list.html
  34. +109 −0 docs/puppet_providers_rabbitmq_binding/rabbitmqadmin.html
  35. +109 −0 docs/puppet_providers_rabbitmq_erlang_cookie/ruby.html
  36. +109 −0 docs/puppet_providers_rabbitmq_exchange/rabbitmqadmin.html
  37. +109 −0 docs/puppet_providers_rabbitmq_parameter/rabbitmqctl.html
  38. +109 −0 docs/puppet_providers_rabbitmq_plugin/rabbitmqplugins.html
  39. +109 −0 docs/puppet_providers_rabbitmq_policy/rabbitmqctl.html
  40. +109 −0 docs/puppet_providers_rabbitmq_queue/rabbitmqadmin.html
  41. +109 −0 docs/puppet_providers_rabbitmq_user/rabbitmqctl.html
  42. +109 −0 docs/puppet_providers_rabbitmq_user_permissions/rabbitmqctl.html
  43. +97 −0 docs/puppet_providers_rabbitmq_vhost/rabbitmqctl.html
  44. +129 −0 docs/puppet_type_list.html
  45. +416 −0 docs/puppet_types/rabbitmq_binding.html
  46. +230 −0 docs/puppet_types/rabbitmq_erlang_cookie.html
  47. +378 −0 docs/puppet_types/rabbitmq_exchange.html
  48. +230 −0 docs/puppet_types/rabbitmq_parameter.html
  49. +211 −0 docs/puppet_types/rabbitmq_plugin.html
  50. +289 −0 docs/puppet_types/rabbitmq_policy.html
  51. +323 −0 docs/puppet_types/rabbitmq_queue.html
  52. +265 −0 docs/puppet_types/rabbitmq_user.html
  53. +233 −0 docs/puppet_types/rabbitmq_user_permissions.html
  54. +195 −0 docs/puppet_types/rabbitmq_vhost.html
  55. +98 −0 docs/top-level-namespace.html
  56. +1 −1 lib/puppet/provider/rabbitmq_binding/rabbitmqadmin.rb
  57. +1 −1 lib/puppet/provider/rabbitmq_erlang_cookie/ruby.rb
  58. +1 −1 lib/puppet/provider/rabbitmq_exchange/rabbitmqadmin.rb
  59. +1 −1 lib/puppet/provider/rabbitmq_parameter/rabbitmqctl.rb
  60. +1 −1 lib/puppet/provider/rabbitmq_plugin/rabbitmqplugins.rb
  61. +22 −9 lib/puppet/provider/rabbitmq_policy/rabbitmqctl.rb
  62. +1 −1 lib/puppet/provider/rabbitmq_queue/rabbitmqadmin.rb
  63. +1 −1 lib/puppet/provider/rabbitmq_user/rabbitmqctl.rb
  64. +1 −1 lib/puppet/provider/rabbitmq_user_permissions/rabbitmqctl.rb
  65. +74 −72 manifests/config.pp
  66. +6 −2 manifests/init.pp
  67. +0 −1 manifests/install/rabbitmqadmin.pp
  68. +61 −59 manifests/params.pp
  69. +1 −5 metadata.json
  70. +0 −1 spec/acceptance/nodesets/docker/debian-7.yml
  71. +0 −1 spec/acceptance/nodesets/docker/debian-8.yml
  72. +20 −0 spec/acceptance/nodesets/docker/debian-9.yml
  73. +4 −0 spec/classes/rabbitmq_spec.rb
  74. +1 −2 spec/spec_helper.rb
  75. +45 −21 spec/unit/puppet/provider/rabbitmq_policy/rabbitmqctl_spec.rb
  76. +3 −1 templates/rabbitmq.config.erb
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: '1.1.0'
modulesync_config_version: '1.6.0'
13 changes: 13 additions & 0 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,6 +46,9 @@ Style/HashSyntax:
Style/RedundantReturn:
Enabled: True

Layout/EndOfLine:
Enabled: False

Lint/AmbiguousOperator:
Enabled: True

Expand Down Expand Up @@ -530,3 +534,12 @@ Layout/IndentHeredoc:
# 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
44 changes: 22 additions & 22 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,47 +4,47 @@ dist: trusty
language: ruby
cache: bundler
before_install:
- bundle -v
- rm Gemfile.lock || true
- gem update --system
- gem update bundler
- gem --version
- bundle -v
- rm -f Gemfile.lock
script:
- 'bundle exec rake $CHECK'
matrix:
fast_finish: true
include:
- rvm: 2.4.1
bundler_args: --without development
- rvm: 2.1.9
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 4.0" CHECK=test PARALLEL_TEST_PROCESSORS=16
- 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
- rvm: 2.4.2
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/ubuntu-16.04 CHECK=beaker
services: docker
sudo: required
- rvm: 2.4.1
bundler_args: --without development
- rvm: 2.4.2
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/centos-7 CHECK=beaker
services: docker
sudo: required
- rvm: 2.1.9
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="~> 5.0" CHECK=rubocop
- rvm: 2.4.1
bundler_args: --without system_tests development
env: PUPPET_VERSION="~> 5.0" CHECK=build DEPLOY_TO_FORGE=yes
branches:
only:
- master
- /^v\d/
notifications:
email: false
irc:
on_success: always
on_failure: always
channels:
- "chat.freenode.org#voxpupuli-notifications"
deploy:
provider: puppetforge
user: puppet
Expand Down
32 changes: 31 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,37 @@ All notable changes to this project will be documented in this file.
Each new release typically also includes the latest modulesync defaults.
These should not affect the functionality of the module.

## [v8.0.0](https://github.com/voxpupuli/puppet-rabbitmq/tree/v8.0.0) (2017-10-19)
## [v8.1.0](https://github.com/voxpupuli/puppet-rabbitmq/tree/v8.1.0) (2018-01-11)

[Full Changelog](https://github.com/voxpupuli/puppet-rabbitmq/compare/v8.0.0...v8.1.0)

**Implemented enhancements:**

- Add options for ssl verify and 'fail\_if\_no\_peer\_cert' for the managem… [\#657](https://github.com/voxpupuli/puppet-rabbitmq/pull/657) ([paebersold](https://github.com/paebersold))
- add ability to have array as package name [\#656](https://github.com/voxpupuli/puppet-rabbitmq/pull/656) ([tampakrap](https://github.com/tampakrap))

**Fixed bugs:**

- Support policy format change in v3.7.0 - \#671 \(Replaces \#674\) [\#676](https://github.com/voxpupuli/puppet-rabbitmq/pull/676) ([fatmcgav](https://github.com/fatmcgav))
- Remove `archive require` in rabbitmqadmin class [\#669](https://github.com/voxpupuli/puppet-rabbitmq/pull/669) ([lzecca78](https://github.com/lzecca78))

**Closed issues:**

- not working with rabbitmq-server 3.7 - Cannot parse invalid user line [\#671](https://github.com/voxpupuli/puppet-rabbitmq/issues/671)
- Rabbitmq crashing with config\_ranch = true [\#668](https://github.com/voxpupuli/puppet-rabbitmq/issues/668)
- puppet/rabbitmq 8.0.0 - /etc/apt/sources.list.d/rabbitmq.list not updated/created [\#662](https://github.com/voxpupuli/puppet-rabbitmq/issues/662)
- rabbitmqadmin install has no way of continuing to use staging in environments using an incompatible archive module [\#659](https://github.com/voxpupuli/puppet-rabbitmq/issues/659)
- RabbitMQ Admin Package should work with Puppet-Archive module, or explicitly depend on camptocamp's archive module [\#658](https://github.com/voxpupuli/puppet-rabbitmq/issues/658)

**Merged pull requests:**

- Do not use defaultfor to choose the only existing provider [\#672](https://github.com/voxpupuli/puppet-rabbitmq/pull/672) ([mbaldessari](https://github.com/mbaldessari))
- regenerate puppet-strings docs [\#667](https://github.com/voxpupuli/puppet-rabbitmq/pull/667) ([bastelfreak](https://github.com/bastelfreak))
- Remove EOL operatingsystems [\#666](https://github.com/voxpupuli/puppet-rabbitmq/pull/666) ([ekohl](https://github.com/ekohl))
- Update README to specify voxpupuli/archive dependency vs. staging [\#660](https://github.com/voxpupuli/puppet-rabbitmq/pull/660) ([wyardley](https://github.com/wyardley))
- release 8.0.0 [\#655](https://github.com/voxpupuli/puppet-rabbitmq/pull/655) ([bastelfreak](https://github.com/bastelfreak))

## [v8.0.0](https://github.com/voxpupuli/puppet-rabbitmq/tree/v8.0.0) (2017-10-18)

[Full Changelog](https://github.com/voxpupuli/puppet-rabbitmq/compare/v7.1.0...v8.0.0)

Expand Down
17 changes: 11 additions & 6 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ def location_for(place, fake_version = nil)
end

group :test do
gem 'puppetlabs_spec_helper', '~> 2.2.0', :require => false
gem 'puppetlabs_spec_helper', '~> 2.5.0', :require => false
gem 'rspec-puppet', '~> 2.5', :require => false
gem 'rspec-puppet-facts', :require => false
gem 'rspec-puppet-utils', :require => false
Expand All @@ -22,18 +22,13 @@ group :test do
gem 'puppet-lint-unquoted_string-check', :require => false
gem 'puppet-lint-variable_contains_upcase', :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'
gem 'puppet-strings', '~> 1.0', :require => false
gem 'redcarpet', :require => false
gem 'rubocop', '~> 0.49.1', :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 'coveralls', :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 'github_changelog_generator', :require => false if RUBY_VERSION >= '2.2.2'
gem 'parallel_tests', :require => false
end

Expand All @@ -45,8 +40,11 @@ group :development do
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)
Expand All @@ -58,6 +56,13 @@ group :system_tests do
gem 'beaker-module_install_helper', :require => false
end

group :release do
gem 'github_changelog_generator', :require => false 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



if facterversion = ENV['FACTER_GEM_VERSION']
Expand Down
4 changes: 1 addition & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -346,9 +346,7 @@ For Debian systems:
ensure => 'latest',
}

This module also depends on the excellent puppet/staging module on the Forge:

puppet module install puppet-staging
This module also depends on voxpupuli/archive to install rabbitmqadmin.

## Development

Expand Down
53 changes: 50 additions & 3 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
require 'puppetlabs_spec_helper/rake_tasks'
require 'puppet_blacksmith/rake_tasks'
require 'voxpupuli/release/rake_tasks'
require 'puppet-strings/tasks'

# load optional tasks for releases
# 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.fail_on_warnings = true
Expand All @@ -20,6 +26,12 @@ exclude_paths = %w(
PuppetLint.configuration.ignore_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'
RSpec::Core::RakeTask.new(:acceptance) do |t|
t.pattern = 'spec/acceptance'
Expand All @@ -31,6 +43,38 @@ task test: [
: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
require 'github_changelog_generator/task'
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
Expand All @@ -39,6 +83,9 @@ begin
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 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
rescue LoadError
end
Expand Down
Loading