Showing with 938 additions and 672 deletions.
  1. +3 −3 .fixtures.yml
  2. +11 −7 .gitignore
  3. +2 −0 .rspec
  4. +68 −0 .rubocop.yml
  5. +5 −0 .sync.yml
  6. +34 −19 .travis.yml
  7. +1 −0 .yardopts
  8. +40 −24 CHANGELOG.md
  9. +32 −28 CONTRIBUTING.md
  10. +57 −16 Gemfile
  11. +40 −9 README.markdown → README.md
  12. +25 −35 Rakefile
  13. +64 −0 files/seraph-config_withSSO.xml
  14. +10 −7 manifests/config.pp
  15. +35 −15 manifests/init.pp
  16. +67 −63 manifests/install.pp
  17. +10 −8 manifests/service.pp
  18. +38 −0 manifests/sso.pp
  19. +11 −11 metadata.json
  20. +18 −20 spec/acceptance/1_default_parameters_spec.rb
  21. +13 −20 spec/acceptance/2_default_parameters_upgrade_spec.rb
  22. +18 −23 spec/acceptance/3_custom_parameters_spec.rb
  23. +9 −0 spec/acceptance/nodesets/centos-511-x64.yml
  24. +0 −12 spec/acceptance/nodesets/centos-64-x64-pe.yml
  25. +0 −10 spec/acceptance/nodesets/centos-64-x64.yml
  26. +0 −10 spec/acceptance/nodesets/centos-65-x64.yml
  27. +11 −0 spec/acceptance/nodesets/centos-66-x64-pe.yml
  28. +9 −0 spec/acceptance/nodesets/centos-66-x64.yml
  29. +0 −11 spec/acceptance/nodesets/centos-70-x64.yml
  30. +9 −0 spec/acceptance/nodesets/centos-72-x64.yml
  31. +0 −10 spec/acceptance/nodesets/debian-70rc1-x64.yml
  32. +0 −11 spec/acceptance/nodesets/debian-73-x64.yml
  33. +9 −0 spec/acceptance/nodesets/debian-78-x64.yml
  34. +9 −0 spec/acceptance/nodesets/debian-82-x64.yml
  35. +0 −10 spec/acceptance/nodesets/fedora-18-x64.yml
  36. +0 −9 spec/acceptance/nodesets/gce-centos7.yml
  37. +0 −10 spec/acceptance/nodesets/sles-11-x64.yml
  38. +0 −10 spec/acceptance/nodesets/sles-11sp1-x64.yml
  39. +9 −0 spec/acceptance/nodesets/ubuntu-server-1204-x64.yml
  40. +0 −10 spec/acceptance/nodesets/ubuntu-server-12042-x64.yml
  41. +2 −4 spec/acceptance/nodesets/ubuntu-server-1404-x64.yml
  42. +45 −35 spec/classes/confluence_config_spec.rb
  43. +9 −7 spec/classes/confluence_facts_spec.rb
  44. +0 −74 spec/classes/confluence_install_deploy_spec.rb
  45. +82 −0 spec/classes/confluence_install_spec.rb
  46. +0 −89 spec/classes/confluence_install_staging_spec.rb
  47. +7 −5 spec/classes/confluence_service_spec.rb
  48. +4 −2 spec/classes/confluence_spec.rb
  49. +57 −0 spec/classes/confluence_sso_spec.rb
  50. +15 −14 spec/classes/confluence_upgrade_spec.rb
  51. +2 −0 spec/classes/coverage_spec.rb
  52. +10 −6 spec/spec_helper.rb
  53. +12 −13 spec/spec_helper_acceptance.rb
  54. +13 −0 templates/confluence.service.erb
  55. +11 −0 templates/crowd.properties
  56. +1 −1 templates/server.xml.erb
  57. +1 −1 tests/init.pp
