Showing with 12,775 additions and 4,350 deletions.
  1. +1 −1 .fixtures.yml
  2. +7 −2 .travis.yml
  3. +28 −3 CHANGELOG.md
  4. +8 −3 DESIGN.md
  5. +33 −27 Gemfile
  6. +336 −65 README.md
  7. +619 −673 REFERENCE.md
  8. +3 −0 Vagrantfile
  9. +1 −0 bolt_plugin.json
  10. +1 −0 data/os/windows.yaml
  11. +2 −0 lib/facter/sensu_facts.rb
  12. +100 −0 lib/puppet/provider/sensu_ad_auth/sensu_api.rb
  13. +7 −62 lib/puppet/provider/sensu_ad_auth/sensuctl.rb
  14. +228 −0 lib/puppet/provider/sensu_api.rb
  15. +46 −46 lib/puppet/provider/{sensu_silenced/sensuctl.rb → sensu_asset/sensu_api.rb}
  16. +3 −1 lib/puppet/provider/sensu_asset/sensuctl.rb
  17. +145 −0 lib/puppet/provider/sensu_bonsai_asset/sensu_api.rb
  18. +4 −29 lib/puppet/provider/sensu_bonsai_asset/sensuctl.rb
  19. +139 −0 lib/puppet/provider/sensu_check/sensu_api.rb
  20. +2 −31 lib/puppet/provider/sensu_check/sensuctl.rb
  21. +130 −0 lib/puppet/provider/sensu_cluster_federation/sensu_api.rb
  22. +133 −0 lib/puppet/provider/sensu_cluster_federation/sensuctl.rb
  23. +96 −0 lib/puppet/provider/sensu_cluster_federation_member/sensu_api.rb
  24. +88 −0 lib/puppet/provider/sensu_cluster_federation_member/sensuctl.rb
  25. +72 −0 lib/puppet/provider/sensu_cluster_member/sensu_api.rb
  26. +6 −4 lib/puppet/provider/sensu_cluster_member/sensuctl.rb
  27. +105 −0 lib/puppet/provider/sensu_cluster_role/sensu_api.rb
  28. +2 −0 lib/puppet/provider/sensu_cluster_role/sensuctl.rb
  29. +96 −0 lib/puppet/provider/sensu_cluster_role_binding/sensu_api.rb
  30. +2 −0 lib/puppet/provider/sensu_cluster_role_binding/sensuctl.rb
  31. +0 −78 lib/puppet/provider/sensu_config/sensuctl.rb
  32. +0 −88 lib/puppet/provider/sensu_configure/sensuctl.rb
  33. +148 −0 lib/puppet/provider/sensu_entity/sensu_api.rb
  34. +5 −9 lib/puppet/provider/sensu_entity/sensuctl.rb
  35. +134 −0 lib/puppet/provider/sensu_etcd_replicator/sensu_api.rb
  36. +3 −4 lib/puppet/provider/sensu_etcd_replicator/sensuctl.rb
  37. +0 −72 lib/puppet/provider/sensu_event/sensuctl.rb
  38. +138 −0 lib/puppet/provider/sensu_filter/sensu_api.rb
  39. +2 −0 lib/puppet/provider/sensu_filter/sensuctl.rb
  40. +137 −0 lib/puppet/provider/sensu_handler/sensu_api.rb
  41. +2 −27 lib/puppet/provider/sensu_handler/sensuctl.rb
  42. +137 −0 lib/puppet/provider/sensu_hook/sensu_api.rb
  43. +2 −0 lib/puppet/provider/sensu_hook/sensuctl.rb
  44. +100 −0 lib/puppet/provider/sensu_ldap_auth/sensu_api.rb
  45. +7 −60 lib/puppet/provider/sensu_ldap_auth/sensuctl.rb
  46. +137 −0 lib/puppet/provider/sensu_mutator/sensu_api.rb
  47. +2 −0 lib/puppet/provider/sensu_mutator/sensuctl.rb
  48. +92 −0 lib/puppet/provider/sensu_namespace/sensu_api.rb
  49. +2 −0 lib/puppet/provider/sensu_namespace/sensuctl.rb
  50. +125 −0 lib/puppet/provider/sensu_oidc_auth/sensu_api.rb
  51. +2 −0 lib/puppet/provider/sensu_oidc_auth/sensuctl.rb
  52. +129 −0 lib/puppet/provider/sensu_role/sensu_api.rb
  53. +2 −0 lib/puppet/provider/sensu_role/sensuctl.rb
  54. +120 −0 lib/puppet/provider/sensu_role_binding/sensu_api.rb
  55. +2 −0 lib/puppet/provider/sensu_role_binding/sensuctl.rb
  56. +34 −0 lib/puppet/provider/sensu_tessen/sensu_api.rb
  57. +101 −0 lib/puppet/provider/sensu_user/sensu_api.rb
  58. +10 −8 lib/puppet/provider/sensu_user/sensuctl.rb
  59. +47 −7 lib/puppet/provider/sensuctl.rb
  60. +144 −0 lib/puppet/provider/sensuctl_configure/sensuctl.rb
  61. +107 −169 lib/puppet/type/sensu_ad_auth.rb
  62. +51 −0 lib/puppet/type/sensu_api_config.rb
  63. +3 −0 lib/puppet/type/sensu_api_validator.rb
  64. +5 −1 lib/puppet/type/sensu_asset.rb
  65. +3 −1 lib/puppet/type/sensu_bonsai_asset.rb
  66. +36 −11 lib/puppet/type/sensu_check.rb
  67. +46 −0 lib/puppet/type/sensu_cluster_federation.rb
  68. +70 −0 lib/puppet/type/sensu_cluster_federation_member.rb
  69. +1 −1 lib/puppet/type/sensu_cluster_member.rb
  70. +1 −1 lib/puppet/type/sensu_cluster_role.rb
  71. +1 −1 lib/puppet/type/sensu_cluster_role_binding.rb
  72. +0 −60 lib/puppet/type/sensu_config.rb
  73. +28 −5 lib/puppet/type/sensu_entity.rb
  74. +1 −1 lib/puppet/type/sensu_etcd_replicator.rb
  75. +0 −109 lib/puppet/type/sensu_event.rb
  76. +1 −1 lib/puppet/type/sensu_filter.rb
  77. +28 −14 lib/puppet/type/sensu_handler.rb
  78. +1 −1 lib/puppet/type/sensu_hook.rb
  79. +101 −159 lib/puppet/type/sensu_ldap_auth.rb
  80. +1 −1 lib/puppet/type/sensu_mutator.rb
  81. +1 −1 lib/puppet/type/sensu_namespace.rb
  82. +1 −1 lib/puppet/type/sensu_oidc_auth.rb
  83. +1 −1 lib/puppet/type/sensu_postgres_config.rb
  84. +1 −1 lib/puppet/type/sensu_role.rb
  85. +1 −1 lib/puppet/type/sensu_role_binding.rb
  86. +0 −145 lib/puppet/type/sensu_silenced.rb
  87. +38 −0 lib/puppet/type/sensu_tessen.rb
  88. +1 −1 lib/puppet/type/sensu_user.rb
  89. +6 −0 lib/puppet/type/sensuctl_config.rb
  90. +17 −4 lib/puppet/type/{sensu_configure.rb → sensuctl_configure.rb}
  91. +1 −1 lib/puppet_x/sensu/type.rb
  92. +56 −26 manifests/agent.pp
  93. +23 −0 manifests/api.pp
  94. +47 −150 manifests/backend.pp
  95. +12 −13 manifests/backend/datastore/postgresql.pp
  96. +1 −9 manifests/backend/default_resources.pp
  97. +0 −116 manifests/backend/resources.pp
  98. +0 −24 manifests/backend/tessen.pp
  99. +108 −0 manifests/cli.pp
  100. +58 −0 manifests/common.pp
  101. +38 −10 manifests/init.pp
  102. +5 −4 manifests/plugins.pp
  103. +0 −1 manifests/repo.pp
  104. +0 −1 manifests/repo/community.pp
  105. +182 −0 manifests/resources.pp
  106. +11 −11 manifests/ssl.pp
  107. +2 −2 metadata.json
  108. +21 −16 spec/acceptance/00_backend_spec.rb
  109. +6 −5 spec/acceptance/01_agent_spec.rb
  110. +152 −1 spec/acceptance/02_backend_cluster_spec.rb
  111. +4 −7 spec/acceptance/03_no_ssl_spec.rb
  112. +6 −8 spec/acceptance/04_plugins_spec.rb
  113. +1 −1 spec/acceptance/05_enterprise_spec.rb
  114. +2 −2 spec/acceptance/06_postgresql_spec.rb
  115. +131 −0 spec/acceptance/07_cli_spec.rb
  116. +2 −2 spec/acceptance/99_facts_spec.rb
  117. +77 −0 spec/acceptance/examples_spec.rb
  118. +101 −35 spec/acceptance/sensu_ad_auth_spec.rb
  119. +199 −0 spec/acceptance/sensu_api_spec.rb
  120. +121 −3 spec/acceptance/sensu_asset_spec.rb
  121. +51 −20 spec/acceptance/sensu_bolt_tasks_spec.rb
  122. +80 −6 spec/acceptance/sensu_bonsai_asset.rb
  123. +88 −11 spec/acceptance/sensu_check_spec.rb
  124. +114 −0 spec/acceptance/sensu_cluster_federation_member_spec.rb
  125. +153 −0 spec/acceptance/sensu_cluster_federation_spec.rb
  126. +62 −3 spec/acceptance/sensu_cluster_role_binding_spec.rb
  127. +39 −5 spec/acceptance/sensu_cluster_role_spec.rb
  128. +0 −53 spec/acceptance/sensu_config_spec.rb
  129. +38 −5 spec/acceptance/sensu_entity_spec.rb
  130. +9 −4 spec/acceptance/sensu_etcd_replicator_spec.rb
  131. +0 −103 spec/acceptance/sensu_event_spec.rb
  132. +43 −3 spec/acceptance/sensu_filter_spec.rb
  133. +75 −7 spec/acceptance/sensu_handler_spec.rb
  134. +42 −3 spec/acceptance/sensu_hook_spec.rb
  135. +98 −38 spec/acceptance/sensu_ldap_auth_spec.rb
  136. +41 −3 spec/acceptance/sensu_mutator_spec.rb
  137. +20 −2 spec/acceptance/sensu_namespace_spec.rb
  138. +63 −3 spec/acceptance/sensu_oidc_auth_spec.rb
  139. +10 −10 spec/acceptance/sensu_plugin_spec.rb
  140. +59 −3 spec/acceptance/sensu_role_binding_spec.rb
  141. +34 −3 spec/acceptance/sensu_role_spec.rb
  142. +0 −102 spec/acceptance/sensu_silenced_spec.rb
  143. +53 −5 spec/acceptance/sensu_user_spec.rb
  144. +51 −11 spec/acceptance/windows_spec.rb
  145. +68 −0 spec/classes/agent_spec.rb
  146. +41 −0 spec/classes/api_spec.rb
  147. +3 −3 spec/classes/backend_datastore_postgresql_spec.rb
  148. +0 −10 spec/classes/backend_default_resources_spec.rb
  149. +24 −52 spec/classes/backend_spec.rb
  150. +0 −50 spec/classes/backend_tessen_spec.rb
  151. +139 −0 spec/classes/cli_spec.rb
  152. +97 −0 spec/classes/common_spec.rb
  153. +3 −25 spec/classes/init_spec.rb
  154. +1 −0 spec/classes/plugins_spec.rb
  155. +59 −71 spec/classes/{backend_resources_spec.rb → resources_spec.rb}
  156. +353 −0 spec/fixtures/tasks/resolve_reference/entities1.json
  157. +80 −0 spec/fixtures/unit/provider/sensu_ad_auth/sensu_api/list.json
  158. +85 −0 spec/fixtures/unit/provider/sensu_asset/sensu_api/asset_list.json
  159. +261 −0 spec/fixtures/unit/provider/sensu_bonsai_asset/sensu_api/asset_list.json
  160. +405 −0 spec/fixtures/unit/provider/sensu_bonsai_asset/sensu_api/bonsai_asset.json
  161. +30 −0 spec/fixtures/unit/provider/sensu_check/sensu_api/check_list.json
  162. +15 −0 spec/fixtures/unit/provider/sensu_cluster_federation/sensu_api/get.json
  163. +6 −0 spec/fixtures/unit/provider/sensu_cluster_federation/sensuctl/dump.out
  164. +15 −0 spec/fixtures/unit/provider/sensu_cluster_federation_member/sensu_api/get.json
  165. +13 −0 spec/fixtures/unit/provider/sensu_cluster_federation_member/sensu_api/get_cluster.json
  166. +8 −0 spec/fixtures/unit/provider/sensu_cluster_federation_member/sensuctl/dump.out
  167. +40 −0 spec/fixtures/unit/provider/sensu_cluster_member/sensu_api/cluster_member_list.json
  168. +160 −0 spec/fixtures/unit/provider/sensu_cluster_role/sensu_api/cluster_role_list.json
  169. +47 −0 spec/fixtures/unit/provider/sensu_cluster_role_binding/sensu_api/list.json
  170. +65 −0 spec/fixtures/unit/provider/sensu_entity/sensu_api/entity_list.json
  171. +20 −0 spec/fixtures/unit/provider/sensu_etcd_replicator/sensu_api/get.json
  172. +0 −189 spec/fixtures/unit/provider/sensu_event/sensuctl/event_list.json
  173. +15 −0 spec/fixtures/unit/provider/sensu_filter/sensu_api/filter_list.json
  174. +20 −0 spec/fixtures/unit/provider/sensu_handler/sensu_api/handler_list.json
  175. +13 −0 spec/fixtures/unit/provider/sensu_hook/sensu_api/hook_list.json
  176. +80 −0 spec/fixtures/unit/provider/sensu_ldap_auth/sensu_api/list.json
  177. +14 −0 spec/fixtures/unit/provider/sensu_mutator/sensu_api/mutator_list.json
  178. +5 −0 spec/fixtures/unit/provider/sensu_namespace/sensu_api/namespace_list.json
  179. +101 −0 spec/fixtures/unit/provider/sensu_oidc_auth/sensu_api/list.json
  180. +23 −0 spec/fixtures/unit/provider/sensu_role/sensu_api/role_list.json
  181. +18 −0 spec/fixtures/unit/provider/sensu_role_binding/sensu_api/list.json
  182. +0 −16 spec/fixtures/unit/provider/sensu_silenced/sensuctl/silenced_list.json
  183. +16 −0 spec/fixtures/unit/provider/sensu_user/sensu_api/user_list.json
  184. 0 spec/fixtures/unit/provider/{sensu_config → sensuctl_configure}/sensuctl/config_list.json
  185. +2 −2 spec/shared_examples/types.rb
  186. +7 −1 spec/spec_helper.rb
  187. +58 −0 spec/tasks/resolve_reference_spec.rb
  188. +136 −0 spec/unit/provider/sensu_ad_auth/sensu_api_spec.rb
  189. +16 −18 spec/unit/provider/sensu_ad_auth/sensuctl_spec.rb
  190. +107 −0 spec/unit/provider/sensu_asset/sensu_api_spec.rb
  191. +67 −0 spec/unit/provider/sensu_bonsai_asset/sensu_api_spec.rb
  192. +127 −0 spec/unit/provider/sensu_check/sensu_api_spec.rb
  193. +4 −5 spec/unit/provider/sensu_check/sensuctl_spec.rb
  194. +92 −0 spec/unit/provider/sensu_cluster_federation/sensu_api_spec.rb
  195. +70 −0 spec/unit/provider/sensu_cluster_federation/sensuctl_spec.rb
  196. +92 −0 spec/unit/provider/sensu_cluster_federation_member/sensu_api_spec.rb
  197. +55 −0 spec/unit/provider/sensu_cluster_federation_member/sensuctl_spec.rb
  198. +66 −0 spec/unit/provider/sensu_cluster_member/sensu_api_spec.rb
  199. +5 −5 spec/unit/provider/sensu_cluster_member/sensuctl_spec.rb
  200. +62 −0 spec/unit/provider/sensu_cluster_role/sensu_api_spec.rb
  201. +68 −0 spec/unit/provider/sensu_cluster_role_binding/sensu_api_spec.rb
  202. +0 −50 spec/unit/provider/sensu_config/sensuctl_spec.rb
  203. +0 −50 spec/unit/provider/sensu_configure/sensuctl_spec.rb
  204. +67 −0 spec/unit/provider/sensu_entity/sensu_api_spec.rb
  205. +110 −0 spec/unit/provider/sensu_etcd_replicator/sensu_api_spec.rb
  206. +0 −45 spec/unit/provider/sensu_event/sensuctl_spec.rb
  207. +74 −0 spec/unit/provider/sensu_filter/sensu_api_spec.rb
  208. +110 −0 spec/unit/provider/sensu_handler/sensu_api_spec.rb
  209. +4 −7 spec/unit/provider/sensu_handler/sensuctl_spec.rb
  210. +75 −0 spec/unit/provider/sensu_hook/sensu_api_spec.rb
  211. +142 −0 spec/unit/provider/sensu_ldap_auth/sensu_api_spec.rb
  212. +19 −15 spec/unit/provider/sensu_ldap_auth/sensuctl_spec.rb
  213. +86 −0 spec/unit/provider/sensu_mutator/sensu_api_spec.rb
  214. +42 −0 spec/unit/provider/sensu_namespace/sensu_api_spec.rb
  215. +80 −0 spec/unit/provider/sensu_oidc_auth/sensu_api_spec.rb
  216. +72 −0 spec/unit/provider/sensu_role/sensu_api_spec.rb
  217. +75 −0 spec/unit/provider/sensu_role_binding/sensu_api_spec.rb
  218. +0 −102 spec/unit/provider/sensu_silenced/sensuctl_spec.rb
  219. +47 −0 spec/unit/provider/sensu_tessen/sensu_api_spec.rb
  220. +138 −0 spec/unit/provider/sensu_user/sensu_api_spec.rb
  221. +8 −8 spec/unit/provider/sensu_user/sensuctl_spec.rb
  222. +157 −0 spec/unit/provider/sensuctl_configure/sensuctl_spec.rb
  223. +7 −0 spec/unit/provider/sensuctl_spec.rb
  224. +44 −91 spec/unit/sensu_ad_auth_spec.rb
  225. +27 −3 spec/unit/sensu_check_spec.rb
  226. +202 −0 spec/unit/sensu_cluster_federation_member_spec.rb
  227. +174 −0 spec/unit/sensu_cluster_federation_spec.rb
  228. +0 −144 spec/unit/sensu_config_spec.rb
  229. +20 −2 spec/unit/sensu_entity_spec.rb
  230. +0 −178 spec/unit/sensu_event_spec.rb
  231. +33 −20 spec/unit/sensu_handler_spec.rb
  232. +45 −86 spec/unit/sensu_ldap_auth_spec.rb
  233. +0 −239 spec/unit/sensu_silenced_spec.rb
  234. +34 −0 spec/unit/sensu_tessen_spec.rb
  235. +1 −0 spec/unit/sensuctl_config_spec.rb
  236. +17 −4 spec/unit/{sensu_configure_spec.rb → sensuctl_configure_spec.rb}
  237. +4 −6 tasks/install_agent_linux.rb
  238. +3 −5 tasks/install_agent_windows.ps1
  239. +18 −0 tasks/resolve_reference.json
  240. +94 −0 tasks/resolve_reference.rb
  241. +2 −0 tests/provision_basic_win.ps1
  242. +1 −1 tests/sensu-agent.pp
  243. +1 −1 tests/sensu-backend-cluster.pp
  244. +2 −2 tests/sensu-backend-federated-cluster.pp
  245. +2 −2 tests/sensu-backend.pp
  246. +12 −0 tests/sensu-cli.pp
