Showing with 3,490 additions and 1,128 deletions.
  1. +1 −2 .fixtures.yml
  2. +5 −0 .gitattributes
  3. +2 −1 .gitignore
  4. +2 −0 .rspec
  5. +0 −11 .sync.yml
  6. +9 −7 .travis.yml
  7. +47 −1 CHANGELOG.md
  8. +3 −3 CONTRIBUTING.md
  9. +24 −33 Gemfile
  10. +198 −11 LICENSE
  11. +18 −0 NOTICE
  12. +278 −126 README.md
  13. +33 −1 Rakefile
  14. +20 −20 examples/instance_with_context.pp
  15. +32 −0 manifests/config/context.pp
  16. +74 −0 manifests/config/context/resource.pp
  17. +64 −0 manifests/config/context/resourcelink.pp
  18. +22 −0 manifests/config/properties.pp
  19. +11 −0 manifests/config/properties/property.pp
  20. +6 −3 manifests/config/server.pp
  21. +18 −20 manifests/config/server/connector.pp
  22. +106 −102 manifests/config/server/context.pp
  23. +7 −3 manifests/config/server/engine.pp
  24. +61 −0 manifests/config/server/globalnamingresource.pp
  25. +23 −4 manifests/config/server/host.pp
  26. +14 −10 manifests/config/server/realm.pp
  27. +7 −3 manifests/config/server/service.pp
  28. +8 −1 manifests/config/server/tomcat_users.pp
  29. +7 −3 manifests/config/server/valve.pp
  30. +3 −24 manifests/init.pp
  31. +44 −0 manifests/install.pp
  32. +6 −13 manifests/{instance → install}/package.pp
  33. +29 −11 manifests/{instance → install}/source.pp
  34. +126 −50 manifests/instance.pp
  35. +25 −0 manifests/instance/copy_from_home.pp
  36. +47 −0 manifests/instance/dependencies.pp
  37. +61 −44 manifests/service.pp
  38. +26 −9 manifests/setenv/entry.pp
  39. +6 −3 manifests/war.pp
  40. +6 −5 metadata.json
  41. +5 −0 spec/acceptance/{acceptance_1_spec.rb → acceptance_1a_spec.rb}
  42. +216 −0 spec/acceptance/acceptance_1b_spec.rb
  43. +5 −0 spec/acceptance/{acceptance_2_spec.rb → acceptance_2a_spec.rb}
  44. +295 −0 spec/acceptance/acceptance_2b_spec.rb
  45. +8 −1 spec/acceptance/{acceptance_3_spec.rb → acceptance_3a_spec.rb}
  46. +298 −0 spec/acceptance/acceptance_3b_spec.rb
  47. +27 −24 spec/acceptance/{acceptance_4_spec.rb → acceptance_4a_spec.rb}
  48. +99 −0 spec/acceptance/acceptance_4b_spec.rb
  49. +110 −0 spec/acceptance/readme_spec.rb
  50. +0 −15 spec/classes/tomcat_spec.rb
  51. +67 −0 spec/defines/config/context/resource_spec.rb
  52. +59 −0 spec/defines/config/context/resourcelink_spec.rb
  53. +47 −0 spec/defines/config/context_spec.rb
  54. +197 −197 spec/defines/config/server/context_spec.rb
  55. +40 −0 spec/defines/config/server/host_spec.rb
  56. +231 −231 spec/defines/config/server/listener_spec.rb
  57. +0 −23 spec/defines/instance/package_spec.rb
  58. +0 −30 spec/defines/instance/source_spec.rb
  59. +14 −51 spec/defines/instance_spec.rb
  60. +19 −28 spec/defines/service_spec.rb
  61. +2 −2 spec/defines/setenv/entry_spec.rb
  62. +7 −0 spec/spec_helper.rb
  63. +2 −2 spec/spec_helper_acceptance.rb
  64. +263 −0 templates/jsvc-init.erb
3 changes: 1 addition & 2 deletions .fixtures.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
fixtures:
repositories:
stdlib: "https://github.com/puppetlabs/puppetlabs-stdlib.git"
stdlib: "https://github.com/puppetlabs/puppetlabs-stdlib.git"
concat:
repo: "https://github.com/puppetlabs/puppetlabs-concat.git"
branch: "1.2.x"
staging: "https://github.com/nanliu/puppet-staging.git"
symlinks:
tomcat: "#{source_dir}"
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#This file is generated by ModuleSync, do not edit.
*.rb eol=lf
*.erb eol=lf
*.pp eol=lf
*.sh eol=lf
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
#This file is generated by ModuleSync, do not edit.
pkg/
Gemfile.lock
vendor/
spec/fixtures/
.vagrant/
.bundle/
coverage/
log/
.idea/
*.iml
log/
2 changes: 2 additions & 0 deletions .rspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
--color
--format documentation
11 changes: 0 additions & 11 deletions .sync.yml

This file was deleted.

16 changes: 9 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
#This file is generated by ModuleSync, do not edit.
---
sudo: false
language: ruby
cache: bundler
bundler_args: --without system_tests
script: "bundle exec rake validate && bundle exec rake lint && bundle exec rake spec SPEC_OPTS='--format documentation'"
script: "bundle exec rake validate lint spec"
matrix:
fast_finish: true
include:
- rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 3.0"
- rvm: 2.1.5
env: PUPPET_GEM_VERSION="~> 3.0"
- rvm: 2.1.5
env: PUPPET_GEM_VERSION="~> 3.0" FUTURE_PARSER="yes"
- rvm: 2.1.6
env: PUPPET_GEM_VERSION="~> 4.0" STRICT_VARIABLES="yes"
- rvm: 2.1.5
env: PUPPET_GEM_VERSION="~> 3.0" FUTURE_PARSER="yes"
- rvm: 2.1.5
env: PUPPET_GEM_VERSION="~> 3.0"
- rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 3.0"
notifications:
email: false
48 changes: 47 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,51 @@
## Supported Release 1.5.0
### Summary
General rewrite of the installation and instance management code, and better
service management. Plus a handful of new configuration defined types and actual
resource dependency ordering.