6 changes: 3 additions & 3 deletions .fixtures.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ fixtures:
symlinks:
confluence: "#{source_dir}"
repositories:
deploy: "http://github.com/mkrakowitzer/puppet-deploy"
staging: "http://github.com/nanliu/puppet-staging"
stdlib: "http://github.com/puppetlabs/puppetlabs-stdlib.git"
archive: "https://github.com/voxpupuli/puppet-archive.git"
staging: "https://github.com/voxpupuli/puppet-staging.git"
stdlib: "https://github.com/puppetlabs/puppetlabs-stdlib.git"
18 changes: 11 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
*kate-swp
pkg/
*.swp
*.settings
*.project
spec/fixtures/modules
Gemfile.lock
.vagrant
log
Gemfile.local
vendor/
.vendor/
spec/fixtures/
.vagrant/
.bundle/
coverage/
log/
.idea/
*.iml
.*.sw
2 changes: 2 additions & 0 deletions .rspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
--format documentation
--color
68 changes: 68 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
AllCops:
TargetRubyVersion: 1.9
Include:
- ./**/*.rb
Exclude:
- vendor/**/*
- .vendor/**/*
- pkg/**/*
- spec/fixtures/**/*

# Configuration parameters: AllowURI, URISchemes.
Metrics/LineLength:
Max: 328

# 'Complexity' is very relative
Metrics/PerceivedComplexity:
Enabled: false

# 'Complexity' is very relative
Metrics/CyclomaticComplexity:
Enabled: false

# 'Complexity' is very relative
Metrics/AbcSize:
Enabled: false

# Method length is not necessarily an indicator of code quality
Metrics/MethodLength:
Enabled: false

# Module length is not necessarily an indicator of code quality
Metrics/ModuleLength:
Enabled: false

# Class length is not necessarily an indicator of code quality
Metrics/ClassLength:
Enabled: false

# dealbreaker:
Style/TrailingCommaInArguments:
Enabled: false
Style/TrailingCommaInLiteral:
Enabled: false
Style/ClosingParenthesisIndentation:
Enabled: false

Lint/AmbiguousRegexpLiteral:
Enabled: true
Style/RegexpLiteral:
Enabled: true
Style/WordArray:
Enabled: true

# this catches the cases of using `module` for parser functions, types, or
# providers
Style/ClassAndModuleChildren:
Enabled: false

Style/Documentation:
Description: 'Document classes and non-namespace modules.'
Enabled: false

# More comfortable block layouts
Style/BlockDelimiters:
Enabled: False

Style/MultilineBlockLayout:
Enabled: False
5 changes: 5 additions & 0 deletions .sync.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
.travis.yml:
secure: "bca3Ebj/IE9a1X/BpLPVpMYw/zx9VkFRp1WjQZ437jYnpjyl2M/bC1cyW/A7TnzPX7WOpemT5+CVlVF/WE6f0Hrn6EqSzNwrVF8HOkGD8LqVLopXkaEn1zjcrhF4uMaleDpnNxQUx9nMAnqksiw2xphF1yxABqMt3l42SV7ajVw="
spec/spec_helper.rb:
unmanaged: true
53 changes: 34 additions & 19 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,39 @@
---
language: ruby
bundler_args: --without development system_tests
before_install: rm Gemfile.lock || true
sudo: false
rvm:
- 1.9.3
- 2.0.0
- 2.1.0
env:
- PUPPET_GEM_VERSION="~> 3.3.0"
- PUPPET_GEM_VERSION="~> 3.4.0"
- PUPPET_GEM_VERSION="~> 3.5.0" STRICT_VARIABLES=yes
- PUPPET_GEM_VERSION="~> 3.6.0" STRICT_VARIABLES=yes
- PUPPET_GEM_VERSION="~> 3.7.0" STRICT_VARIABLES=yes
- PUPPET_GEM_VERSION="~> 3.7.0" STRICT_VARIABLES=yes FUTURE_PARSER=yes
- PUPPET_GEM_VERSION="~> 3.7.0" FUTURE_PARSER=yes
language: ruby
cache: bundler
bundler_args: --without system_tests development
before_install:
- bundle -v
- rm Gemfile.lock || true
- gem update --system
- gem update bundler
- gem --version
- bundle -v
script:
- 'bundle exec rake $CHECK'
matrix:
fast_finish: true
include:
- rvm: jruby-19mode
env: PUPPET_VERSION="~> 3.0" STRICT_VARIABLES="yes" CHECK=test
- rvm: jruby-19mode
env: PUPPET_VERSION="~> 4.0" STRICT_VARIABLES="yes" CHECK=test
- rvm: 2.1
env: PUPPET_VERSION="~> 3.0" STRICT_VARIABLES="yes" CHECK=test
- rvm: 2.1
env: PUPPET_VERSION="~> 4.0" STRICT_VARIABLES="yes" CHECK=test
- rvm: 2.2
env: PUPPET_VERSION="~> 4.0" STRICT_VARIABLES="yes" CHECK=test
- rvm: 2.3.0
env: PUPPET_VERSION="~> 4.0" STRICT_VARIABLES="yes" CHECK=rubocop
- rvm: 2.3.0
env: PUPPET_VERSION="~> 4.0" STRICT_VARIABLES="yes" CHECK=test
allow_failures:
- rvm: 2.3.0
env: PUPPET_VERSION="~> 4.0" STRICT_VARIABLES="yes" CHECK=test
notifications:
email:
- merritt@krakowitzer.com
script: bundle exec rake test
email: false
deploy:
provider: puppetforge
user: puppet
Expand All @@ -29,4 +44,4 @@ deploy:
# all_branches is required to use tags
all_branches: true
# Only publish if our main Ruby target builds
rvm: 1.9.3
rvm: 2.2
1 change: 1 addition & 0 deletions .yardopts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
--markup markdown
64 changes: 40 additions & 24 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,45 @@
##2014-03-22 - Release 2.1.1
## 2016-05-08 Release 2.2.0

