Showing with 1,769 additions and 1,227 deletions.
  1. +17 −2 .github/CONTRIBUTING.md
  2. +12 −0 .github/PULL_REQUEST_TEMPLATE.md
  3. +1 −1 .msync.yml
  4. +7 −4 .sync.yml
  5. +23 −14 .travis.yml
  6. +51 −6 CHANGELOG.md
  7. +6 −5 Gemfile
  8. +56 −11 README.md
  9. +5 −0 data/Archlinux.yaml
  10. +2 −0 data/Debian.yaml
  11. +2 −0 data/RedHat.yaml
  12. +289 −0 data/defaults.yaml
  13. +14 −0 hiera.yaml
  14. +36 −36 manifests/alertmanager.pp
  15. +11 −11 manifests/alerts.pp
  16. +25 −23 manifests/beanstalkd_exporter.pp
  17. +28 −26 manifests/blackbox_exporter.pp
  18. +31 −37 manifests/config.pp
  19. +30 −28 manifests/consul_exporter.pp
  20. +22 −23 manifests/daemon.pp
  21. +27 −25 manifests/elasticsearch_exporter.pp
  22. +122 −0 manifests/graphite_exporter.pp
  23. +25 −24 manifests/haproxy_exporter.pp
  24. +53 −91 manifests/init.pp
  25. +45 −44 manifests/install.pp
  26. +27 −25 manifests/mesos_exporter.pp
  27. +26 −24 manifests/mongodb_exporter.pp
  28. +31 −30 manifests/mysqld_exporter.pp
  29. +25 −24 manifests/nginx_vts_exporter.pp
  30. +29 −27 manifests/node_exporter.pp
  31. +0 −274 manifests/params.pp
  32. +27 −26 manifests/process_exporter.pp
  33. +25 −23 manifests/pushgateway.pp
  34. +32 −31 manifests/rabbitmq_exporter.pp
  35. +27 −26 manifests/redis_exporter.pp
  36. +4 −4 manifests/run_service.pp
  37. +94 −0 manifests/server.pp
  38. +2 −2 manifests/service_reload.pp
  39. +28 −26 manifests/snmp_exporter.pp
  40. +27 −26 manifests/statsd_exporter.pp
  41. +129 −0 manifests/varnish_exporter.pp
  42. +8 −5 metadata.json
  43. +0 −19 spec/acceptance/nodesets/docker/centos-5.yml
  44. +0 −20 spec/acceptance/nodesets/docker/centos-6.yml
  45. +0 −19 spec/acceptance/nodesets/docker/centos-7.yml
  46. +0 −18 spec/acceptance/nodesets/docker/debian-7.yml
  47. +0 −20 spec/acceptance/nodesets/docker/debian-8.yml
  48. +0 −20 spec/acceptance/nodesets/docker/debian-9.yml
  49. +0 −19 spec/acceptance/nodesets/docker/ubuntu-12.04.yml
  50. +0 −21 spec/acceptance/nodesets/docker/ubuntu-14.04.yml
  51. +0 −19 spec/acceptance/nodesets/docker/ubuntu-16.04.yml
  52. +29 −0 spec/acceptance/prometheus_exporter_spec.rb
  53. +34 −0 spec/acceptance/prometheus_server_spec.rb
  54. +0 −16 spec/acceptance/prometheus_spec.rb
  55. +13 −2 spec/classes/alertmanager_spec.rb
  56. +12 −2 spec/classes/beanstalkd_exporter_spec.rb
  57. +4 −2 spec/classes/blackbox_exporter_spec.rb
  58. +6 −2 spec/classes/consul_exporter_spec.rb
  59. +4 −2 spec/classes/elasticsearch_exporter_spec.rb
  60. +30 −0 spec/classes/graphite_exporter_spec.rb
  61. +11 −5 spec/classes/haproxy_exporter_spec.rb
  62. +4 −2 spec/classes/mongodb_exporter_spec.rb
  63. +12 −2 spec/classes/nginx_vts_exporter_spec.rb
  64. +16 −3 spec/classes/node_exporter_spec.rb
  65. +9 −5 spec/classes/prometheus_spec.rb
  66. +4 −2 spec/classes/pushgateway_spec.rb
  67. +4 −2 spec/classes/rabbitmq_exporter_spec.rb
  68. +4 −2 spec/classes/redis_exporter_spec.rb
  69. +5 −3 spec/classes/snmp_exporter_spec.rb
  70. +34 −0 spec/classes/varnish_exporter_spec.rb
  71. +4 −3 spec/defines/alerts_spec.rb
  72. +10 −5 spec/defines/daemon_spec.rb
  73. +5 −0 spec/spec_helper.rb
  74. +26 −0 spec/spec_helper_methods.rb
  75. +1 −1 templates/prometheus.sles.erb
  76. +7 −7 templates/prometheus.yaml.erb
