puppet 6.25.1-universal-darwin → 7.0.0-universal-darwin

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (784) hide show
  1. checksums.yaml +4 -4
  2. data/CODEOWNERS +16 -2
  3. data/CONTRIBUTING.md +5 -5
  4. data/Gemfile +3 -5
  5. data/Gemfile.lock +39 -51
  6. data/README.md +5 -5
  7. data/conf/fileserver.conf +5 -10
  8. data/ext/README.environment +8 -0
  9. data/ext/build_defaults.yaml +1 -1
  10. data/ext/dbfix.sql +132 -0
  11. data/ext/debian/README.Debian +8 -0
  12. data/ext/debian/README.source +2 -0
  13. data/ext/debian/TODO.Debian +1 -0
  14. data/ext/debian/changelog.erb +1122 -0
  15. data/ext/debian/compat +1 -0
  16. data/ext/debian/control +144 -0
  17. data/ext/debian/copyright +339 -0
  18. data/ext/debian/docs +1 -0
  19. data/ext/debian/fileserver.conf +41 -0
  20. data/ext/debian/puppet-common.dirs +13 -0
  21. data/ext/debian/puppet-common.install +3 -0
  22. data/ext/debian/puppet-common.lintian-overrides +5 -0
  23. data/ext/debian/puppet-common.manpages +28 -0
  24. data/ext/debian/puppet-common.postinst +35 -0
  25. data/ext/debian/puppet-common.postrm +33 -0
  26. data/ext/debian/puppet-el.dirs +1 -0
  27. data/ext/debian/puppet-el.emacsen-install +25 -0
  28. data/ext/debian/puppet-el.emacsen-remove +11 -0
  29. data/ext/debian/puppet-el.emacsen-startup +9 -0
  30. data/ext/debian/puppet-el.install +1 -0
  31. data/ext/debian/puppet-testsuite.install +2 -0
  32. data/ext/debian/puppet-testsuite.lintian-overrides +4 -0
  33. data/ext/debian/puppet.lintian-overrides +3 -0
  34. data/ext/debian/puppet.logrotate +20 -0
  35. data/ext/debian/puppet.postinst +20 -0
  36. data/ext/debian/puppet.postrm +20 -0
  37. data/ext/debian/puppet.preinst +20 -0
  38. data/ext/debian/puppetmaster-common.install +2 -0
  39. data/ext/debian/puppetmaster-common.manpages +2 -0
  40. data/ext/debian/puppetmaster-common.postinst +6 -0
  41. data/ext/debian/puppetmaster-passenger.dirs +4 -0
  42. data/ext/debian/puppetmaster-passenger.postinst +162 -0
  43. data/ext/debian/puppetmaster-passenger.postrm +61 -0
  44. data/ext/debian/puppetmaster.README.debian +17 -0
  45. data/ext/debian/puppetmaster.default +14 -0
  46. data/ext/debian/puppetmaster.init +137 -0
  47. data/ext/debian/puppetmaster.lintian-overrides +3 -0
  48. data/ext/debian/puppetmaster.postinst +20 -0
  49. data/ext/debian/puppetmaster.postrm +5 -0
  50. data/ext/debian/puppetmaster.preinst +22 -0
  51. data/ext/debian/rules +132 -0
  52. data/ext/debian/source/format +1 -0
  53. data/ext/debian/source/options +1 -0
  54. data/ext/debian/vim-puppet.README.Debian +13 -0
  55. data/ext/debian/vim-puppet.dirs +5 -0
  56. data/ext/debian/vim-puppet.yaml +7 -0
  57. data/ext/debian/watch +2 -0
  58. data/ext/freebsd/puppetd +26 -0
  59. data/ext/freebsd/puppetmasterd +26 -0
  60. data/ext/gentoo/conf.d/puppet +5 -0
  61. data/ext/gentoo/conf.d/puppetmaster +12 -0
  62. data/ext/gentoo/init.d/puppet +38 -0
  63. data/ext/gentoo/init.d/puppetmaster +51 -0
  64. data/ext/gentoo/puppet/fileserver.conf +41 -0
  65. data/ext/ips/puppet-agent +44 -0
  66. data/ext/ips/puppet-master +44 -0
  67. data/ext/ips/puppet.p5m.erb +12 -0
  68. data/ext/ips/puppetagent.xml +42 -0
  69. data/ext/ips/puppetmaster.xml +42 -0
  70. data/ext/ips/rules +19 -0
  71. data/ext/ips/transforms +34 -0
  72. data/ext/ldap/puppet.schema +24 -0
  73. data/ext/logcheck/puppet +23 -0
  74. data/{examples → ext}/nagios/check_puppet.rb +2 -2
  75. data/ext/osx/file_mapping.yaml +28 -0
  76. data/ext/osx/postflight.erb +109 -0
  77. data/ext/osx/preflight.erb +52 -0
  78. data/ext/osx/prototype.plist.erb +38 -0
  79. data/ext/osx/puppet.plist +0 -2
  80. data/ext/project_data.yaml +1 -15
  81. data/ext/redhat/fileserver.conf +41 -0
  82. data/ext/redhat/logrotate +21 -0
  83. data/ext/redhat/puppet.spec.erb +841 -0
  84. data/ext/redhat/server.init +128 -0
  85. data/ext/redhat/server.sysconfig +13 -0
  86. data/{examples/enc → ext}/regexp_nodes/classes/databases +0 -0
  87. data/{examples/enc → ext}/regexp_nodes/classes/webservers +0 -0
  88. data/{examples/enc → ext}/regexp_nodes/environment/development +0 -0
  89. data/{examples/enc → ext}/regexp_nodes/parameters/service/prod +0 -0
  90. data/{examples/enc → ext}/regexp_nodes/parameters/service/qa +0 -0
  91. data/{examples/enc → ext}/regexp_nodes/parameters/service/sandbox +0 -0
  92. data/{examples/enc → ext}/regexp_nodes/regexp_nodes.rb +0 -0
  93. data/ext/solaris/pkginfo +6 -0
  94. data/ext/solaris/smf/puppetd.xml +77 -0
  95. data/ext/solaris/smf/puppetmasterd.xml +77 -0
  96. data/ext/solaris/smf/svc-puppetd +71 -0
  97. data/ext/solaris/smf/svc-puppetmasterd +67 -0
  98. data/ext/suse/puppet.spec +310 -0
  99. data/ext/suse/server.init +173 -0
  100. data/ext/windows/service/daemon.rb +6 -5
  101. data/ext/yaml_nodes.rb +105 -0
  102. data/install.rb +21 -17
  103. data/lib/puppet/application/agent.rb +4 -16
  104. data/lib/puppet/application/apply.rb +4 -24
  105. data/lib/puppet/application/device.rb +100 -106
  106. data/lib/puppet/application/filebucket.rb +13 -10
  107. data/lib/puppet/application/resource.rb +16 -32
  108. data/lib/puppet/application/script.rb +0 -2
  109. data/lib/puppet/application/ssl.rb +1 -13
  110. data/lib/puppet/application.rb +178 -108
  111. data/lib/puppet/application_support.rb +0 -7
  112. data/lib/puppet/concurrent/thread_local_singleton.rb +0 -1
  113. data/lib/puppet/configurer/downloader.rb +1 -2
  114. data/lib/puppet/configurer/plugin_handler.rb +21 -19
  115. data/lib/puppet/configurer.rb +86 -189
  116. data/lib/puppet/confine/variable.rb +1 -1
  117. data/lib/puppet/defaults.rb +128 -232
  118. data/lib/puppet/environments.rb +82 -146
  119. data/lib/puppet/face/facts.rb +5 -103
  120. data/lib/puppet/face/help/action.erb +0 -1
  121. data/lib/puppet/face/help/face.erb +0 -1
  122. data/lib/puppet/face/help.rb +1 -1
  123. data/lib/puppet/face/node/clean.rb +0 -11
  124. data/lib/puppet/face/plugin.rb +5 -8
  125. data/lib/puppet/ffi/windows/api_types.rb +311 -0
  126. data/lib/puppet/ffi/windows/constants.rb +404 -0
  127. data/lib/puppet/ffi/windows/functions.rb +628 -0
  128. data/lib/puppet/ffi/windows/structs.rb +338 -0
  129. data/lib/puppet/ffi/windows.rb +12 -0
  130. data/lib/puppet/file_serving/configuration/parser.rb +3 -34
  131. data/lib/puppet/file_serving/configuration.rb +0 -8
  132. data/lib/puppet/file_serving/fileset.rb +2 -14
  133. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  134. data/lib/puppet/file_serving/mount/file.rb +4 -4
  135. data/lib/puppet/file_serving/mount.rb +1 -2
  136. data/lib/puppet/file_system/file_impl.rb +1 -3
  137. data/lib/puppet/file_system/memory_file.rb +1 -8
  138. data/lib/puppet/file_system/windows.rb +2 -4
  139. data/lib/puppet/forge/repository.rb +0 -1
  140. data/lib/puppet/forge.rb +4 -4
  141. data/lib/puppet/functions/all.rb +1 -1
  142. data/lib/puppet/functions/camelcase.rb +1 -1
  143. data/lib/puppet/functions/capitalize.rb +2 -2
  144. data/lib/puppet/functions/downcase.rb +2 -2
  145. data/lib/puppet/functions/empty.rb +0 -8
  146. data/lib/puppet/functions/find_template.rb +2 -2
  147. data/lib/puppet/functions/get.rb +5 -5
  148. data/lib/puppet/functions/group_by.rb +5 -13
  149. data/lib/puppet/functions/lest.rb +1 -1
  150. data/lib/puppet/functions/new.rb +100 -100
  151. data/lib/puppet/functions/partition.rb +4 -12
  152. data/lib/puppet/functions/require.rb +5 -5
  153. data/lib/puppet/functions/sort.rb +3 -3
  154. data/lib/puppet/functions/strftime.rb +0 -1
  155. data/lib/puppet/functions/tree_each.rb +9 -7
  156. data/lib/puppet/functions/type.rb +4 -4
  157. data/lib/puppet/functions/unwrap.rb +2 -17
  158. data/lib/puppet/functions/upcase.rb +2 -2
  159. data/lib/puppet/generate/models/type/type.rb +4 -1
  160. data/lib/puppet/http/client.rb +165 -115
  161. data/lib/puppet/{network/resolver.rb → http/dns.rb} +2 -2
  162. data/lib/puppet/http/errors.rb +16 -0
  163. data/lib/puppet/http/external_client.rb +5 -7
  164. data/lib/puppet/{network/http → http}/factory.rb +8 -15
  165. data/lib/puppet/{network/http → http}/pool.rb +61 -26
  166. data/lib/puppet/{network/http/session.rb → http/pool_entry.rb} +2 -3
  167. data/lib/puppet/http/proxy.rb +137 -0
  168. data/lib/puppet/http/redirector.rb +4 -17
  169. data/lib/puppet/http/resolver/server_list.rb +10 -25
  170. data/lib/puppet/http/resolver/settings.rb +4 -7
  171. data/lib/puppet/http/resolver/srv.rb +7 -11
  172. data/lib/puppet/http/resolver.rb +5 -15
  173. data/lib/puppet/http/response.rb +36 -54
  174. data/lib/puppet/http/response_converter.rb +24 -0
  175. data/lib/puppet/http/response_net_http.rb +42 -0
  176. data/lib/puppet/http/retry_after_handler.rb +4 -13
  177. data/lib/puppet/http/service/ca.rb +11 -22
  178. data/lib/puppet/http/service/compiler.rb +23 -144
  179. data/lib/puppet/http/service/file_server.rb +19 -29
  180. data/lib/puppet/http/service/puppetserver.rb +26 -12
  181. data/lib/puppet/http/service/report.rb +8 -10
  182. data/lib/puppet/http/service.rb +12 -26
  183. data/lib/puppet/http/session.rb +11 -20
  184. data/lib/puppet/{network/http → http}/site.rb +1 -2
  185. data/lib/puppet/http.rb +22 -13
  186. data/lib/puppet/indirector/catalog/compiler.rb +6 -25
  187. data/lib/puppet/indirector/catalog/rest.rb +2 -5
  188. data/lib/puppet/indirector/facts/facter.rb +6 -6
  189. data/lib/puppet/indirector/facts/rest.rb +3 -22
  190. data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -9
  191. data/lib/puppet/indirector/file_content/rest.rb +2 -6
  192. data/lib/puppet/indirector/file_metadata/rest.rb +3 -10
  193. data/lib/puppet/indirector/file_server.rb +1 -8
  194. data/lib/puppet/indirector/generic_http.rb +0 -11
  195. data/lib/puppet/indirector/indirection.rb +1 -1
  196. data/lib/puppet/indirector/node/rest.rb +2 -4
  197. data/lib/puppet/indirector/report/rest.rb +3 -8
  198. data/lib/puppet/indirector/request.rb +0 -101
  199. data/lib/puppet/indirector/resource/ral.rb +1 -6
  200. data/lib/puppet/indirector/rest.rb +12 -263
  201. data/lib/puppet/indirector/terminus.rb +0 -4
  202. data/lib/puppet/interface/documentation.rb +0 -1
  203. data/lib/puppet/module/plan.rb +1 -0
  204. data/lib/puppet/module/task.rb +1 -1
  205. data/lib/puppet/module.rb +0 -1
  206. data/lib/puppet/module_tool/applications/installer.rb +2 -56
  207. data/lib/puppet/module_tool/applications/uninstaller.rb +1 -1
  208. data/lib/puppet/module_tool/applications/upgrader.rb +1 -1
  209. data/lib/puppet/module_tool/applications.rb +0 -1
  210. data/lib/puppet/module_tool/errors/shared.rb +2 -34
  211. data/lib/puppet/network/authconfig.rb +2 -96
  212. data/lib/puppet/network/authorization.rb +13 -35
  213. data/lib/puppet/network/formats.rb +0 -67
  214. data/lib/puppet/network/http/api/indirected_routes.rb +3 -21
  215. data/lib/puppet/network/http/api/master/v3.rb +11 -13
  216. data/lib/puppet/network/http/connection.rb +247 -316
  217. data/lib/puppet/network/http/handler.rb +0 -1
  218. data/lib/puppet/network/http.rb +3 -3
  219. data/lib/puppet/network/http_pool.rb +16 -34
  220. data/lib/puppet/node/environment.rb +11 -10
  221. data/lib/puppet/node.rb +1 -30
  222. data/lib/puppet/pal/json_catalog_encoder.rb +4 -0
  223. data/lib/puppet/pal/pal_impl.rb +4 -2
  224. data/lib/puppet/parser/ast/leaf.rb +2 -3
  225. data/lib/puppet/parser/ast/pops_bridge.rb +0 -38
  226. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +14 -39
  227. data/lib/puppet/parser/compiler.rb +0 -198
  228. data/lib/puppet/parser/functions/fqdn_rand.rb +6 -14
  229. data/lib/puppet/parser/resource.rb +1 -70
  230. data/lib/puppet/parser/scope.rb +0 -1
  231. data/lib/puppet/parser/templatewrapper.rb +1 -2
  232. data/lib/puppet/pops/evaluator/closure.rb +5 -7
  233. data/lib/puppet/pops/evaluator/deferred_resolver.rb +3 -5
  234. data/lib/puppet/pops/evaluator/evaluator_impl.rb +0 -5
  235. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +3 -4
  236. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  237. data/lib/puppet/pops/issues.rb +0 -5
  238. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +6 -8
  239. data/lib/puppet/pops/lookup/lookup_adapter.rb +2 -3
  240. data/lib/puppet/pops/model/ast.pp +0 -42
  241. data/lib/puppet/pops/model/ast.rb +0 -291
  242. data/lib/puppet/pops/model/ast_transformer.rb +1 -1
  243. data/lib/puppet/pops/model/factory.rb +1 -47
  244. data/lib/puppet/pops/model/model_label_provider.rb +0 -5
  245. data/lib/puppet/pops/model/model_tree_dumper.rb +0 -22
  246. data/lib/puppet/pops/model/pn_transformer.rb +0 -16
  247. data/lib/puppet/pops/parser/egrammar.ra +0 -56
  248. data/lib/puppet/pops/parser/eparser.rb +1691 -1883
  249. data/lib/puppet/pops/parser/lexer2.rb +91 -92
  250. data/lib/puppet/pops/parser/parser_support.rb +0 -5
  251. data/lib/puppet/pops/parser/slurp_support.rb +0 -1
  252. data/lib/puppet/pops/resource/resource_type_impl.rb +2 -24
  253. data/lib/puppet/pops/serialization/to_data_converter.rb +6 -18
  254. data/lib/puppet/pops/serialization/to_stringified_converter.rb +1 -1
  255. data/lib/puppet/pops/types/p_sem_ver_type.rb +2 -8
  256. data/lib/puppet/pops/types/p_sensitive_type.rb +0 -10
  257. data/lib/puppet/pops/types/type_calculator.rb +0 -7
  258. data/lib/puppet/pops/types/type_formatter.rb +3 -4
  259. data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
  260. data/lib/puppet/pops/types/type_parser.rb +0 -4
  261. data/lib/puppet/pops/types/types.rb +1 -2
  262. data/lib/puppet/pops/validation/checker4_0.rb +9 -37
  263. data/lib/puppet/pops/validation/tasks_checker.rb +0 -12
  264. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -2
  265. data/lib/puppet/property/list.rb +1 -1
  266. data/lib/puppet/provider/aix_object.rb +1 -1
  267. data/lib/puppet/provider/exec/posix.rb +4 -16
  268. data/lib/puppet/provider/group/groupadd.rb +10 -18
  269. data/lib/puppet/provider/nameservice.rb +0 -18
  270. data/lib/puppet/provider/package/apt.rb +2 -34
  271. data/lib/puppet/provider/package/aptitude.rb +0 -6
  272. data/lib/puppet/provider/package/dnfmodule.rb +1 -1
  273. data/lib/puppet/provider/package/dpkg.rb +0 -10
  274. data/lib/puppet/provider/package/gem.rb +23 -3
  275. data/lib/puppet/provider/package/nim.rb +6 -11
  276. data/lib/puppet/provider/package/pip.rb +3 -16
  277. data/lib/puppet/provider/package/pkg.rb +2 -23
  278. data/lib/puppet/provider/package/portage.rb +1 -1
  279. data/lib/puppet/provider/package/puppet_gem.rb +1 -4
  280. data/lib/puppet/provider/package/puppetserver_gem.rb +1 -1
  281. data/lib/puppet/provider/package/yum.rb +1 -1
  282. data/lib/puppet/provider/parsedfile.rb +0 -3
  283. data/lib/puppet/provider/service/base.rb +1 -1
  284. data/lib/puppet/provider/service/debian.rb +0 -2
  285. data/lib/puppet/provider/service/init.rb +5 -5
  286. data/lib/puppet/provider/service/launchd.rb +2 -2
  287. data/lib/puppet/provider/service/redhat.rb +1 -1
  288. data/lib/puppet/provider/service/smf.rb +194 -76
  289. data/lib/puppet/provider/service/systemd.rb +6 -16
  290. data/lib/puppet/provider/service/upstart.rb +5 -5
  291. data/lib/puppet/provider/service/windows.rb +0 -38
  292. data/lib/puppet/provider/user/aix.rb +3 -46
  293. data/lib/puppet/provider/user/directoryservice.rb +11 -34
  294. data/lib/puppet/provider/user/useradd.rb +24 -134
  295. data/lib/puppet/provider.rb +1 -14
  296. data/lib/puppet/reference/configuration.rb +8 -7
  297. data/lib/puppet/reference/indirection.rb +1 -1
  298. data/lib/puppet/reference/providers.rb +2 -2
  299. data/lib/puppet/resource/catalog.rb +2 -15
  300. data/lib/puppet/resource/type.rb +3 -119
  301. data/lib/puppet/resource/type_collection.rb +3 -49
  302. data/lib/puppet/resource.rb +6 -127
  303. data/lib/puppet/runtime.rb +2 -13
  304. data/lib/puppet/settings/environment_conf.rb +0 -1
  305. data/lib/puppet/settings/integer_setting.rb +17 -0
  306. data/lib/puppet/settings/port_setting.rb +15 -0
  307. data/lib/puppet/settings/priority_setting.rb +5 -4
  308. data/lib/puppet/settings.rb +82 -98
  309. data/lib/puppet/ssl/base.rb +3 -5
  310. data/lib/puppet/ssl/certificate.rb +0 -6
  311. data/lib/puppet/ssl/certificate_request.rb +1 -12
  312. data/lib/puppet/ssl/certificate_signer.rb +6 -0
  313. data/lib/puppet/ssl/oids.rb +3 -1
  314. data/lib/puppet/ssl/ssl_provider.rb +17 -0
  315. data/lib/puppet/ssl/state_machine.rb +3 -1
  316. data/lib/puppet/ssl/verifier.rb +2 -0
  317. data/lib/puppet/ssl.rb +10 -6
  318. data/lib/puppet/test/test_helper.rb +2 -7
  319. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  320. data/lib/puppet/transaction/persistence.rb +1 -11
  321. data/lib/puppet/transaction/report.rb +3 -19
  322. data/lib/puppet/transaction.rb +1 -7
  323. data/lib/puppet/type/exec.rb +5 -35
  324. data/lib/puppet/type/file/checksum.rb +1 -1
  325. data/lib/puppet/type/file/mode.rb +0 -6
  326. data/lib/puppet/type/file/selcontext.rb +1 -1
  327. data/lib/puppet/type/file/source.rb +1 -1
  328. data/lib/puppet/type/file.rb +12 -32
  329. data/lib/puppet/type/filebucket.rb +4 -4
  330. data/lib/puppet/type/group.rb +1 -0
  331. data/lib/puppet/type/package.rb +8 -16
  332. data/lib/puppet/type/resources.rb +1 -1
  333. data/lib/puppet/type/service.rb +41 -26
  334. data/lib/puppet/type/tidy.rb +3 -22
  335. data/lib/puppet/type/user.rb +21 -38
  336. data/lib/puppet/type.rb +1 -77
  337. data/lib/puppet/util/autoload.rb +8 -1
  338. data/lib/puppet/util/command_line.rb +1 -1
  339. data/lib/puppet/util/execution.rb +0 -11
  340. data/lib/puppet/util/filetype.rb +2 -2
  341. data/lib/puppet/util/http_proxy.rb +2 -215
  342. data/lib/puppet/util/json.rb +0 -3
  343. data/lib/puppet/util/log.rb +2 -1
  344. data/lib/puppet/util/logging.rb +25 -1
  345. data/lib/puppet/util/monkey_patches.rb +0 -53
  346. data/lib/puppet/util/pidlock.rb +1 -1
  347. data/lib/puppet/util/posix.rb +5 -54
  348. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
  349. data/lib/puppet/util/rdoc.rb +0 -7
  350. data/lib/puppet/util/retry_action.rb +1 -1
  351. data/lib/puppet/util/run_mode.rb +9 -1
  352. data/lib/puppet/util/selinux.rb +4 -30
  353. data/lib/puppet/util/suidmanager.rb +2 -1
  354. data/lib/puppet/util/symbolic_file_mode.rb +17 -29
  355. data/lib/puppet/util/tagging.rb +0 -1
  356. data/lib/puppet/util/windows/adsi.rb +0 -46
  357. data/lib/puppet/util/windows/daemon.rb +360 -0
  358. data/lib/puppet/util/windows/error.rb +1 -0
  359. data/lib/puppet/util/windows/eventlog.rb +4 -9
  360. data/lib/puppet/util/windows/file.rb +8 -242
  361. data/lib/puppet/util/windows/monkey_patches/process.rb +414 -0
  362. data/lib/puppet/util/windows/principal.rb +2 -9
  363. data/lib/puppet/util/windows/process.rb +4 -226
  364. data/lib/puppet/util/windows/service.rb +11 -457
  365. data/lib/puppet/util/windows/sid.rb +2 -6
  366. data/lib/puppet/util/windows/string.rb +12 -13
  367. data/lib/puppet/util/windows/user.rb +2 -0
  368. data/lib/puppet/util/windows.rb +3 -11
  369. data/lib/puppet/util/yaml.rb +0 -22
  370. data/lib/puppet/util.rb +3 -4
  371. data/lib/puppet/vendor/require_vendored.rb +0 -1
  372. data/lib/puppet/version.rb +1 -1
  373. data/lib/puppet/x509/cert_provider.rb +29 -1
  374. data/lib/puppet/x509.rb +5 -1
  375. data/lib/puppet.rb +20 -25
  376. data/locales/puppet.pot +816 -1637
  377. data/man/man5/puppet.conf.5 +286 -382
  378. data/man/man8/puppet-agent.8 +2 -5
  379. data/man/man8/puppet-apply.8 +2 -2
  380. data/man/man8/puppet-catalog.8 +9 -9
  381. data/man/man8/puppet-config.8 +1 -1
  382. data/man/man8/puppet-describe.8 +1 -1
  383. data/man/man8/puppet-device.8 +2 -2
  384. data/man/man8/puppet-doc.8 +1 -1
  385. data/man/man8/puppet-epp.8 +1 -1
  386. data/man/man8/puppet-facts.8 +8 -51
  387. data/man/man8/puppet-filebucket.8 +4 -4
  388. data/man/man8/puppet-generate.8 +1 -1
  389. data/man/man8/puppet-help.8 +1 -1
  390. data/man/man8/puppet-lookup.8 +1 -1
  391. data/man/man8/puppet-module.8 +3 -60
  392. data/man/man8/puppet-node.8 +5 -5
  393. data/man/man8/puppet-parser.8 +1 -1
  394. data/man/man8/puppet-plugin.8 +1 -1
  395. data/man/man8/puppet-report.8 +5 -5
  396. data/man/man8/puppet-resource.8 +1 -1
  397. data/man/man8/puppet-script.8 +2 -2
  398. data/man/man8/puppet-ssl.8 +1 -5
  399. data/man/man8/puppet.8 +2 -2
  400. data/spec/fixtures/ssl/127.0.0.1-key.pem +57 -107
  401. data/spec/fixtures/ssl/127.0.0.1.pem +31 -52
  402. data/spec/fixtures/ssl/bad-basic-constraints.pem +35 -57
  403. data/spec/fixtures/ssl/bad-int-basic-constraints.pem +35 -57
  404. data/spec/fixtures/ssl/ca.pem +35 -57
  405. data/spec/fixtures/ssl/crl.pem +18 -28
  406. data/spec/fixtures/ssl/ec-key.pem +11 -11
  407. data/spec/fixtures/ssl/ec.pem +24 -33
  408. data/spec/fixtures/ssl/encrypted-ec-key.pem +12 -12
  409. data/spec/fixtures/ssl/encrypted-key.pem +58 -108
  410. data/spec/fixtures/ssl/intermediate-agent-crl.pem +19 -28
  411. data/spec/fixtures/ssl/intermediate-agent.pem +36 -57
  412. data/spec/fixtures/ssl/intermediate-crl.pem +21 -31
  413. data/spec/fixtures/ssl/intermediate.pem +36 -57
  414. data/spec/fixtures/ssl/pluto-key.pem +57 -107
  415. data/spec/fixtures/ssl/pluto.pem +30 -52
  416. data/spec/fixtures/ssl/request-key.pem +57 -107
  417. data/spec/fixtures/ssl/request.pem +26 -47
  418. data/spec/fixtures/ssl/revoked-key.pem +57 -107
  419. data/spec/fixtures/ssl/revoked.pem +30 -52
  420. data/spec/fixtures/ssl/signed-key.pem +57 -107
  421. data/spec/fixtures/ssl/signed.pem +30 -52
  422. data/spec/fixtures/ssl/tampered-cert.pem +30 -52
  423. data/spec/fixtures/ssl/tampered-csr.pem +26 -47
  424. data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +57 -107
  425. data/spec/fixtures/ssl/unknown-127.0.0.1.pem +29 -50
  426. data/spec/fixtures/ssl/unknown-ca-key.pem +57 -107
  427. data/spec/fixtures/ssl/unknown-ca.pem +33 -55
  428. data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
  429. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -4
  430. data/spec/integration/application/agent_spec.rb +51 -299
  431. data/spec/integration/application/apply_spec.rb +1 -20
  432. data/spec/integration/application/filebucket_spec.rb +16 -32
  433. data/spec/integration/application/help_spec.rb +2 -0
  434. data/spec/integration/application/module_spec.rb +0 -21
  435. data/spec/integration/application/plugin_spec.rb +24 -2
  436. data/spec/integration/configurer_spec.rb +2 -18
  437. data/spec/integration/defaults_spec.rb +14 -3
  438. data/spec/integration/environments/settings_interpolation_spec.rb +4 -0
  439. data/spec/integration/http/client_spec.rb +0 -12
  440. data/spec/integration/indirector/direct_file_server_spec.rb +3 -1
  441. data/spec/integration/indirector/facts/facter_spec.rb +39 -93
  442. data/spec/integration/network/http_pool_spec.rb +3 -21
  443. data/spec/integration/parser/catalog_spec.rb +0 -38
  444. data/spec/integration/parser/node_spec.rb +0 -9
  445. data/spec/integration/parser/pcore_resource_spec.rb +0 -47
  446. data/spec/integration/resource/type_collection_spec.rb +6 -2
  447. data/spec/integration/transaction/report_spec.rb +1 -1
  448. data/spec/integration/transaction_spec.rb +9 -4
  449. data/spec/integration/type/exec_spec.rb +45 -70
  450. data/spec/integration/type/file_spec.rb +7 -6
  451. data/spec/integration/type/package_spec.rb +6 -6
  452. data/spec/integration/util/rdoc/parser_spec.rb +1 -1
  453. data/spec/integration/util/windows/adsi_spec.rb +1 -21
  454. data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
  455. data/spec/integration/util/windows/principal_spec.rb +0 -21
  456. data/spec/integration/util/windows/process_spec.rb +9 -1
  457. data/spec/integration/util/windows/registry_spec.rb +10 -6
  458. data/spec/integration/util/windows/security_spec.rb +1 -1
  459. data/spec/lib/matchers/include.rb +27 -0
  460. data/spec/lib/matchers/include_spec.rb +32 -0
  461. data/spec/lib/puppet/test_ca.rb +2 -7
  462. data/spec/lib/puppet_spec/modules.rb +2 -13
  463. data/spec/lib/puppet_spec/puppetserver.rb +1 -16
  464. data/spec/lib/puppet_spec/settings.rb +1 -1
  465. data/spec/shared_behaviours/documentation_on_faces.rb +2 -0
  466. data/spec/spec_helper.rb +17 -13
  467. data/spec/unit/agent_spec.rb +6 -10
  468. data/spec/unit/application/agent_spec.rb +3 -7
  469. data/spec/unit/application/apply_spec.rb +56 -76
  470. data/spec/unit/application/facts_spec.rb +12 -456
  471. data/spec/unit/application/filebucket_spec.rb +43 -39
  472. data/spec/unit/application/resource_spec.rb +0 -29
  473. data/spec/unit/application/ssl_spec.rb +2 -25
  474. data/spec/unit/application_spec.rb +9 -51
  475. data/spec/unit/certificate_factory_spec.rb +1 -1
  476. data/spec/unit/configurer/downloader_spec.rb +6 -8
  477. data/spec/unit/configurer/plugin_handler_spec.rb +56 -18
  478. data/spec/unit/configurer_spec.rb +68 -264
  479. data/spec/unit/confine/feature_spec.rb +1 -1
  480. data/spec/unit/confine_spec.rb +2 -8
  481. data/spec/unit/context/trusted_information_spec.rb +2 -6
  482. data/spec/unit/defaults_spec.rb +68 -55
  483. data/spec/unit/environments_spec.rb +68 -408
  484. data/spec/unit/face/node_spec.rb +11 -0
  485. data/spec/unit/face/plugin_spec.rb +73 -33
  486. data/spec/unit/file_bucket/dipper_spec.rb +2 -2
  487. data/spec/unit/file_bucket/file_spec.rb +1 -1
  488. data/spec/unit/file_serving/configuration/parser_spec.rb +15 -41
  489. data/spec/unit/file_serving/configuration_spec.rb +10 -26
  490. data/spec/unit/file_serving/fileset_spec.rb +0 -60
  491. data/spec/unit/file_serving/metadata_spec.rb +3 -3
  492. data/spec/unit/file_serving/terminus_helper_spec.rb +4 -11
  493. data/spec/unit/file_system_spec.rb +0 -22
  494. data/spec/unit/forge/module_release_spec.rb +7 -2
  495. data/spec/unit/functions/assert_type_spec.rb +1 -1
  496. data/spec/unit/functions/camelcase_spec.rb +1 -1
  497. data/spec/unit/functions/capitalize_spec.rb +1 -1
  498. data/spec/unit/functions/downcase_spec.rb +1 -1
  499. data/spec/unit/functions/empty_spec.rb +0 -10
  500. data/spec/unit/functions/logging_spec.rb +0 -1
  501. data/spec/unit/functions/lookup_spec.rb +0 -64
  502. data/spec/unit/functions/unwrap_spec.rb +0 -8
  503. data/spec/unit/functions/upcase_spec.rb +1 -1
  504. data/spec/unit/functions4_spec.rb +2 -2
  505. data/spec/unit/gettext/config_spec.rb +0 -12
  506. data/spec/unit/http/client_spec.rb +8 -66
  507. data/spec/unit/{network/resolver_spec.rb → http/dns_spec.rb} +3 -3
  508. data/spec/unit/http/external_client_spec.rb +4 -4
  509. data/spec/unit/{network/http → http}/factory_spec.rb +5 -30
  510. data/spec/unit/{network/http/session_spec.rb → http/pool_entry_spec.rb} +3 -3
  511. data/spec/unit/{network/http → http}/pool_spec.rb +12 -17
  512. data/spec/unit/{util/http_proxy_spec.rb → http/proxy_spec.rb} +2 -69
  513. data/spec/unit/http/resolver_spec.rb +13 -13
  514. data/spec/unit/http/service/compiler_spec.rb +0 -193
  515. data/spec/unit/http/service/file_server_spec.rb +3 -3
  516. data/spec/unit/http/service/puppetserver_spec.rb +34 -4
  517. data/spec/unit/http/service_spec.rb +0 -1
  518. data/spec/unit/http/session_spec.rb +16 -14
  519. data/spec/unit/{network/http → http}/site_spec.rb +3 -3
  520. data/spec/unit/indirector/catalog/compiler_spec.rb +10 -101
  521. data/spec/unit/indirector/catalog/rest_spec.rb +0 -8
  522. data/spec/unit/indirector/face_spec.rb +1 -0
  523. data/spec/unit/indirector/facts/facter_spec.rb +3 -0
  524. data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
  525. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +8 -26
  526. data/spec/unit/indirector/file_content/rest_spec.rb +0 -4
  527. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -4
  528. data/spec/unit/indirector/file_server_spec.rb +1 -15
  529. data/spec/unit/indirector/indirection_spec.rb +15 -18
  530. data/spec/unit/indirector/report/rest_spec.rb +2 -17
  531. data/spec/unit/indirector/request_spec.rb +0 -264
  532. data/spec/unit/indirector/resource/ral_spec.rb +75 -40
  533. data/spec/unit/indirector/rest_spec.rb +98 -752
  534. data/spec/unit/indirector/store_configs_spec.rb +7 -0
  535. data/spec/unit/indirector_spec.rb +2 -2
  536. data/spec/unit/interface/action_spec.rb +9 -0
  537. data/spec/unit/module_spec.rb +1 -15
  538. data/spec/unit/module_tool/applications/installer_spec.rb +0 -105
  539. data/spec/unit/network/authconfig_spec.rb +2 -129
  540. data/spec/unit/network/authorization_spec.rb +2 -55
  541. data/spec/unit/network/formats_spec.rb +4 -51
  542. data/spec/unit/network/http/api/indirected_routes_spec.rb +5 -92
  543. data/spec/unit/network/http/api/master/v3_spec.rb +28 -7
  544. data/spec/unit/network/http/api_spec.rb +10 -0
  545. data/spec/unit/network/http/connection_spec.rb +19 -41
  546. data/spec/unit/network/http/handler_spec.rb +0 -1
  547. data/spec/unit/network/http_pool_spec.rb +0 -4
  548. data/spec/unit/node/environment_spec.rb +33 -21
  549. data/spec/unit/node_spec.rb +2 -54
  550. data/spec/unit/parser/compiler_spec.rb +19 -3
  551. data/spec/unit/parser/functions/create_resources_spec.rb +2 -20
  552. data/spec/unit/parser/functions/fqdn_rand_spec.rb +1 -15
  553. data/spec/unit/parser/resource_spec.rb +8 -14
  554. data/spec/unit/parser/templatewrapper_spec.rb +5 -16
  555. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +4 -7
  556. data/spec/unit/pops/loaders/loaders_spec.rb +6 -21
  557. data/spec/unit/pops/parser/parse_application_spec.rb +4 -22
  558. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  559. data/spec/unit/pops/parser/parse_capabilities_spec.rb +8 -21
  560. data/spec/unit/pops/parser/parse_containers_spec.rb +11 -0
  561. data/spec/unit/pops/parser/parse_site_spec.rb +20 -24
  562. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -71
  563. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -59
  564. data/spec/unit/pops/serialization/to_stringified_spec.rb +0 -5
  565. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -18
  566. data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -18
  567. data/spec/unit/pops/types/type_calculator_spec.rb +6 -12
  568. data/spec/unit/pops/types/type_factory_spec.rb +1 -1
  569. data/spec/unit/pops/validator/validator_spec.rb +61 -46
  570. data/spec/unit/pops/visitor_spec.rb +1 -1
  571. data/spec/unit/property_spec.rb +0 -1
  572. data/spec/unit/provider/group/groupadd_spec.rb +2 -5
  573. data/spec/unit/provider/nameservice_spec.rb +64 -122
  574. data/spec/unit/provider/package/apt_spec.rb +23 -28
  575. data/spec/unit/provider/package/aptitude_spec.rb +1 -1
  576. data/spec/unit/provider/package/base_spec.rb +5 -6
  577. data/spec/unit/provider/package/dnfmodule_spec.rb +1 -10
  578. data/spec/unit/provider/package/dpkg_spec.rb +0 -48
  579. data/spec/unit/provider/package/gem_spec.rb +33 -1
  580. data/spec/unit/provider/package/nim_spec.rb +0 -42
  581. data/spec/unit/provider/package/pacman_spec.rb +12 -18
  582. data/spec/unit/provider/package/pip2_spec.rb +1 -1
  583. data/spec/unit/provider/package/pip3_spec.rb +1 -1
  584. data/spec/unit/provider/package/pip_spec.rb +12 -44
  585. data/spec/unit/provider/package/pkg_spec.rb +4 -29
  586. data/spec/unit/provider/package/pkgdmg_spec.rb +4 -0
  587. data/spec/unit/provider/package/puppet_gem_spec.rb +4 -3
  588. data/spec/unit/provider/package/puppetserver_gem_spec.rb +1 -1
  589. data/spec/unit/provider/parsedfile_spec.rb +0 -10
  590. data/spec/unit/provider/service/init_spec.rb +0 -1
  591. data/spec/unit/provider/service/launchd_spec.rb +0 -11
  592. data/spec/unit/provider/service/openwrt_spec.rb +1 -3
  593. data/spec/unit/provider/service/smf_spec.rb +401 -165
  594. data/spec/unit/provider/service/systemd_spec.rb +9 -54
  595. data/spec/unit/provider/service/windows_spec.rb +0 -203
  596. data/spec/unit/provider/user/aix_spec.rb +0 -105
  597. data/spec/unit/provider/user/directoryservice_spec.rb +36 -68
  598. data/spec/unit/provider/user/hpux_spec.rb +1 -1
  599. data/spec/unit/provider/user/pw_spec.rb +0 -2
  600. data/spec/unit/provider/user/useradd_spec.rb +5 -114
  601. data/spec/unit/provider_spec.rb +12 -22
  602. data/spec/unit/puppet_spec.rb +4 -12
  603. data/spec/unit/resource/catalog_spec.rb +2 -15
  604. data/spec/unit/resource/type_collection_spec.rb +2 -22
  605. data/spec/unit/resource/type_spec.rb +1 -1
  606. data/spec/unit/resource_spec.rb +12 -125
  607. data/spec/unit/settings/http_extra_headers_spec.rb +2 -4
  608. data/spec/unit/settings/integer_setting_spec.rb +42 -0
  609. data/spec/unit/settings/port_setting_spec.rb +31 -0
  610. data/spec/unit/settings/priority_setting_spec.rb +4 -4
  611. data/spec/unit/settings_spec.rb +79 -110
  612. data/spec/unit/ssl/base_spec.rb +37 -3
  613. data/spec/unit/ssl/certificate_request_spec.rb +21 -45
  614. data/spec/unit/ssl/certificate_spec.rb +2 -11
  615. data/spec/unit/ssl/ssl_provider_spec.rb +2 -5
  616. data/spec/unit/ssl/state_machine_spec.rb +5 -20
  617. data/spec/unit/ssl/verifier_spec.rb +0 -21
  618. data/spec/unit/transaction/additional_resource_generator_spec.rb +9 -3
  619. data/spec/unit/transaction/event_manager_spec.rb +11 -14
  620. data/spec/unit/transaction/report_spec.rb +0 -2
  621. data/spec/unit/transaction/resource_harness_spec.rb +2 -2
  622. data/spec/unit/transaction_spec.rb +55 -96
  623. data/spec/unit/type/exec_spec.rb +29 -76
  624. data/spec/unit/type/file/checksum_spec.rb +6 -6
  625. data/spec/unit/type/file/content_spec.rb +2 -1
  626. data/spec/unit/type/file/ensure_spec.rb +1 -1
  627. data/spec/unit/type/file/mode_spec.rb +1 -1
  628. data/spec/unit/type/file/selinux_spec.rb +5 -3
  629. data/spec/unit/type/file/source_spec.rb +4 -5
  630. data/spec/unit/type/file_spec.rb +18 -6
  631. data/spec/unit/type/group_spec.rb +6 -13
  632. data/spec/unit/type/package_spec.rb +1 -1
  633. data/spec/unit/type/resources_spec.rb +7 -7
  634. data/spec/unit/type/service_spec.rb +189 -87
  635. data/spec/unit/type/tidy_spec.rb +8 -24
  636. data/spec/unit/type/user_spec.rb +0 -45
  637. data/spec/unit/type_spec.rb +24 -4
  638. data/spec/unit/util/at_fork_spec.rb +2 -2
  639. data/spec/unit/util/autoload_spec.rb +1 -5
  640. data/spec/unit/util/backups_spec.rb +2 -3
  641. data/spec/unit/util/execution_spec.rb +11 -44
  642. data/spec/unit/util/inifile_spec.rb +14 -6
  643. data/spec/unit/util/log_spec.rb +7 -8
  644. data/spec/unit/util/logging_spec.rb +3 -5
  645. data/spec/unit/util/monkey_patches_spec.rb +0 -6
  646. data/spec/unit/util/posix_spec.rb +15 -363
  647. data/spec/unit/util/run_mode_spec.rb +21 -121
  648. data/spec/unit/util/selinux_spec.rb +68 -163
  649. data/spec/unit/util/storage_spec.rb +1 -3
  650. data/spec/unit/util/suidmanager_spec.rb +41 -44
  651. data/spec/unit/util/windows/sid_spec.rb +0 -41
  652. data/spec/unit/util/windows/string_spec.rb +1 -3
  653. data/spec/unit/util/yaml_spec.rb +0 -54
  654. data/spec/unit/util_spec.rb +6 -31
  655. data/tasks/generate_cert_fixtures.rake +3 -12
  656. data/tasks/parallel.rake +3 -3
  657. metadata +137 -226
  658. data/conf/auth.conf +0 -150
  659. data/ext/README.md +0 -13
  660. data/lib/puppet/application/cert.rb +0 -76
  661. data/lib/puppet/application/key.rb +0 -4
  662. data/lib/puppet/application/man.rb +0 -4
  663. data/lib/puppet/application/status.rb +0 -4
  664. data/lib/puppet/face/key.rb +0 -16
  665. data/lib/puppet/face/man.rb +0 -145
  666. data/lib/puppet/face/module/build.rb +0 -14
  667. data/lib/puppet/face/module/generate.rb +0 -14
  668. data/lib/puppet/face/module/search.rb +0 -103
  669. data/lib/puppet/face/status.rb +0 -51
  670. data/lib/puppet/facter_impl.rb +0 -96
  671. data/lib/puppet/ffi/posix/constants.rb +0 -14
  672. data/lib/puppet/ffi/posix/functions.rb +0 -24
  673. data/lib/puppet/ffi/posix.rb +0 -10
  674. data/lib/puppet/file_serving/mount/scripts.rb +0 -24
  675. data/lib/puppet/indirector/certificate/file.rb +0 -9
  676. data/lib/puppet/indirector/certificate/rest.rb +0 -18
  677. data/lib/puppet/indirector/certificate_request/file.rb +0 -9
  678. data/lib/puppet/indirector/certificate_request/memory.rb +0 -7
  679. data/lib/puppet/indirector/certificate_request/rest.rb +0 -11
  680. data/lib/puppet/indirector/file_content/http.rb +0 -22
  681. data/lib/puppet/indirector/key/file.rb +0 -46
  682. data/lib/puppet/indirector/key/memory.rb +0 -7
  683. data/lib/puppet/indirector/ssl_file.rb +0 -162
  684. data/lib/puppet/indirector/status/local.rb +0 -12
  685. data/lib/puppet/indirector/status/rest.rb +0 -27
  686. data/lib/puppet/indirector/status.rb +0 -3
  687. data/lib/puppet/module_tool/applications/searcher.rb +0 -29
  688. data/lib/puppet/network/auth_config_parser.rb +0 -90
  689. data/lib/puppet/network/authstore.rb +0 -283
  690. data/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
  691. data/lib/puppet/network/http/api/master/v3/environment.rb +0 -88
  692. data/lib/puppet/network/http/base_pool.rb +0 -36
  693. data/lib/puppet/network/http/compression.rb +0 -127
  694. data/lib/puppet/network/http/connection_adapter.rb +0 -184
  695. data/lib/puppet/network/http/nocache_pool.rb +0 -28
  696. data/lib/puppet/network/rest_controller.rb +0 -2
  697. data/lib/puppet/network/rights.rb +0 -210
  698. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -66
  699. data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -22
  700. data/lib/puppet/parser/environment_compiler.rb +0 -202
  701. data/lib/puppet/pops/types/enumeration.rb +0 -16
  702. data/lib/puppet/resource/capability_finder.rb +0 -154
  703. data/lib/puppet/rest/errors.rb +0 -15
  704. data/lib/puppet/rest/response.rb +0 -35
  705. data/lib/puppet/rest/route.rb +0 -85
  706. data/lib/puppet/rest/routes.rb +0 -135
  707. data/lib/puppet/settings/alias_setting.rb +0 -37
  708. data/lib/puppet/ssl/host.rb +0 -505
  709. data/lib/puppet/ssl/key.rb +0 -61
  710. data/lib/puppet/ssl/validator/default_validator.rb +0 -209
  711. data/lib/puppet/ssl/validator/no_validator.rb +0 -22
  712. data/lib/puppet/ssl/validator.rb +0 -61
  713. data/lib/puppet/ssl/verifier_adapter.rb +0 -58
  714. data/lib/puppet/status.rb +0 -40
  715. data/lib/puppet/util/connection.rb +0 -88
  716. data/lib/puppet/util/fact_dif.rb +0 -81
  717. data/lib/puppet/util/ssl.rb +0 -83
  718. data/lib/puppet/util/windows/api_types.rb +0 -309
  719. data/lib/puppet/util/windows/monkey_patches/dir.rb +0 -40
  720. data/lib/puppet/vendor/load_pathspec.rb +0 -1
  721. data/lib/puppet/vendor/pathspec/CHANGELOG.md +0 -2
  722. data/lib/puppet/vendor/pathspec/LICENSE +0 -201
  723. data/lib/puppet/vendor/pathspec/PUPPET_README.md +0 -6
  724. data/lib/puppet/vendor/pathspec/README.md +0 -53
  725. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
  726. data/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
  727. data/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
  728. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
  729. data/man/man8/puppet-key.8 +0 -126
  730. data/man/man8/puppet-man.8 +0 -76
  731. data/man/man8/puppet-status.8 +0 -108
  732. data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -92
  733. data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
  734. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
  735. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
  736. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
  737. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
  738. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
  739. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
  740. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
  741. data/spec/fixtures/ssl/oid-key.pem +0 -117
  742. data/spec/fixtures/ssl/oid.pem +0 -69
  743. data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
  744. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
  745. data/spec/integration/application/resource_spec.rb +0 -64
  746. data/spec/integration/application/ssl_spec.rb +0 -20
  747. data/spec/integration/l10n/compiler_spec.rb +0 -37
  748. data/spec/integration/network/authconfig_spec.rb +0 -256
  749. data/spec/integration/util/windows/monkey_patches/dir_spec.rb +0 -11
  750. data/spec/shared_contexts/l10n.rb +0 -27
  751. data/spec/unit/application/man_spec.rb +0 -52
  752. data/spec/unit/capability_spec.rb +0 -414
  753. data/spec/unit/face/key_spec.rb +0 -9
  754. data/spec/unit/face/module/search_spec.rb +0 -231
  755. data/spec/unit/face/status_spec.rb +0 -9
  756. data/spec/unit/facter_impl_spec.rb +0 -31
  757. data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
  758. data/spec/unit/indirector/certificate/file_spec.rb +0 -14
  759. data/spec/unit/indirector/certificate/rest_spec.rb +0 -61
  760. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -14
  761. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -25
  762. data/spec/unit/indirector/key/file_spec.rb +0 -78
  763. data/spec/unit/indirector/ssl_file_spec.rb +0 -305
  764. data/spec/unit/indirector/status/local_spec.rb +0 -10
  765. data/spec/unit/indirector/status/rest_spec.rb +0 -50
  766. data/spec/unit/module_tool/applications/searcher_spec.rb +0 -38
  767. data/spec/unit/network/auth_config_parser_spec.rb +0 -115
  768. data/spec/unit/network/authstore_spec.rb +0 -407
  769. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +0 -57
  770. data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -185
  771. data/spec/unit/network/http/compression_spec.rb +0 -240
  772. data/spec/unit/network/http/nocache_pool_spec.rb +0 -64
  773. data/spec/unit/network/http_spec.rb +0 -9
  774. data/spec/unit/network/rights_spec.rb +0 -439
  775. data/spec/unit/parser/environment_compiler_spec.rb +0 -730
  776. data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +0 -20
  777. data/spec/unit/pops/types/enumeration_spec.rb +0 -51
  778. data/spec/unit/resource/capability_finder_spec.rb +0 -148
  779. data/spec/unit/rest/route_spec.rb +0 -132
  780. data/spec/unit/ssl/host_spec.rb +0 -645
  781. data/spec/unit/ssl/key_spec.rb +0 -173
  782. data/spec/unit/ssl/validator_spec.rb +0 -278
  783. data/spec/unit/status_spec.rb +0 -45
  784. data/spec/unit/util/ssl_spec.rb +0 -91