- Rewrite README file
- Bump confluence version to 5.7.1
- Update metadata, CHANGELOG to point to new namespace.
- Add .pmtignore file
* Deprecate the downloadURL parameter
* Add a systemd unit file for the RHEL 7 family
* Use a service_file_template variable to reference init scripts
* Add a context_path parameter to manage situations where Confluence is served from a sub-path to the base URL
* Add manage_user parameter
* Fix minimum required stdlib version
* modulesync with voxpupuli defaults

##2014-03-22 - Release 2.1.0

## 2014-03-22 Release 2.1.1

(this is the first release made under the voxpupuli namespace. Older version were from mkrakowitzer)
* Rewrite README file
* Bump confluence version to 5.7.1
* Update metadata, CHANGELOG to point to new namespace.
* Add .pmtignore file


## 2014-03-22 Release 2.1.0

Note: This is the final release of this module before it is deprecated with a 999.999.999 version. This module will be moving the the puppet-community namespace on github and the puppet namespace on puppetforge soon.

- Make confluence users shell configurable.
- update README, metadata, .travis.yml
- Add CONTRIBUTING.md and test coverage spec.

##2014-01-23 - Release 2.0.1
- Resolve issue #22 - confluence_version fact detects wrong version
- Resolve issue #20 - param manage_server_xml acceptCount option is duplicated

##2014-01-21 - Release 2.0.0
- Replace mkrakowitzer-deploy with nanlui-staging as default for dropping files.
- Add tests
- Resolve issue #7 Make tomcat port / tomcat parameters configurable.
- Add parameter manage_server_xml, tomcat_max_threads, tomcat_accept_count, tomcat_extras.
- Add tests
- rename parameter proxy to tomcat_proxy, port to tomcat_port.
- Add support for STRICT_VARIABLES=yes FUTURE_PARSER=yes
- Resole issue #6 Handle confluence upgrades smoothly
- This will stop confluence if running version is less than manifest version. Attempt to upgrade and then start confluence.
* Make confluence users shell configurable.
* update README, metadata, .travis.yml
* Add CONTRIBUTING.md and test coverage spec.


## 2014-01-23 Release 2.0.1
* Resolve issue #22 - confluence_version fact detects wrong version
* Resolve issue #20 - param manage_server_xml acceptCount option is duplicated


## 2014-01-21 Release 2.0.0