19 changes: 17 additions & 2 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,24 @@ you must set an environment variable such as:

export PUPPET_VERSION="~> 4.2.0"

Install the dependencies like so...
You can install all needed gems for spec tests into the modules directory by
running:

bundle install
```sh
bundle install --path .vendor/ --without development --without system_tests --without release
```

If you also want to run acceptance tests:

```sh
bundle install --path .vendor/ --without development --with system_tests --without release
```

Our all in one solution if you don't know if you need to install or update gems:

```sh
bundle install --path .vendor/ --without development --with system_tests --without release; bundle update; bundle clean
```

## Syntax and style

Expand Down
12 changes: 12 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,15 @@ Thank you for contributing to this project!
- Our vulnerabilities reporting process is at https://voxpupuli.org/security/
-->
#### Pull Request (PR) description
<!--
Replace this comment with a description of your pull request.
-->

#### This Pull Request (PR) fixes the following issues
<!--
Replace this comment with the list of issues or n/a.
Use format:
Fixes #123
Fixes #124
-->
2 changes: 1 addition & 1 deletion .msync.yml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
modulesync_config_version: '1.8.0'
modulesync_config_version: '1.9.2'
11 changes: 7 additions & 4 deletions .sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@
.travis.yml:
secure: "M9rOa2lFaOagSRKNWb6BtS90yj8+8jk0tjeNGxxk73RoSfldKbxczZYY/U+nxGbLAvsDDHqQhMXXhRXxHKngl+Lg+dD6O0qT51ArGBtjSiMnVY00dC/+0nF932oS2skPbgzMGszK+u4o2Efjd6h18q9dT0WTGka2aOv9eJ18pwyESB7vyWbEDgxQ6Bk4J02EeFGhp/is1MlcK5rXpEYUGSPwJJCgEkbWuJek4ZDyT+qG5TTEUJMovNu4Oxy6HVGCDrM65hjK79oT9BVKM5xkgJoxN1trdqpmIEu8KOZck/+Iokcz+mHJfx62dJ2fg6bcOhQFSbW2UdPAYW4f1YaViHuwWWXgT58hPtB1PdEKPI/6HnAKBSLA2Fr3fA26BKbT/0CcRbSLMTjmbd9csEb5VE0eoCoTtVItVEsRkqm0BNvQ8oLRmQgFht2hGwwoczwBAj9aF80MjuDUzG2WjM/WjNIWfIFmeNoWTy/u+/58Q9wj6vIX2EyTJDEOorlP+4RXK+xub3QXntfmqkIlyB5qE6QxMDTAZN8aqBjo/771Ky7pIKAthWLVdDHPKhPHD2bMzilSqoFzNFtCkIbYp8w/eJUCfXhPpFEpt/9QzPLtP4/3KrJ/KUMt3hWfEGWOhUXlbalF5cFCP5aWkDDnoKxWILGS94xkXV2qyEGEMY2tn5o="
docker_sets:
- set: docker/ubuntu-14.04
- set: docker/ubuntu-16.04
- set: docker/debian-8
- set: docker/centos-7
- set: ubuntu1404-64
- set: ubuntu1604-64
- set: debian8-64
- set: debian9-64
- set: centos7-64
spec/spec_helper.rb:
spec_overrides: "require 'spec_helper_methods'"
37 changes: 23 additions & 14 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,11 @@ sudo: false
dist: trusty
language: ruby
cache: bundler
# related to https://github.com/rubygems/rubygems/issues/2123
before_install:
- rm -f Gemfile.lock
- 'rm -f Gemfile.lock'
- 'gem update --system'
- 'gem install bundler'
script:
- 'bundle exec rake $CHECK'
matrix:
Expand All @@ -13,40 +16,46 @@ matrix:
- rvm: 2.1.9
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 4.0" CHECK=test PARALLEL_TEST_PROCESSORS=12
- rvm: 2.4.3
- rvm: 2.4.4
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=test_with_coveralls
- rvm: 2.5.0
env: PUPPET_VERSION="~> 5.0" CHECK=test
- rvm: 2.5.1
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=test_with_coveralls
- rvm: 2.4.3
- rvm: 2.4.4
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=rubocop
- rvm: 2.4.3
- rvm: 2.5.1
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=build DEPLOY_TO_FORGE=yes
- rvm: 2.4.3
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_setfile=ubuntu1404-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/ubuntu-14.04 CHECK=beaker
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_setfile=ubuntu1604-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.4.3
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/ubuntu-16.04 CHECK=beaker
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_setfile=debian8-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.4.3
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/debian-8 CHECK=beaker
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_setfile=debian9-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.4.3
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/centos-7 CHECK=beaker
env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_setfile=centos7-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
branches:
Expand Down
57 changes: 51 additions & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,52 @@ 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.