2 changes: 1 addition & 1 deletion .fixtures.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ fixtures:
ref: 5.0.1
stdlib:
repo: git://github.com/puppetlabs/puppetlabs-stdlib.git
ref: 4.25.1
ref: 5.1.0
yumrepo_core:
repo: git://github.com/puppetlabs/puppetlabs-yumrepo_core
ref: 1.0.1
Expand Down
9 changes: 7 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ cache: bundler
before_install:
- bundle -v
- rm Gemfile.lock || true
- gem update --system
- gem update bundler
- gem --version
- bundle -v
Expand Down Expand Up @@ -140,6 +139,12 @@ matrix:
bundler_args:
script: bundle exec rake beaker
stage: acceptance
- rvm: 2.4.5
services: docker
env: BEAKER_set="debian-10" BEAKER_PUPPET_COLLECTION=puppet5
bundler_args:
script: bundle exec rake beaker
stage: acceptance
- rvm: 2.5.7
services: docker
env: BEAKER_set="debian-10" BEAKER_PUPPET_COLLECTION=puppet6
Expand Down Expand Up @@ -277,7 +282,7 @@ notifications:
email: false
slack:
rooms:
- secure: R1ThBe5UcmcX5UqnMAWEl5e0JpO1MjsCJDvsDfgTZQ7Nb7gYzj6T9lls11HxxoALffkdMbi7g7qlrwQ9ajblIZlS27aMbucwaMbWt6uiepVITHTub6+ZhM1yAcgFgRk2HsfaZnaB0LERW4SIfTTe/hGFIMgHGDYSf+NYqM3ikhY=
- secure: "KomdJMZyKI1dXFQVkXtM0dgAhWtVI3xksT3FCywh1MOxmS8U2A0Bik7FA0WHSXhwx2Tg6b9bSd8p23LO4sH4gRm0px1It/Cxnf77rq9sRxzmLlObwcg1LQTTTCZDFof2I9vBBmQiXmQYBprOn1e/aefbZRBBcGqOfFWyBvVsfsE="
on_success: change
on_failure: always
deploy:
Expand Down
31 changes: 28 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,30 @@
# Changelog