The primary improvement is that you may now use `tomcat::install` for installing
various versions of tomcat into various directories (`CATALINA_HOME`), then use
`tomcat::instance` to create instances from those installs (`CATALINA_BASE`).
Previously `tomcat::instance` treated both `CATALINA_HOME` and `CATALINA_BASE` as identical and thus only allowed a single tomcat instance per tomcat installation.

Additionally, `tomcat::service` allows `use_init => true, use_jsvc => true` to
create an init script for service management of source-based installs. And
`tomcat::instance` can declare a `tomcat::service` resource for your instance to
make life easier.

#### Features
- Added `tomcat::config::properties::property` define
- Added `tomcat::config::server::globalnamingresource` define
- Added `tomcat::config::context` define
- Added `tomcat::config::context::resource` define
- Added `tomcat::config::context::resourcelink` define
- Added `tomcat::install` define
- Added `tomcat::config::server::host::aliases` parameter
- Added `tomcat::service::user` parameter
- Added `tomcat::setenv::entry` parameters:
- `catalina_home`
- `addto`
- Added `tomcat::instance` parameters for multi-instance management:
- `user`
- `group`
- `manage_user`
- `manage_group`
- `manage_service`
- `java_home`
- `use_jsvc`
- `use_init`
- Added Debian 8 compatibility

#### Bugfixes
- Fixed conflating `CATALINA_BASE` with `CATALINA_HOME`
- Made `tomcat::config::server::connector` protocol default to `$name`
- Lots of additional validation
- Added resource dependency declaration (so no more `<-` `->` needed)
- Undeprecated `tomcat::setenv::entry::order` parameter

## Supported Release 1.4.1
###Summary
### Summary

Small release for bug with multiple Realms in the same parent path.

Expand Down
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ If you already have those gems installed, make sure they are up-to-date:
With all dependencies in place and up-to-date we can now run the tests:

```shell
% rake spec
% bundle exec rake spec
```

This will execute all the [rspec tests](http://rspec-puppet.com/) tests
Expand All @@ -178,8 +178,8 @@ installed on your system.
You can run them by issuing the following command

```shell
% rake spec_clean
% rspec spec/acceptance
% bundle exec rake spec_clean
% bundle exec rspec spec/acceptance
```

This will now download a pre-fabricated image configured in the [default node-set](./spec/acceptance/nodesets/default.yml),
Expand Down
57 changes: 24 additions & 33 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,48 +1,39 @@
#This file is generated by ModuleSync, do not edit.

source ENV['GEM_SOURCE'] || "https://rubygems.org"

def location_for(place, fake_version = nil)
if place =~ /^(git:[^#]*)#(.*)/
[fake_version, { :git => $1, :branch => $2, :require => false }].compact
def location_for(place, version = nil)
if place =~ /^(git[:@][^#]*)#(.*)/
[version, { :git => $1, :branch => $2, :require => false}].compact
elsif place =~ /^file:\/\/(.*)/
['>= 0', { :path => File.expand_path($1), :require => false }]
['>= 0', { :path => File.expand_path($1), :require => false}]
else
[place, { :require => false }]
[place, version, { :require => false}].compact
end
end

group :development, :unit_tests do
gem 'rspec-core', '3.1.7', :require => false
gem 'puppetlabs_spec_helper', :require => false
gem 'simplecov', :require => false
gem 'puppet_facts', :require => false
gem 'json', :require => false
gem 'json', :require => false
gem 'metadata-json-lint', :require => false
gem 'puppet_facts', :require => false
gem 'puppet-blacksmith', :require => false
gem 'puppetlabs_spec_helper', :require => false
gem 'rspec-puppet', '>= 2.3.2', :require => false
gem 'simplecov', :require => false
end

group :system_tests do
if beaker_version = ENV['BEAKER_VERSION']
gem 'beaker', *location_for(beaker_version)
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-puppet_install_helper', :require => false
gem 'beaker-rspec', *location_for(ENV['BEAKER_RSPEC_VERSION'] || '>= 3.4')
gem 'beaker', *location_for(ENV['BEAKER_VERSION'])
gem 'serverspec', :require => false
gem 'beaker-puppet_install_helper', :require => false
gem 'master_manipulator', :require => false
gem 'beaker-hostgenerator', *location_for(ENV['BEAKER_HOSTGENERATOR_VERSION'])
end

gem 'facter', *location_for(ENV['FACTER_GEM_VERSION'])
gem 'puppet', *location_for(ENV['PUPPET_GEM_VERSION'])


if facterversion = ENV['FACTER_GEM_VERSION']
gem 'facter', facterversion, :require => false
else
gem 'facter', :require => false
end

if puppetversion = ENV['PUPPET_GEM_VERSION']
gem 'puppet', puppetversion, :require => false
else
gem 'puppet', :require => false
if File.exists? "#{__FILE__}.local"
eval(File.read("#{__FILE__}.local"), binding)
end

# vim:ft=ruby
Loading