## [v6.0.0](https://github.com/voxpupuli/puppet-prometheus/tree/v6.0.0) (2018-06-01)

[Full Changelog](https://github.com/voxpupuli/puppet-prometheus/compare/v5.0.0...v6.0.0)

**Breaking changes:**

- Install prometheus server via own class [\#194](https://github.com/voxpupuli/puppet-prometheus/pull/194) ([bastelfreak](https://github.com/bastelfreak))

**Implemented enhancements:**

- allow to set prometheus server config filename [\#200](https://github.com/voxpupuli/puppet-prometheus/pull/200) ([bastelfreak](https://github.com/bastelfreak))
- Add Graphite exporter [\#191](https://github.com/voxpupuli/puppet-prometheus/pull/191) ([bastelfreak](https://github.com/bastelfreak))
- Convert to data-in-modules [\#178](https://github.com/voxpupuli/puppet-prometheus/pull/178) ([bastelfreak](https://github.com/bastelfreak))
- Add Debian 9 support [\#176](https://github.com/voxpupuli/puppet-prometheus/pull/176) ([bastelfreak](https://github.com/bastelfreak))
- Add Datatypes to all parameters [\#175](https://github.com/voxpupuli/puppet-prometheus/pull/175) ([bastelfreak](https://github.com/bastelfreak))
- simplify init handling with service\_provider fact [\#173](https://github.com/voxpupuli/puppet-prometheus/pull/173) ([bastelfreak](https://github.com/bastelfreak))
- Add Archlinux support [\#172](https://github.com/voxpupuli/puppet-prometheus/pull/172) ([bastelfreak](https://github.com/bastelfreak))
- add varnish\_exporter [\#171](https://github.com/voxpupuli/puppet-prometheus/pull/171) ([blupman](https://github.com/blupman))

**Fixed bugs:**

- Wrong installation method on archlinux [\#195](https://github.com/voxpupuli/puppet-prometheus/issues/195)
- Wrong architecture used on CentOS 64bit for exporters [\#192](https://github.com/voxpupuli/puppet-prometheus/issues/192)
- fix hiera key {prometheus\_,}install\_method on arch [\#196](https://github.com/voxpupuli/puppet-prometheus/pull/196) ([bastelfreak](https://github.com/bastelfreak))
- use correct architecture variable from init.pp in exporters [\#193](https://github.com/voxpupuli/puppet-prometheus/pull/193) ([bastelfreak](https://github.com/bastelfreak))
- change default inhibit\_rules to reflect previous params.pp config [\#181](https://github.com/voxpupuli/puppet-prometheus/pull/181) ([blupman](https://github.com/blupman))

**Closed issues:**

- node\_exporterd defaults to older version [\#188](https://github.com/voxpupuli/puppet-prometheus/issues/188)
- node exporter also installs prometheus server on monitored node [\#184](https://github.com/voxpupuli/puppet-prometheus/issues/184)
- alertmanager default inhibit\_rules error [\#182](https://github.com/voxpupuli/puppet-prometheus/issues/182)

**Merged pull requests:**

- Update node\_exporter default version 0.14.0 -\> 0.15.2 [\#204](https://github.com/voxpupuli/puppet-prometheus/pull/204) ([blupman](https://github.com/blupman))
- migrate more default values to hiera [\#201](https://github.com/voxpupuli/puppet-prometheus/pull/201) ([bastelfreak](https://github.com/bastelfreak))
- dont use single class reference in an array [\#199](https://github.com/voxpupuli/puppet-prometheus/pull/199) ([bastelfreak](https://github.com/bastelfreak))
- fix typos in the README.md [\#198](https://github.com/voxpupuli/puppet-prometheus/pull/198) ([bastelfreak](https://github.com/bastelfreak))
- migrate server related classes to private scope [\#197](https://github.com/voxpupuli/puppet-prometheus/pull/197) ([bastelfreak](https://github.com/bastelfreak))
- Rely on beaker-hostgenerator for docker nodesets [\#190](https://github.com/voxpupuli/puppet-prometheus/pull/190) ([ekohl](https://github.com/ekohl))
- switch from topscope to class scope for variables [\#189](https://github.com/voxpupuli/puppet-prometheus/pull/189) ([bastelfreak](https://github.com/bastelfreak))
- extend README.md [\#177](https://github.com/voxpupuli/puppet-prometheus/pull/177) ([bastelfreak](https://github.com/bastelfreak))
- drop legacy debian 7 [\#174](https://github.com/voxpupuli/puppet-prometheus/pull/174) ([bastelfreak](https://github.com/bastelfreak))
- allow camptocamp/systemd 2.X [\#170](https://github.com/voxpupuli/puppet-prometheus/pull/170) ([bastelfreak](https://github.com/bastelfreak))

## [v5.0.0](https://github.com/voxpupuli/puppet-prometheus/tree/v5.0.0) (2018-02-26)

[Full Changelog](https://github.com/voxpupuli/puppet-prometheus/compare/v4.1.1...v5.0.0)
Expand All @@ -15,7 +61,6 @@ These should not affect the functionality of the module.
**Merged pull requests:**

- Fix small typo in hiera example [\#164](https://github.com/voxpupuli/puppet-prometheus/pull/164) ([bearnard](https://github.com/bearnard))
- release 4.1.1 [\#163](https://github.com/voxpupuli/puppet-prometheus/pull/163) ([bastelfreak](https://github.com/bastelfreak))

## [v4.1.1](https://github.com/voxpupuli/puppet-prometheus/tree/v4.1.1) (2018-02-18)

Expand All @@ -26,6 +71,10 @@ These should not affect the functionality of the module.
- puppetlabs/stdlib dependency appears to be 4.20.0 and not 4.13.1 [\#161](https://github.com/voxpupuli/puppet-prometheus/issues/161)
- raise stdlib version dependency [\#162](https://github.com/voxpupuli/puppet-prometheus/pull/162) ([tuxmea](https://github.com/tuxmea))

**Merged pull requests:**

- release 4.1.1 [\#163](https://github.com/voxpupuli/puppet-prometheus/pull/163) ([bastelfreak](https://github.com/bastelfreak))

## [v4.1.0](https://github.com/voxpupuli/puppet-prometheus/tree/v4.1.0) (2018-02-14)

[Full Changelog](https://github.com/voxpupuli/puppet-prometheus/compare/v4.0.0...v4.1.0)
Expand All @@ -36,7 +85,7 @@ These should not affect the functionality of the module.
- Added redis\_exporter module [\#157](https://github.com/voxpupuli/puppet-prometheus/pull/157) ([yackushevas](https://github.com/yackushevas))
- Add rabbitmq exporter [\#153](https://github.com/voxpupuli/puppet-prometheus/pull/153) ([costela](https://github.com/costela))
- add envvars support to daemon [\#151](https://github.com/voxpupuli/puppet-prometheus/pull/151) ([costela](https://github.com/costela))
- adding remote\_write support [\#144](https://github.com/voxpupuli/puppet-prometheus/pull/144) ([kalinux](https://github.com/kalinux))
- adding remote\_write support [\#144](https://github.com/voxpupuli/puppet-prometheus/pull/144) ([gangsta](https://github.com/gangsta))

**Fixed bugs:**

Expand All @@ -55,7 +104,6 @@ These should not affect the functionality of the module.
- update blackbox\_exporter.pp inline documentation [\#155](https://github.com/voxpupuli/puppet-prometheus/pull/155) ([tobald](https://github.com/tobald))
- Ruby 1.8 compatibility \(Agent-side\) [\#146](https://github.com/voxpupuli/puppet-prometheus/pull/146) ([sathieu](https://github.com/sathieu))
- Fail silently when service is not installed [\#145](https://github.com/voxpupuli/puppet-prometheus/pull/145) ([vladgh](https://github.com/vladgh))
- release 4.0.0 [\#140](https://github.com/voxpupuli/puppet-prometheus/pull/140) ([bastelfreak](https://github.com/bastelfreak))
- Add support for snmp\_exporter [\#125](https://github.com/voxpupuli/puppet-prometheus/pull/125) ([sathieu](https://github.com/sathieu))
- new feature - consul\_exporter [\#36](https://github.com/voxpupuli/puppet-prometheus/pull/36) ([pjfbashton](https://github.com/pjfbashton))

Expand Down Expand Up @@ -118,9 +166,7 @@ These should not affect the functionality of the module.

**Merged pull requests:**

- release 3.1.0 [\#115](https://github.com/voxpupuli/puppet-prometheus/pull/115) ([bastelfreak](https://github.com/bastelfreak))
- replace all Variant\[Undef.. with Optional\[... [\#103](https://github.com/voxpupuli/puppet-prometheus/pull/103) ([TheMeier](https://github.com/TheMeier))
- release 3.0.0 [\#99](https://github.com/voxpupuli/puppet-prometheus/pull/99) ([bastelfreak](https://github.com/bastelfreak))
- Tests for prometheus::daemon [\#87](https://github.com/voxpupuli/puppet-prometheus/pull/87) ([sathieu](https://github.com/sathieu))

## [v3.0.0](https://github.com/voxpupuli/puppet-prometheus/tree/v3.0.0) (2017-10-31)
Expand Down Expand Up @@ -174,7 +220,6 @@ These should not affect the functionality of the module.
- replace validate\_\* with datatypes in alertmanager [\#76](https://github.com/voxpupuli/puppet-prometheus/pull/76) ([bastelfreak](https://github.com/bastelfreak))
- replace validate\_\* with datatypes in init [\#75](https://github.com/voxpupuli/puppet-prometheus/pull/75) ([bastelfreak](https://github.com/bastelfreak))
- use Optional instead of Variant\[Undef... [\#73](https://github.com/voxpupuli/puppet-prometheus/pull/73) ([TheMeier](https://github.com/TheMeier))
- release 2.0.0 [\#67](https://github.com/voxpupuli/puppet-prometheus/pull/67) ([bastelfreak](https://github.com/bastelfreak))

## [v2.0.0](https://github.com/voxpupuli/puppet-prometheus/tree/v2.0.0) (2017-10-12)

Expand Down
11 changes: 6 additions & 5 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ group :test do
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 'mocha', '~> 1.4.0', :require => false
gem 'coveralls', :require => false
gem 'simplecov-console', :require => false
gem 'rack', '~> 1.0', :require => false if RUBY_VERSION < '2.2.2'
Expand All @@ -40,7 +40,7 @@ group :development do
end

group :system_tests do
gem 'winrm', :require => false
gem 'winrm', :require => false
if beaker_version = ENV['BEAKER_VERSION']
gem 'beaker', *location_for(beaker_version)
else
Expand All @@ -51,9 +51,10 @@ group :system_tests do
else
gem 'beaker-rspec', :require => false
end
gem 'serverspec', :require => false
gem 'beaker-puppet_install_helper', :require => false
gem 'beaker-module_install_helper', :require => false
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
Expand Down
Loading