* Replace mkrakowitzer-deploy with nanlui-staging as default for dropping files.
* Add tests
* Resolve issue #7 Make tomcat port / tomcat parameters configurable.
* Add parameter manage_server_xml, tomcat_max_threads, tomcat_accept_count, tomcat_extras.
* Add tests
* rename parameter proxy to tomcat_proxy, port to tomcat_port.
* Add support for STRICT_VARIABLES=yes FUTURE_PARSER=yes
* Resole issue #6 Handle confluence upgrades smoothly
* This will stop confluence if running version is less than manifest version. Attempt to upgrade and then start confluence.
60 changes: 32 additions & 28 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,39 @@ will likely make it into a release a little quicker.

## Contributing

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. [Contributor Code of Conduct](https://voxpupuli.org/coc/).

1. Fork the repo.

2. Run the tests. We only take pull requests with passing tests, and
it's great to know that you have a clean slate.
1. Create a separate branch for your change.

1. Run the tests. We only take pull requests with passing tests, and
documentation.

3. Add a test for your change. Only refactoring and documentation
1. Add a test for your change. Only refactoring and documentation
changes require no new tests. If you are adding functionality
or fixing a bug, please add a test.

4. Make the test pass.
1. Squash your commits down into logical components. Make sure to rebase
against the current master.

5. Push to your fork and submit a pull request.
1. Push the branch to your fork and submit a pull request.

Please be prepared to repeat some of these steps as our contributors review
your code.

## Dependencies

The testing and development tools have a bunch of dependencies,
all managed by [Bundler](http://bundler.io/) according to the
all managed by [bundler](http://bundler.io/) according to the
[Puppet support matrix](http://docs.puppetlabs.com/guides/platforms.html#ruby-versions).

By default the tests use a baseline version of Puppet.

If you have Ruby 2.x or want a specific version of Puppet,
you must set an environment variable such as:

export PUPPET_VERSION="~> 3.2.0"
export PUPPET_VERSION="~> 4.2.0"

Install the dependencies like so...

Expand All @@ -43,50 +50,47 @@ The test suite will run [Puppet Lint](http://puppet-lint.com/) and
check various syntax and style things. You can run these locally with:

bundle exec rake lint
bundle exec rake syntax
bundle exec rake validate

## Running the unit tests

The unit test suite covers most of the code, as mentioned above please
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. Running the test suite is done
with:
about how best to test your new feature.

bundle exec rake spec
To run your all the unit tests

Note also you can run the syntax, style and unit tests in one go with:
bundle exec rake spec SPEC_OPTS='--format documentation'

bundle exec rake test
To run a specific spec test set the `SPEC` variable:

### Automatically run the tests
bundle exec rake spec SPEC=spec/foo_spec.rb

During development of your puppet module you might want to run your unit
tests a couple of times. You can use the following command to automate
running the unit tests on every change made in the manifests folder.
To run the linter, the syntax checker and the unit tests:

bundle exec rake test

bundle exec guard

## Integration tests

The unit tests just check the code runs, not that it does exactly what
we want on a real machine. For that we're using
[Beaker](https://github.com/puppetlabs/beaker).
[beaker](https://github.com/puppetlabs/beaker).

Beaker fires up a new virtual machine (using Vagrant) and runs a series of
simple tests against it after applying the module. You can run our
Beaker tests with:
This fires up a new virtual machine (using vagrant) and runs a series of
simple tests against it after applying the module. You can run this
with:

bundle exec rake acceptance

This will use the host described in `spec/acceptance/nodeset/default.yml`
by default. To run against another host, set the `RS_SET` environment
variable to the name of a host described by a `.yml` file in the
`nodeset` directory. For example, to run against CentOS 6.4:
This will run the tests on an Ubuntu 12.04 virtual machine. You can also
run the integration tests against Centos 6.5 with.

RS_SET=centos-64-x64 bundle exec rake acceptance
BEAKER_set=centos-64-x64 bundle exec rake acceptances

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`.
for the created virtual machines will be in `.vagrant/beaker_vagrant_fies`.

Loading