## [v4.0.0](https://github.com/sensu/sensu-puppet/tree/v4.0.0) (2020-01-10)

[Full Changelog](https://github.com/sensu/sensu-puppet/compare/v3.14.0...v4.0.0)

### Changed

- BREAKING: Add API providers [\#1191](https://github.com/sensu/sensu-puppet/pull/1191) ([treydock](https://github.com/treydock))
- Add several parameters to sensu::agent class [\#1185](https://github.com/sensu/sensu-puppet/pull/1185) ([treydock](https://github.com/treydock))
- Document upcoming breaking changes [\#1167](https://github.com/sensu/sensu-puppet/pull/1167) ([treydock](https://github.com/treydock))
- BREAKING: Move cli resources to sensu::cli class [\#1164](https://github.com/sensu/sensu-puppet/pull/1164) ([treydock](https://github.com/treydock))
- BREAKING: Update type properties to map to Sensu Go specifications [\#1154](https://github.com/sensu/sensu-puppet/pull/1154) ([treydock](https://github.com/treydock))
- BREAKING: Refactor how sensu\_ldap\_auth and sensu\_ad\_auth define servers [\#1142](https://github.com/sensu/sensu-puppet/pull/1142) ([treydock](https://github.com/treydock))
- BREAKING: Remove sensu\_event and sensu\_silenced types [\#1141](https://github.com/sensu/sensu-puppet/pull/1141) ([treydock](https://github.com/treydock))

### Added

- Document contact routing and bonsai asset bugfix [\#1194](https://github.com/sensu/sensu-puppet/pull/1194) ([treydock](https://github.com/treydock))
- Support 'sensu-backend init' added in Sensu Go 5.16 [\#1192](https://github.com/sensu/sensu-puppet/pull/1192) ([treydock](https://github.com/treydock))
- Misc test fixes [\#1189](https://github.com/sensu/sensu-puppet/pull/1189) ([treydock](https://github.com/treydock))

### UNCATEGORIZED PRS; GO LABEL THEM

- Style [\#1193](https://github.com/sensu/sensu-puppet/pull/1193) ([ghoneycutt](https://github.com/ghoneycutt))
- \(ci\) Update TravisCI configuration for new Slack channel [\#1190](https://github.com/sensu/sensu-puppet/pull/1190) ([ghoneycutt](https://github.com/ghoneycutt))

## [v3.14.0](https://github.com/sensu/sensu-puppet/tree/v3.14.0) (2019-12-01)

[Full Changelog](https://github.com/sensu/sensu-puppet/compare/v3.13.0...v3.14.0)
Expand Down Expand Up @@ -47,7 +72,6 @@
- Support Windows 2019 [\#1168](https://github.com/sensu/sensu-puppet/pull/1168) ([treydock](https://github.com/treydock))
- Improve release process [\#1166](https://github.com/sensu/sensu-puppet/pull/1166) ([treydock](https://github.com/treydock))
- \(ci\) Use correct Ruby version 2.5.7 for latest Puppet 6 tests [\#1165](https://github.com/sensu/sensu-puppet/pull/1165) ([ghoneycutt](https://github.com/ghoneycutt))
- Additional bolt tasks [\#1162](https://github.com/sensu/sensu-puppet/pull/1162) ([treydock](https://github.com/treydock))

### Fixed

Expand All @@ -59,7 +83,10 @@

### Added

- Additional bolt tasks [\#1162](https://github.com/sensu/sensu-puppet/pull/1162) ([treydock](https://github.com/treydock))
- Initial work at design document [\#1161](https://github.com/sensu/sensu-puppet/pull/1161) ([treydock](https://github.com/treydock))
- Add bolt tasks [\#1153](https://github.com/sensu/sensu-puppet/pull/1153) ([treydock](https://github.com/treydock))
- Deprecate defining single asset builds [\#1140](https://github.com/sensu/sensu-puppet/pull/1140) ([treydock](https://github.com/treydock))

## [v3.9.0](https://github.com/sensu/sensu-puppet/tree/v3.9.0) (2019-10-10)

Expand All @@ -69,11 +96,9 @@

- Add sensu\_resources type that will handle resource purging [\#1158](https://github.com/sensu/sensu-puppet/pull/1158) ([treydock](https://github.com/treydock))
- Add sensu\_gem package provider [\#1156](https://github.com/sensu/sensu-puppet/pull/1156) ([treydock](https://github.com/treydock))
- Add bolt tasks [\#1153](https://github.com/sensu/sensu-puppet/pull/1153) ([treydock](https://github.com/treydock))
- Install Windows agent via chocolatey [\#1152](https://github.com/sensu/sensu-puppet/pull/1152) ([treydock](https://github.com/treydock))
- Add sensu\_bonsai\_asset type [\#1149](https://github.com/sensu/sensu-puppet/pull/1149) ([treydock](https://github.com/treydock))
- Replace unit test instance variables with let [\#1143](https://github.com/sensu/sensu-puppet/pull/1143) ([treydock](https://github.com/treydock))
- Deprecate defining single asset builds [\#1140](https://github.com/sensu/sensu-puppet/pull/1140) ([treydock](https://github.com/treydock))

### Fixed

Expand Down
11 changes: 8 additions & 3 deletions DESIGN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,21 @@

## Classes

There are four main public classes and other can be added if they need to be managed separately than the existing classes:
There are seven main public classes and other can be added if they need to be managed separately than the existing classes:

* sensu - Resources shared by all other public classes such as agent and backend
* sensu - Define variables used by all other classes
* sensu::agent - Sensu Agent
* sensu::backend - Sensu Backend
* sensu::cli - Manage sensuctl
* sensu::api - Configure sensu_api providers
* sensu::resources - Define sensu resources
* sensu::plugins - Sensu plugins

The class `sensu::common` is a private class that holds resources shared by many public classes.

Subclasses to the above hold resources for that resources to keep the logic in the main public class shorter. So `sensu::backend::default_resources` is a private classes that adds functionality to `sensu::backend`. There are also some shared classes like `sensu::ssl` that are private and have resources shared by other public classes.

If a parameter is used by both agent and backend, it belongs in `sensu` class. All other parameters should be added to the appropriate public class.
If a parameter is used by multiple public classes, it belongs in `sensu` class. All other parameters should be added to the appropriate public class.

## Types/Provides

Expand Down
60 changes: 33 additions & 27 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
source ENV['GEM_SOURCE'] || "https://rubygems.org"
source ENV['GEM_SOURCE'] || 'https://rubygems.org'

if puppetversion = ENV['PUPPET_GEM_VERSION']
gem 'puppet', puppetversion, :require => false
Expand All @@ -8,32 +8,38 @@ end

group :development, :unit_tests do
gem 'rake'
gem 'rspec-puppet', :require => false
gem 'rspec-puppet-facts', :require => false
gem 'rspec-mocks', :require => false
gem 'parallel_tests', :require => false
gem 'puppetlabs_spec_helper', :require => false
gem 'metadata-json-lint', :require => false
gem 'puppet-blacksmith', :require => false
gem 'puppet-lint', :require => false
gem 'puppet-lint-absolute_classname-check', :require => false
gem 'puppet-lint-alias-check', :require => false
gem 'puppet-lint-anchor-check', :require => false
gem 'puppet-lint-empty_string-check', :require => false
gem 'puppet-lint-file_ensure-check', :require => false
gem 'puppet-lint-leading_zero-check', :require => false
gem 'puppet-lint-param-docs', :require => false
gem 'puppet-lint-resource_reference_syntax', :require => false
gem 'puppet-lint-spaceship_operator_without_tag-check', :require => false
gem 'puppet-lint-trailing_comma-check', :require => false
gem 'puppet-lint-trailing_newline-check', :require => false
gem 'puppet-lint-undef_in_function-check', :require => false
gem 'puppet-lint-unquoted_string-check', :require => false
gem 'puppet-lint-variable_contains_upcase', :require => false
gem 'puppet-lint-version_comparison-check', :require => false
gem "rubocop", '~> 0.49.0', :require => false
gem "rubocop-i18n", '~> 1.2.0', :require => false
gem "rubocop-rspec", '~> 1.16.0', :require => false
gem 'rspec-puppet', :require => false
gem 'rspec-puppet-facts', :require => false
gem 'rspec-mocks', :require => false
gem 'parallel_tests', :require => false
gem 'puppetlabs_spec_helper', :require => false
gem 'metadata-json-lint', :require => false
gem 'puppet-blacksmith', :require => false
gem 'puppet-lint', :require => false
gem 'puppet-lint-absolute_classname-check', :require => false
gem 'puppet-lint-alias-check', :require => false
gem 'puppet-lint-anchor-check', :require => false
gem 'puppet-lint-classes_and_types_beginning_with_digits-check', :require => false
gem 'puppet-lint-empty_string-check', :require => false
gem 'puppet-lint-empty_trailing_lines', :require => false
gem 'puppet-lint-file_ensure-check', :require => false
gem 'puppet-lint-leading_zero-check', :require => false
gem 'puppet-lint-legacy_facts-check', :require => false
gem 'puppet-lint-no_symbolic_file_modes-check', :require => false
gem 'puppet-lint-param-docs', :require => false
gem 'puppet-lint-resource_reference_syntax', :require => false
gem 'puppet-lint-spaceship_operator_without_tag-check', :require => false
gem 'puppet-lint-top_scope_facts-check', :require => false
gem 'puppet-lint-topscope-variable-check', :require => false
gem 'puppet-lint-trailing_comma-check', :require => false
gem 'puppet-lint-trailing_newline-check', :require => false
gem 'puppet-lint-undef_in_function-check', :require => false
gem 'puppet-lint-unquoted_string-check', :require => false
gem 'puppet-lint-variable_contains_upcase', :require => false
gem 'puppet-lint-version_comparison-check', :require => false
gem 'rubocop', '~> 0.49.0', :require => false
gem 'rubocop-i18n', '~> 1.2.0', :require => false
gem 'rubocop-rspec', '~> 1.16.0', :require => false
end

group :documentation do
Expand Down
Loading