@@ -0,0 +1,310 @@
1
+ %{!?ruby_sitelibdir: %define ruby_sitelibdir %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"]')}
2
+ %define pbuild %{_builddir}/%{name}-%{version}
3
+ %define confdir conf/suse
4
+
5
+ Summary: A network tool for managing many disparate systems
6
+ Name: puppet
7
+ Version: 3.0.0
8
+ Release: 1%{?dist}
9
+ License: Apache 2.0
10
+ Group: Productivity/Networking/System
11
+
12
+ URL: https://puppetlabs.com/projects/puppet/
13
+ Source0: https://puppetlabs.com/downloads/puppet/%{name}-%{version}.tar.gz
14
+
15
+ PreReq: %{insserv_prereq} %{fillup_prereq}
16
+ Requires: ruby >= 1.8.7
17
+ Requires: facter >= 1:1.7.0
18
+ Requires: cron
19
+ Requires: logrotate
20
+ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
21
+ BuildRequires: ruby >= 1.8.7
22
+ BuildRequires: klogd
23
+ BuildRequires: sysconfig
24
+
25
+ %description
26
+ Puppet lets you centrally manage every important aspect of your system using a
27
+ cross-platform specification language that manages all the separate elements
28
+ normally aggregated in different files, like users, cron jobs, and hosts,
29
+ along with obviously discrete elements like packages, services, and files.
30
+
31
+ %package server
32
+ Group: Productivity/Networking/System
33
+ Summary: Server for the puppet system management tool
34
+ Requires: puppet = %{version}-%{release}
35
+
36
+ %description server
37
+ Provides the central puppet server daemon which provides manifests to clients.
38
+ The server can also function as a certificate authority and file server.
39
+
40
+ %prep
41
+ %setup -q -n %{name}-%{version}
42
+
43
+ %build
44
+ for f in bin/*; do
45
+ sed -i -e '1s,^#!.*ruby$,#!/usr/bin/ruby,' $f
46
+ done
47
+
48
+ %install
49
+ %{__install} -d -m0755 %{buildroot}%{_bindir}
50
+ %{__install} -d -m0755 %{buildroot}%{_confdir}
51
+ %{__install} -d -m0755 %{buildroot}%{ruby_sitelibdir}
52
+ %{__install} -d -m0755 %{buildroot}%{_sysconfdir}/puppet/manifests
53
+ %{__install} -d -m0755 %{buildroot}%{_docdir}/%{name}-%{version}
54
+ %{__install} -d -m0755 %{buildroot}%{_localstatedir}/lib/puppet
55
+ %{__install} -d -m0755 %{buildroot}%{_localstatedir}/run/puppet
56
+ %{__install} -d -m0755 %{buildroot}%{_localstatedir}/log/puppet
57
+ %{__install} -Dp -m0755 %{pbuild}/bin/* %{buildroot}%{_bindir}
58
+ %{__install} -Dp -m0644 %{pbuild}/lib/puppet.rb %{buildroot}%{ruby_sitelibdir}/puppet.rb
59
+ %{__cp} -a %{pbuild}/lib/puppet %{buildroot}%{ruby_sitelibdir}
60
+ find %{buildroot}%{ruby_sitelibdir} -type f -perm +ugo+x -exec chmod a-x '{}' \;
61
+ %{__cp} -a %{pbuild}/ext/redhat/client.sysconfig %{buildroot}%{_confdir}/client.sysconfig
62
+ %{__install} -Dp -m0644 %{buildroot}%{_confdir}/client.sysconfig %{buildroot}/var/adm/fillup-templates/sysconfig.puppet
63
+ %{__cp} -a %{pbuild}/ext/redhat/server.sysconfig %{buildroot}%{_confdir}/server.sysconfig
64
+ %{__install} -Dp -m0644 %{buildroot}%{_confdir}/server.sysconfig %{buildroot}/var/adm/fillup-templates/sysconfig.puppetmaster
65
+ %{__cp} -a %{pbuild}/ext/redhat/fileserver.conf %{buildroot}%{_confdir}/fileserver.conf
66
+ %{__install} -Dp -m0644 %{buildroot}%{_confdir}/fileserver.conf %{buildroot}%{_sysconfdir}/puppet/fileserver.conf
67
+ %{__cp} -a %{pbuild}/ext/redhat/puppet.conf %{buildroot}%{_confdir}/puppet.conf
68
+ %{__install} -Dp -m0644 %{buildroot}%{_confdir}/puppet.conf %{buildroot}%{_sysconfdir}/puppet/puppet.conf
69
+ %{__cp} -a %{pbuild}/ext/redhat/logrotate %{buildroot}%{_confdir}/logrotate
70
+ %{__install} -Dp -m0644 %{buildroot}%{_confdir}/logrotate %{buildroot}%{_sysconfdir}/logrotate.d/puppet
71
+ %{__install} -Dp -m0755 %{confdir}/client.init %{buildroot}%{_initrddir}/puppet
72
+ %{__install} -Dp -m0755 %{confdir}/server.init %{buildroot}%{_initrddir}/puppetmaster
73
+
74
+ %files
75
+ %defattr(-, root, root, 0755)
76
+ %{_bindir}/puppet
77
+ %{ruby_sitelibdir}/*
78
+ %{_initrddir}/puppet
79
+ /var/adm/fillup-templates/sysconfig.puppet
80
+ %config(noreplace) %{_sysconfdir}/puppet/puppet.conf
81
+ %doc COPYING LICENSE README examples
82
+ %config(noreplace) %{_sysconfdir}/logrotate.d/puppet
83
+ %dir %{_sysconfdir}/puppet
84
+ # These need to be owned by puppet so the server can
85
+ # write to them
86
+ %attr(-, puppet, puppet) %{_localstatedir}/run/puppet
87
+ %attr(-, puppet, puppet) %{_localstatedir}/log/puppet
88
+ %attr(-, puppet, puppet) %{_localstatedir}/lib/puppet
89
+
90
+ %files server
91
+ %defattr(-, root, root, 0755)
92
+ %{_initrddir}/puppetmaster
93
+ %config(noreplace) %{_sysconfdir}/puppet/*
94
+ %exclude %{_sysconfdir}/puppet/puppet.conf
95
+ /var/adm/fillup-templates/sysconfig.puppetmaster
96
+ %dir %{_sysconfdir}/puppet
97
+
98
+ %pre
99
+ /usr/sbin/groupadd -r puppet 2>/dev/null || :
100
+ /usr/sbin/useradd -g puppet -c "Puppet" \
101
+ -s /sbin/nologin -r -d /var/puppet puppet 2> /dev/null || :
102
+
103
+ %post
104
+ %{fillup_and_insserv -y puppet}
105
+
106
+ %post server
107
+ %{fillup_and_insserv -n -y puppetmaster}
108
+
109
+ %preun
110
+ %stop_on_removal puppet
111
+
112
+ %preun server
113
+ %stop_on_removal puppetmaster
114
+
115
+ %postun
116
+ %restart_on_update puppet
117
+ %{insserv_cleanup}
118
+
119
+ %postun server
120
+ %restart_on_update puppetmaster
121
+ %{insserv_cleanup}
122
+
123
+ %clean
124
+ %{__rm} -rf %{buildroot}
125
+
126
+ %changelog
127
+ * Mon Oct 08 2012 Matthaus Owens <matthaus@puppetlabs.com> - 3.0.0-1
128
+ - Update for deprecated binary removal, ruby version requirements
129
+
130
+ * Fri Aug 24 2012 Eric Sorenson <eric0@puppetlabs.com> - 3.0.0-0.1rc4
131
+ - Update facter version dependency
132
+ - Update for 3.0.0-0.1rc4
133
+
134
+ * Wed May 02 2012 Moses Mendoza <moses@puppetlabs.com> - 2.7.14-1
135
+ - Update for 2.7.14
136
+
137
+ * Mon Mar 12 2012 Michael Stahnke <stahnma@puppetlabs.com> - 2.7.12-1
138
+ - Update for 2.7.12
139
+
140
+ * Wed Jan 25 2012 Michael Stahnke <stahnma@puppetlabs.com> - 2.7.10-1
141
+ - Update for 2.7.10
142
+
143
+ * Wed Nov 30 2011 Michael Stahnke <stahnma@puppetlabs.com> - 2.7.8-0.1rc1
144
+ - Update for 2.7.8rc1
145
+
146
+ * Mon Nov 21 2011 Michael Stahnke <stahnma@puppetlabs.com> - 2.7.7-1
147
+ - Release 2.7.7
148
+
149
+ * Wed Jul 06 2011 Michael Stahnke <stahnma@puppetlabs.com> - 2.7.2-0.1rc1
150
+ - Updating to 2.7.2rc1
151
+
152
+ * Tue Sep 14 2010 Ben Kevan <ben.kevan@gmail.com> - 2.6.1
153
+ - New version to 2.6.1
154
+ - Add client.init and server.init from source since it's now included in the packages
155
+ - Change BuildRequires Ruby version to match Requires Ruby version
156
+ - Removed ruby-env patch, replaced with sed in prep
157
+ - Update urls to puppetlabs.com
158
+
159
+ * Wed Jul 21 2010 Ben Kevan <ben.kevan@gmail.com> - 2.6.0
160
+ - New version and ruby version bump
161
+ - Add puppetdoc to %_bindir (unknown why original suse package, excluded or forgot to add)
162
+ - Corrected patch for ruby environment
163
+ - Move binaries back to the correct directories
164
+
165
+ * Wed Jul 14 2010 Ben Kevan <ben.kevan@gmail.com> - 0.25.5
166
+ - New version.
167
+ - Use original client, server.init names
168
+ - Revert to puppetmaster
169
+ - Fixed client.init and server.init and included $null and Should-Stop for both
170
+
171
+ * Tue Mar 2 2010 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.25.4
172
+ - New version.
173
+
174
+ * Sun Aug 9 2009 Noah Fontes <nfontes@transtruct.org>
175
+ - Fix build on SLES 9.
176
+ - Enable puppet and puppet-server services by default.
177
+
178
+ * Sat Aug 8 2009 Noah Fontes <nfontes@transtruct.org>
179
+ - Fix a lot of relevant warnings from rpmlint.
180
+ - Build on OpenSUSE 11.1 correctly.
181
+ - Rename puppetmaster init scripts to puppet-server to correspond to the package name.
182
+
183
+ * Wed Apr 22 2009 Leo Eraly <leo@unstable.be> - 0.24.8
184
+ - New version.
185
+
186
+ * Tue Dec 9 2008 Leo Eraly <leo@unstable.be> - 0.24.6
187
+ - New version.
188
+
189
+ * Fri Sep 5 2008 Leo Eraly <leo@unstable.be> - 0.24.5
190
+ - New version.
191
+
192
+ * Fri Jun 20 2008 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.24.4
193
+ - Removed symlinks to old configuration files
194
+
195
+ * Fri Dec 14 2007 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.24.0
196
+ - New version.
197
+
198
+ * Fri Jun 29 2007 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.23.0
199
+ - New version.
200
+
201
+ * Wed May 2 2007 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.22.4
202
+ - New version. Includes provider for rug package manager.
203
+
204
+ * Wed Apr 25 2007 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.22.3
205
+ - New version. Added links /sbin/rcpuppet and /sbin/rcpuppetmaster
206
+
207
+ * Sun Jan 7 2007 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.22.0
208
+ - version bump
209
+
210
+ * Tue Oct 3 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.19.3-3
211
+ - Made package arch dependant.
212
+
213
+ * Sat Sep 23 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.19.3-1
214
+ - New version
215
+
216
+ * Sun Sep 17 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.19.1-1
217
+ - New version
218
+
219
+ * Tue Aug 30 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.19.0-1
220
+ - New version
221
+ - No need to patch anymore :-), since my changes went into official release.
222
+
223
+ * Tue Aug 3 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.18.4-3
224
+ - Replaced puppet-bin.patch with %build section from David's spec
225
+
226
+ * Tue Aug 1 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.18.4-2
227
+ - Added supprot for enabling services in SuSE
228
+
229
+ * Tue Aug 1 2006 Martin Vuk <martin.vuk@fri.uni-lj.si> - 0.18.4-1
230
+ - New version and support for SuSE
231
+
232
+ * Wed Jul 5 2006 David Lutterkort <dlutter@redhat.com> - 0.18.2-1
233
+ - New version
234
+
235
+ * Wed Jun 28 2006 David Lutterkort <dlutter@redhat.com> - 0.18.1-1
236
+ - Removed lsb-config.patch and yumrepo.patch since they are upstream now
237
+
238
+ * Mon Jun 19 2006 David Lutterkort <dlutter@redhat.com> - 0.18.0-1
239
+ - Patch config for LSB compliance (lsb-config.patch)
240
+ - Changed config moves /var/puppet to /var/lib/puppet, /etc/puppet/ssl
241
+ to /var/lib/puppet, /etc/puppet/clases.txt to /var/lib/puppet/classes.txt,
242
+ /etc/puppet/localconfig.yaml to /var/lib/puppet/localconfig.yaml
243
+
244
+ * Fri May 19 2006 David Lutterkort <dlutter@redhat.com> - 0.17.2-1
245
+ - Added /usr/bin/puppetrun to server subpackage
246
+ - Backported patch for yumrepo type (yumrepo.patch)
247
+
248
+ * Wed May 3 2006 David Lutterkort <dlutter@redhat.com> - 0.16.4-1
249
+ - Rebuilt
250
+
251
+ * Fri Apr 21 2006 David Lutterkort <dlutter@redhat.com> - 0.16.0-1
252
+ - Fix default file permissions in server subpackage
253
+ - Run puppetmaster as user puppet
254
+ - rebuilt for 0.16.0
255
+
256
+ * Mon Apr 17 2006 David Lutterkort <dlutter@redhat.com> - 0.15.3-2
257
+ - Don't create empty log files in post-install scriptlet
258
+
259
+ * Fri Apr 7 2006 David Lutterkort <dlutter@redhat.com> - 0.15.3-1
260
+ - Rebuilt for new version
261
+
262
+ * Wed Mar 22 2006 David Lutterkort <dlutter@redhat.com> - 0.15.1-1
263
+ - Patch0: Run puppetmaster as root; running as puppet is not ready
264
+ for primetime
265
+
266
+ * Mon Mar 13 2006 David Lutterkort <dlutter@redhat.com> - 0.15.0-1
267
+ - Commented out noarch; requires fix for bz184199
268
+
269
+ * Mon Mar 6 2006 David Lutterkort <dlutter@redhat.com> - 0.14.0-1
270
+ - Added BuildRequires for ruby
271
+
272
+ * Wed Mar 1 2006 David Lutterkort <dlutter@redhat.com> - 0.13.5-1
273
+ - Removed use of fedora-usermgmt. It is not required for Fedora Extras and
274
+ makes it unnecessarily hard to use this rpm outside of Fedora. Just
275
+ allocate the puppet uid/gid dynamically
276
+
277
+ * Sun Feb 19 2006 David Lutterkort <dlutter@redhat.com> - 0.13.0-4
278
+ - Use fedora-usermgmt to create puppet user/group. Use uid/gid 24. Fixed
279
+ problem with listing fileserver.conf and puppetmaster.conf twice
280
+
281
+ * Wed Feb 8 2006 David Lutterkort <dlutter@redhat.com> - 0.13.0-3
282
+ - Fix puppetd.conf
283
+
284
+ * Wed Feb 8 2006 David Lutterkort <dlutter@redhat.com> - 0.13.0-2
285
+ - Changes to run puppetmaster as user puppet
286
+
287
+ * Mon Feb 6 2006 David Lutterkort <dlutter@redhat.com> - 0.13.0-1
288
+ - Don't mark initscripts as config files
289
+
290
+ * Mon Feb 6 2006 David Lutterkort <dlutter@redhat.com> - 0.12.0-2
291
+ - Fix BuildRoot. Add dist to release
292
+
293
+ * Tue Jan 17 2006 David Lutterkort <dlutter@redhat.com> - 0.11.0-1
294
+ - Rebuild
295
+
296
+ * Thu Jan 12 2006 David Lutterkort <dlutter@redhat.com> - 0.10.2-1
297
+ - Updated for 0.10.2 Fixed minor kink in how Source is given
298
+
299
+ * Wed Jan 11 2006 David Lutterkort <dlutter@redhat.com> - 0.10.1-3
300
+ - Added basic fileserver.conf
301
+
302
+ * Wed Jan 11 2006 David Lutterkort <dlutter@redhat.com> - 0.10.1-1
303
+ - Updated. Moved installation of library files to sitelibdir. Pulled
304
+ initscripts into separate files. Folded tools rpm into server
305
+
306
+ * Thu Nov 24 2005 Duane Griffin <d.griffin@psenterprise.com>
307
+ - Added init scripts for the client
308
+
309
+ * Wed Nov 23 2005 Duane Griffin <d.griffin@psenterprise.com>
310
+ - First packaging
@@ -0,0 +1,173 @@
1
+ #!/bin/bash
2
+ # puppetmaster This shell script enables the puppetmaster server.
3
+ #
4
+ # Author: Duane Griffin <d.griffin@psenterprise.com>
5
+ # Martin Vuk <martin.vuk@fri.uni-lj.si> (SuSE support)
6
+ #
7
+ # chkconfig: - 65 45
8
+ #
9
+ # description: Server for the puppet system management tool.
10
+ # processname: puppetmaster
11
+
12
+ ### BEGIN INIT INFO
13
+ # Provides: puppetmaster
14
+ # Required-Start: $local_fs $remote_fs $network $syslog
15
+ # Should-Start: puppetmaster
16
+ # Required-Stop: $local_fs $remote_fs $network $syslog
17
+ # Should-Stop: puppetmaster
18
+ # Default-Start: 3 5
19
+ # Default-Stop: 0 1 2 6
20
+ # Short-Description: puppetmaster
21
+ # Description: Server for the puppet system management tool.
22
+ ### END INIT INFO
23
+
24
+ # Shell functions sourced from /etc/rc.status:
25
+ # rc_check check and set local and overall rc status
26
+ # rc_status check and set local and overall rc status
27
+ # rc_status -v ditto but be verbose in local rc status
28
+ # rc_status -v -r ditto and clear the local rc status
29
+ # rc_failed set local and overall rc status to failed
30
+ # rc_reset clear local rc status (overall remains)
31
+ # rc_exit exit appropriate to overall rc status
32
+
33
+ lockfile=/var/lock/subsys/puppetmaster
34
+ pidfile=/var/run/puppetlabs/master.pid
35
+
36
+ # Source function library.
37
+ [ -f /etc/rc.status ] && . /etc/rc.status
38
+
39
+ if [ -f /etc/sysconfig/puppetmaster ]; then
40
+ . /etc/sysconfig/puppetmaster
41
+ fi
42
+
43
+ PUPPETMASTER_OPTS="master "
44
+ [ -n "$PUPPETMASTER_MANIFEST" ] && PUPPETMASTER_OPTS="${PUPPETMASTER_OPTS} --manifest=${PUPPETMASTER_MANIFEST}"
45
+ [ -n "$PUPPETMASTER_PORTS" ] && PUPPETMASTER_OPTS="${PUPPETMASTER_OPTS} --masterport=${PUPPETMASTER_PORTS[0]}"
46
+ [ -n "$PUPPETMASTER_LOG" ] && PUPPETMASTER_OPTS="${PUPPETMASTER_OPTS} --logdest ${PUPPETMASTER_LOG}"
47
+ PUPPETMASTER_OPTS="${PUPPETMASTER_OPTS} \
48
+ ${PUPPETMASTER_EXTRA_OPTS}"
49
+
50
+ RETVAL=0
51
+
52
+ PUPPETMASTER=/usr/bin/puppet
53
+
54
+ mongrel_warning="The mongrel servertype is no longer built-in to Puppet. It appears
55
+ as though mongrel is being used, as the number of ports is greater than
56
+ one. Starting the puppetmaster service will not behave as expected until this
57
+ is resolved. Only the first port has been used in the service. These settings
58
+ are defined at /etc/sysconfig/puppetmaster"
59
+
60
+ # Warn about removed and unsupported mongrel servertype
61
+ if [ -n "$PUPPETMASTER_PORTS" ] && [ ${#PUPPETMASTER_PORTS[@]} -gt 1 ]; then
62
+ echo $mongrel_warning
63
+ echo
64
+ fi
65
+
66
+ start() {
67
+ echo -n $"Starting puppetmaster: "
68
+
69
+ echo
70
+ return $RETVAL
71
+ }
72
+
73
+ # First reset status of this service
74
+ rc_reset
75
+
76
+ # Return values acc. to LSB for all commands but status:
77
+ # 0 - success
78
+ # 1 - misc error
79
+ # 2 - invalid or excess args
80
+ # 3 - unimplemented feature (e.g. reload)
81
+ # 4 - insufficient privilege
82
+ # 5 - program not installed
83
+ # 6 - program not configured
84
+ #
85
+ # Note that starting an already running service, stopping
86
+ # or restarting a not-running service as well as the restart
87
+ # with force-reload (in case signalling is not supported) are
88
+ # considered a success.
89
+
90
+ case "$1" in
91
+ start)
92
+ echo -n "Starting puppetmaster services."
93
+ ## Start daemon with startproc(8). If this fails
94
+ ## the echo return value is set appropriate.
95
+
96
+ # startproc should return 0, even if service is
97
+ # already running to match LSB spec.
98
+ # Confirm the manifest exists
99
+ if [ -r $PUPPETMASTER_MANIFEST ]; then
100
+ startproc -p ${pidfile} $PUPPETMASTER $PUPPETMASTER_OPTS && touch "$lockfile"
101
+ else
102
+ rc_failed
103
+ echo "Manifest does not exist: $PUPPETMASTER_MANIFEST"
104
+ fi
105
+ # Remember status and be verbose
106
+ rc_status -v
107
+ ;;
108
+ stop)
109
+ echo -n "Shutting down puppetmaster:"
110
+ ## Stop daemon with killproc(8) and if this fails
111
+ ## set echo the echo return value.
112
+
113
+ killproc -QUIT -p ${pidfile} $PUPPETMASTER && rm -f ${lockfile} ${pidfile}
114
+
115
+ # Remember status and be verbose
116
+ rc_status -v
117
+ ;;
118
+ try-restart|condrestart)
119
+ ## Stop the service and if this succeeds (i.e. the
120
+ ## service was running before), start it again.
121
+ $0 status >/dev/null && $0 restart
122
+
123
+ # Remember status and be quiet
124
+ rc_status
125
+ ;;
126
+ restart)
127
+ ## Stop the service and regardless of whether it was
128
+ ## running or not, start it again.
129
+ $0 stop
130
+ $0 start
131
+
132
+ # Remember status and be quiet
133
+ rc_status
134
+ ;;
135
+ force-reload)
136
+ ## Signal the daemon to reload its config. Most daemons
137
+ ## do this on signal 1 (SIGHUP).
138
+ ## If it does not support it, restart.
139
+
140
+ echo -n "Reload service puppet"
141
+ ## if it supports it:
142
+ killproc -HUP -p ${pidfile} $PUPPETMASTER
143
+ rc_status -v
144
+ ;;
145
+ reload)
146
+ ## Like force-reload, but if daemon does not support
147
+ ## signalling, do nothing (!)
148
+
149
+ # If it supports signalling:
150
+ echo -n "Reload puppet services."
151
+ killproc -HUP -p ${pidfile} $PUPPETMASTER
152
+ rc_status -v
153
+ ;;
154
+ status)
155
+ echo -n "Checking for service puppetmaster: "
156
+ ## Check status with checkproc(8), if process is running
157
+ ## checkproc will return with exit status 0.
158
+
159
+ # Status has a slightly different for the status command:
160
+ # 0 - service running
161
+ # 1 - service dead, but /var/run/ pid file exists
162
+ # 2 - service dead, but /var/lock/ lock file exists
163
+ # 3 - service not running
164
+
165
+ # NOTE: checkproc returns LSB compliant status values.
166
+ checkproc -p ${pidfile} $PUPPETMASTER
167
+ rc_status -v
168
+ ;;
169
+ *)
170
+ echo "Usage: $0 {start|stop|status|try-restart|condrestart|restart|force-reload|reload}"
171
+ exit 1
172
+ esac
173
+ rc_exit
@@ -1,22 +1,23 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require 'fileutils'
4
- require 'win32/daemon'
5
- require 'win32/dir'
6
- require 'win32/process'
4
+ require 'puppet/util/windows/daemon'
7
5
 
8
6
  # This file defines utilities for logging to eventlog. While it lives inside
9
7
  # Puppet, it is completely independent and loads no other parts of Puppet, so we
10
8
  # can safely require *just* it.
11
9
  require 'puppet/util/windows/eventlog'
12
10
 
13
- class WindowsDaemon < Win32::Daemon
11
+ # monkey patches ruby Process to add .create method
12
+ require 'puppet/util/windows/monkey_patches/process'
13
+
14
+ class WindowsDaemon < Puppet::Util::Windows::Daemon
14
15
  CREATE_NEW_CONSOLE = 0x00000010
15
16
 
16
17
  @run_thread = nil
17
18
  @LOG_TO_FILE = false
18
19
  @loglevel = 0
19
- LOG_FILE = File.expand_path(File.join(Dir::COMMON_APPDATA, 'PuppetLabs', 'puppet', 'var', 'log', 'windows.log'))
20
+ LOG_FILE = File.expand_path(File.join(ENV['ALLUSERSPROFILE'], 'PuppetLabs', 'puppet', 'var', 'log', 'windows.log'))
20
21
  LEVELS = [:debug, :info, :notice, :warning, :err, :alert, :emerg, :crit]
21
22
  LEVELS.each do |level|
22
23
  define_method("log_#{level}") do |msg|
data/ext/yaml_nodes.rb ADDED
@@ -0,0 +1,105 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # = Synopsis
4
+ #
5
+ # Use YAML files to provide external node support.
6
+ #
7
+ # = Usage
8
+ #
9
+ # yaml-nodes <host>
10
+ #
11
+ # = Description
12
+ #
13
+ # This is a simple example external node script. It allows you to maintain your
14
+ # node information in yaml files, and it will find a given node's file and produce
15
+ # it on stdout. It has simple inheritance, in that a node can specify a parent
16
+ # node, and the node will inherit that parent's classes and parameters.
17
+ #
18
+ # = Options
19
+ #
20
+ # help::
21
+ # Print this help message
22
+ #
23
+ # yamldir::
24
+ # Specify where the yaml is found. Defaults to 'yaml' in the current directory.
25
+ #
26
+ # = License
27
+ # Copyright 2011 Luke Kanies
28
+ #
29
+ # Licensed under the Apache License, Version 2.0 (the "License");
30
+ # you may not use this file except in compliance with the License.
31
+ # You may obtain a copy of the License at
32
+ #
33
+ # https://www.apache.org/licenses/LICENSE-2.0
34
+ #
35
+ # Unless required by applicable law or agreed to in writing, software
36
+ # distributed under the License is distributed on an "AS IS" BASIS,
37
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
38
+ # See the License for the specific language governing permissions and
39
+ # limitations under the License.
40
+
41
+ require 'yaml'
42
+ require 'optparse'
43
+
44
+ BASEDIR = Dir.chdir(File.dirname(__FILE__) + "/..") { Dir.getwd }
45
+
46
+ options = {:yamldir => File.join(BASEDIR, "yaml")}
47
+ OptionParser.new do |opts|
48
+ opts.banner = "Usage: yaml-nodes [options] <host>"
49
+
50
+ opts.on("-y dir", "--yamldir dir", "Specify the directory with the YAML files") do |arg|
51
+ raise "YAML directory #{arg} does not exist or is not a directory" unless FileTest.directory?(arg)
52
+ options[:yamldir] = arg
53
+ end
54
+
55
+ opts.on("-h", "--help", "Print this help") do
56
+ puts opts.help
57
+ exit(0)
58
+ end
59
+ end.parse!
60
+
61
+ # Read in a pure yaml representation of our node.
62
+ def read_node(node)
63
+ nodefile = File.join(YAMLDIR, "#{node}.yaml")
64
+ if FileTest.exist?(nodefile)
65
+ return YAML.load_file(nodefile)
66
+ else
67
+ raise "Could not find information for #{node}"
68
+ end
69
+ end
70
+
71
+ node = ARGV[0]
72
+
73
+ info = read_node(node)
74
+
75
+ # Iterate over any provided parents, merging in there information.
76
+ parents_seen = []
77
+ while parent = info["parent"] #rubocop:disable Lint/AssignmentInCondition
78
+ raise "Found inheritance loop with parent #{parent}" if parents_seen.include?(parent)
79
+
80
+ parents_seen << parent
81
+
82
+ info.delete("parent")
83
+
84
+ parent_info = read_node(parent)
85
+
86
+ # Include any parent classes in our list.
87
+ if parent_info["classes"]
88
+ info["classes"] += parent_info["classes"]
89
+ info["classes"].uniq!
90
+ end
91
+
92
+ # And inherit parameters from our parent, while preferring our own values.
93
+ if parent_info["parameters"]
94
+ # When using Hash#merge, the hash being merged in wins, and we
95
+ # want the subnode parameters to be the parent node parameters.
96
+ info["parameters"] = parent_info["parameters"].merge(info["parameters"])
97
+ end
98
+
99
+ # Copy over any parent node name.
100
+ if parent_info["parent"]
101
+ info["parent"] = parent_info["parent"]
102
+ end
103
+ end
104
+
105
+ puts YAML.dump(info)