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
data/conf/auth.conf DELETED
@@ -1,150 +0,0 @@
1
- # This is the default auth.conf file, which implements the default rules
2
- # used by the puppet master. (That is, the rules below will still apply
3
- # even if this file is deleted.)
4
- #
5
- # The ACLs are evaluated in top-down order. More specific stanzas should
6
- # be towards the top of the file and more general ones at the bottom;
7
- # otherwise, the general rules may "steal" requests that should be
8
- # governed by the specific rules.
9
- #
10
- # See https://puppet.com/docs/puppet/latest/config_file_auth.html
11
- # for a more complete description of auth.conf's behavior.
12
- #
13
- # Supported syntax:
14
- # Each stanza in auth.conf starts with a path to match, followed
15
- # by optional modifiers, and finally, a series of allow or deny
16
- # directives.
17
- #
18
- # Example Stanza
19
- # ---------------------------------
20
- # path /path/to/resource # simple prefix match
21
- # # path ~ regex # alternately, regex match
22
- # [environment envlist]
23
- # [method methodlist]
24
- # [auth[enthicated] {yes|no|on|off|any}]
25
- # allow [host|backreference|*|regex]
26
- # deny [host|backreference|*|regex]
27
- # allow_ip [ip|cidr|ip_wildcard|*]
28
- # deny_ip [ip|cidr|ip_wildcard|*]
29
- #
30
- # The path match can either be a simple prefix match or a regular
31
- # expression. `path /file` would match both `/file_metadata` and
32
- # `/file_content`. Regex matches allow the use of backreferences
33
- # in the allow/deny directives.
34
- #
35
- # The regex syntax is the same as for Ruby regex, and captures backreferences
36
- # for use in the `allow` and `deny` lines of that stanza
37
- #
38
- # Examples:
39
- #
40
- # path ~ ^/puppet/v3/path/to/resource # Equivalent to `path /puppet/v3/path/to/resource`.
41
- # allow * # Allow all authenticated nodes (since auth
42
- # # defaults to `yes`).
43
- #
44
- # path ~ ^/puppet/v3/catalog/([^/]+)$ # Permit nodes to access their own catalog (by
45
- # allow $1 # certname), but not any other node's catalog.
46
- #
47
- # path ~ ^/puppet/v3/file_(metadata|content)/extra_files/ # Only allow certain nodes to
48
- # auth yes # access the "extra_files"
49
- # allow /^(.+)\.example\.com$/ # mount point; note this must
50
- # allow_ip 192.168.100.0/24 # go ABOVE the "/file" rule,
51
- # # since it is more specific.
52
- #
53
- # environment:: restrict an ACL to a comma-separated list of environments
54
- # method:: restrict an ACL to a comma-separated list of HTTP methods
55
- # auth:: restrict an ACL to an authenticated or unauthenticated request
56
- # the default when unspecified is to restrict the ACL to authenticated requests
57
- # (ie exactly as if auth yes was present).
58
- #
59
-
60
- # CONTROLLING FILE ACCESS (previously in fileserver.conf)
61
-
62
- # In previous versions of Puppet, you controlled file access by adding
63
- # rules to fileserver.conf. In Puppet 5 with Puppet Server, you can control
64
- # file access in auth.conf by controlling the /file_metadata(s)/<mount point>,
65
- # /file_content(s)/<mount point>, and /static_file_content/<file> paths. See the
66
- # Puppet Server documentation at
67
- # https://puppet.com/docs/puppetserver/latest/config_file_auth.html.
68
- #
69
- # If you are not using Puppet Server, or are using Puppet Server but with the
70
- # "jruby-puppet.use-legacy-auth-conf" setting set to "true", you could set the
71
- # desired file access in a new rule in this file. For example:
72
- #
73
- # path ~ ^/file_(metadata|content)s?/extra_files/
74
- # auth yes
75
- # allow /^(.+)\.example\.com$/
76
- # allow_ip 192.168.100.0/24
77
- #
78
- # If added to auth.conf BEFORE the default "path /file" rule, this rule
79
- # will add stricter restrictions to the extra_files mount point.
80
-
81
- ### Authenticated ACLs - these rules apply only when the client
82
- ### has a valid certificate and is thus authenticated
83
-
84
- path /puppet/v3/environments
85
- method find
86
- allow *
87
-
88
- # allow nodes to retrieve their own catalog
89
- path ~ ^/puppet/v3/catalog/([^/]+)$
90
- method find
91
- allow $1
92
-
93
- # allow nodes to retrieve their own node definition
94
- path ~ ^/puppet/v3/node/([^/]+)$
95
- method find
96
- allow $1
97
-
98
- # allow all nodes to store their own reports
99
- path ~ ^/puppet/v3/report/([^/]+)$
100
- method save
101
- allow $1
102
-
103
- # allow all nodes to update their own facts
104
- path ~ ^/puppet/v3/facts/([^/]+)$
105
- method save
106
- allow $1
107
-
108
- # Allow all nodes to access all file services; this is necessary for
109
- # pluginsync, file serving from modules, and file serving from custom
110
- # mount points (see fileserver.conf). Note that the `/file` prefix matches
111
- # requests to both the file_metadata and file_content paths. See "Examples"
112
- # above if you need more granular access control for custom mount points.
113
- path /puppet/v3/file
114
- allow *
115
-
116
- path /puppet/v3/status
117
- method find
118
- allow *
119
-
120
- # allow all nodes to access the certificates services
121
- path /puppet-ca/v1/certificate_revocation_list/ca
122
- method find
123
- allow *
124
-
125
- ### Unauthenticated ACLs, for clients without valid certificates; authenticated
126
- ### clients can also access these paths, though they rarely need to.
127
-
128
- # allow access to the CA certificate; unauthenticated nodes need this
129
- # in order to validate the puppet master's certificate
130
- path /puppet-ca/v1/certificate/ca
131
- auth any
132
- method find
133
- allow *
134
-
135
- # allow nodes to retrieve the certificate they requested earlier
136
- path /puppet-ca/v1/certificate/
137
- auth any
138
- method find
139
- allow *
140
-
141
- # allow nodes to request a new certificate
142
- path /puppet-ca/v1/certificate_request
143
- auth any
144
- method find, save
145
- allow *
146
-
147
- # deny everything else; this ACL is not strictly necessary, but
148
- # illustrates the default policy.
149
- path /
150
- auth any
data/ext/README.md DELETED
@@ -1,13 +0,0 @@
1
- # `ext/` directory details
2
- This directory contains files used internally when packaging [puppet](https://github.com/puppetlabs/puppet) and [puppet-agent](https://github.com/puppetlabs/puppet-agent)
3
- What follows is a more detailed description of each directory/file:
4
- * `debian/` - init scripts for puppet (used for Debian-based platforms that do not support systemd)
5
- * `hiera/hiera.yaml` - installed to `$codedir/environments/production`as a default Hiera configuration file
6
- * `osx/puppet.plist` - puppet launchd plist for macOS
7
- * `redhat/` - init scripts for puppet (used for EL-based platforms that do not support systemd)
8
- * `solaris/smf/` - service manifests for Solaris 11
9
- * `suse/client.init` - init script for puppet (used for SUSE-based platforms that do not support systemd)
10
- * `systemd/puppet.service` - systemd unit file for puppet
11
- * `windows/` - the puppet daemon for Windows, and other useful `.bat` helper wrappers
12
- * `build_defaults.yaml` - information pertaining to the puppetlabs build automation
13
- * `project_data.yaml` - information used when packaging the puppet gem
@@ -1,76 +0,0 @@
1
- require 'puppet/application'
2
-
3
- class Puppet::Application::Cert < Puppet::Application
4
-
5
- def summary
6
- _("Manage certificates and requests (Disabled)")
7
- end
8
-
9
- def help
10
- <<-HELP
11
- This command is no longer functional, please use `puppetserver ca` instead.
12
-
13
- puppet-cert(8) -- #{summary}
14
- ========
15
-
16
- ACTIONS
17
- -------
18
- Every action except 'list' and 'generate' requires a hostname to act on,
19
- unless the '--all' option is set.
20
-
21
- * clean:
22
- Use `puppetserver ca clean --certname NAME[,NAME...]`
23
-
24
- * fingerprint:
25
- Use openssl directly:
26
- `openssl x509 -noout -fingerprint -<digest> -inform pem -in certificate.crt`
27
-
28
- * generate:
29
- Use `puppetserver ca generate --certname NAME[,NAME...]`
30
-
31
- * list:
32
- Use `puppetserver ca list [--all]`
33
-
34
- * print:
35
- Use openssl directly:
36
- `openssl x509 -noout -text -in certificate.pem`
37
-
38
- * revoke:
39
- Use `puppetserver ca revoke --certname NAME[,NAME...]`
40
-
41
- * sign:
42
- Use `puppetserver ca sign --certname NAME[,NAME...]`
43
-
44
- * verify:
45
- Use `puppet ssl verify [--certname NAME]`
46
-
47
- * reinventory:
48
- Removed.
49
-
50
- OPTIONS
51
- -------
52
- There are a couple important notes about previously-supported options.
53
-
54
- * --allow-dns-alt-names:
55
- In order to sign certificates with subject alternative names using
56
- `puppetserver ca sign`, the `allow-subject-alt-names` setting must be
57
- set to true in the `certificate-authority` section of Puppet Server's
58
- config.
59
-
60
- * --allow-authorization-extensions:
61
- In order to sign certificates with authorization extensions using
62
- `puppetserver ca sign`, the `allow-authorization-extensions` setting must be
63
- set to true in the `certificate-authority` section of Puppet Server's
64
- config.
65
- HELP
66
- end
67
-
68
- def setup
69
- deprecate
70
- end
71
-
72
- def parse_options
73
- puts help
74
- exit 1
75
- end
76
- end
@@ -1,4 +0,0 @@
1
- require 'puppet/application/indirection_base'
2
-
3
- class Puppet::Application::Key < Puppet::Application::IndirectionBase
4
- end
@@ -1,4 +0,0 @@
1
- require 'puppet/application/face_base'
2
-
3
- class Puppet::Application::Man < Puppet::Application::FaceBase
4
- end
@@ -1,4 +0,0 @@
1
- require 'puppet/application/indirection_base'
2
-
3
- class Puppet::Application::Status < Puppet::Application::IndirectionBase
4
- end
@@ -1,16 +0,0 @@
1
- require 'puppet/indirector/face'
2
-
3
- Puppet::Indirector::Face.define(:key, '0.0.1') do
4
- copyright "Puppet Inc.", 2011
5
- license _("Apache 2 license; see COPYING")
6
-
7
- summary _("Create, save, and remove certificate keys.")
8
- description <<-'EOT'
9
- This subcommand manages certificate private keys. Keys are created
10
- automatically by puppet agent and when certificate requests are generated
11
- with 'puppet ssl submit_request'; it should not be necessary to use this
12
- subcommand directly.
13
- EOT
14
-
15
- deprecate
16
- end
@@ -1,145 +0,0 @@
1
- require 'puppet/face'
2
- require 'puppet/util'
3
- require 'pathname'
4
- require 'erb'
5
-
6
- Puppet::Face.define(:man, '0.0.1') do
7
- copyright "Puppet Inc.", 2011
8
- license _("Apache 2 license; see COPYING")
9
-
10
- summary _("Display Puppet manual pages.")
11
-
12
- description <<-EOT
13
- Please use the command 'puppet help <subcommand>' or the system manpage system
14
- 'man puppet-<subcommand>' to display information about Puppet subcommands. The
15
- deprecated man subcommand displays manual pages for all Puppet subcommands. If
16
- the `ronn` gem (<https://github.com/rtomayko/ronn/>) is installed on your
17
- system, puppet man will display fully-formatted man pages. If `ronn` is not
18
- available, puppet man will display the raw (but human-readable) source text
19
- in a pager.
20
- EOT
21
-
22
- notes <<-EOT
23
- The pager used for display will be the first found of `$MANPAGER`, `$PAGER`,
24
- `less`, `most`, or `more`.
25
- EOT
26
-
27
- action(:man) do
28
- summary _("Display the manual page for a Puppet subcommand.")
29
- arguments _("<subcommand>")
30
- #TRANSLATORS '--render-as s' is a command line option and should not be translated
31
- returns _(<<-'EOT')
32
- The man data, in Markdown format, suitable for consumption by Ronn.
33
-
34
- RENDERING ISSUES: To skip fancy formatting and output the raw Markdown
35
- text (e.g. for use in a pipeline), call this action with '--render-as s'.
36
- EOT
37
- examples <<-'EOT'
38
- View the installed manual page for the subcommand 'config':
39
-
40
- $ man puppet-config
41
-
42
- (Deprecated) View the manual page for the subcommand 'config':
43
-
44
- $ puppet man config
45
- EOT
46
-
47
- default
48
- when_invoked do |*args|
49
- # 'args' is an array of the subcommand and arguments from the command line and an options hash
50
- # [<arg1>, ..., {options}]
51
- _options = args.pop
52
-
53
- unless valid_command_line?(args)
54
- print_man_help
55
- #TRANSLATORS 'puppet man' is a specific command line and should not be translated
56
- raise ArgumentError, _("The 'puppet man' command takes a single subcommand to review the subcommand's manpage")
57
- end
58
-
59
- manpage = args.first
60
- if default_case?(manpage)
61
- print_man_help
62
- return nil
63
- end
64
-
65
- if legacy_applications.include?(manpage)
66
- return Puppet::Application[manpage].help
67
- end
68
-
69
- # set 'face' as it's used in the erb processing.
70
- face = Puppet::Face[manpage.to_sym, :current]
71
- _face = face # suppress the unused variable warning
72
-
73
- file = (Pathname(__FILE__).dirname + "help" + 'man.erb')
74
- erb = ERB.new(file.read, nil, '-')
75
- erb.filename = file.to_s
76
-
77
- # Run the ERB template in our current binding, including all the local
78
- # variables we established just above. --daniel 2011-04-11
79
- return erb.result(binding)
80
- end
81
-
82
- when_rendering :console do |text|
83
- # OK, if we have Ronn on the path we can delegate to it and override the
84
- # normal output process. Otherwise delegate to a pager on the raw text,
85
- # otherwise we finally just delegate to our parent. Oh, well.
86
-
87
- # These are the same options for less that git normally uses.
88
- # -R : Pass through color control codes (allows display of colors)
89
- # -X : Don't init/deinit terminal (leave display on screen on exit)
90
- # -F : automatically exit if display fits entirely on one screen
91
- # -S : don't wrap long lines
92
- ENV['LESS'] ||= 'FRSX'
93
-
94
- ronn = Puppet::Util.which('ronn')
95
- pager = [ENV['MANPAGER'], ENV['PAGER'], 'less', 'most', 'more'].
96
- detect {|x| x and x.length > 0 and Puppet::Util.which(x) }
97
-
98
- if ronn
99
- # ronn is a stupid about pager selection, we can be smarter. :)
100
- ENV['PAGER'] = pager if pager
101
-
102
- args = "--man --manual='Puppet Manual' --organization='Puppet Inc., LLC'"
103
- # manual pages could contain UTF-8 text
104
- IO.popen("#{ronn} #{args}", 'w:UTF-8') do |fh| fh.write text end
105
-
106
- '' # suppress local output, neh?
107
- elsif pager
108
- # manual pages could contain UTF-8 text
109
- IO.popen(pager, 'w:UTF-8') do |fh| fh.write text end
110
- ''
111
- else
112
- text
113
- end
114
- end
115
- end
116
-
117
- def valid_command_line?(args)
118
- # not too many arguments
119
- # This allows the command line case of "puppet man man man" to not throw an error because face_based eats
120
- # one of the "man"'s, which means this command line ends up looking like this in the code: 'manface.man("man")'
121
- # However when we generate manpages, we do the same call. So we have to allow it and generate the real manpage.
122
- args.length <= 1
123
- end
124
-
125
- # by default, if you ask for the man manpage "puppet man man" face_base removes the "man" from the args that we
126
- # are passed, so we get nil instead
127
- def default_case?(manpage)
128
- manpage.nil?
129
- end
130
-
131
- def print_man_help
132
- puts Puppet::Face[:help, :current].help(:man)
133
- end
134
-
135
- def legacy_applications
136
- # The list of applications, less those that are duplicated as a face.
137
- Puppet::Application.available_application_names.reject do |appname|
138
- Puppet::Face.face? appname.to_sym, :current or
139
- # ...this is a nasty way to exclude non-applications. :(
140
- %w{face_base indirection_base}.include? appname
141
- end
142
- end
143
-
144
- deprecate
145
- end
@@ -1,14 +0,0 @@
1
- Puppet::Face.define(:module, '1.0.0') do
2
- action(:build) do
3
- summary _("Build a module release package.")
4
- #TRANSLATORS 'Puppet Development Kit' is the name of the software package replacing this action and should not be translated.
5
- description _("This action has been replaced by Puppet Development Kit. For more information visit https://puppet.com/docs/pdk/latest/pdk.html.")
6
-
7
- when_invoked do |*args|
8
- #TRANSLATORS 'Puppet Development Kit' is the name of the software package replacing this action and should not be translated.
9
- raise _("This action has been replaced by Puppet Development Kit. For more information visit https://puppet.com/docs/pdk/latest/pdk.html.")
10
- end
11
-
12
- deprecate
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- Puppet::Face.define(:module, '1.0.0') do
2
- action(:generate) do
3
- summary _("Generate boilerplate for a new module.")
4
- #TRANSLATORS 'Puppet Development Kit' is the name of the software package replacing this action and should not be translated.
5
- description _("This action has been replaced by Puppet Development Kit. For more information visit https://puppet.com/docs/pdk/latest/pdk.html.")
6
-
7
- when_invoked do |*args|
8
- #TRANSLATORS 'Puppet Development Kit' is the name of the software package replacing this action and should not be translated.
9
- raise _("This action has been replaced by Puppet Development Kit. For more information visit https://puppet.com/docs/pdk/latest/pdk.html.")
10
- end
11
-
12
- deprecate
13
- end
14
- end
@@ -1,103 +0,0 @@
1
- require 'puppet/util/terminal'
2
- require 'puppet/forge'
3
-
4
- Puppet::Face.define(:module, '1.0.0') do
5
- action(:search) do
6
- summary _("Search the Puppet Forge for a module.")
7
- description <<-EOT
8
- This action has been deprecated. Please use the Puppet Forge to search for modules.
9
-
10
- Searches a repository for modules whose names, descriptions, or keywords
11
- match the provided search term.
12
- EOT
13
-
14
- returns _("Array of module metadata hashes")
15
-
16
- examples <<-EOT
17
- Search the Puppet Forge for a module:
18
-
19
- $ puppet module search puppetlabs
20
- NAME DESCRIPTION AUTHOR KEYWORDS
21
- bacula This is a generic Apache module @puppetlabs backups
22
- EOT
23
-
24
- arguments _("<search_term>")
25
-
26
- when_invoked do |term, options|
27
- Puppet.deprecation_warning(_("This action has been deprecated. Please use the Puppet Forge to search for modules."))
28
- Puppet::ModuleTool.set_option_defaults options
29
- Puppet::ModuleTool::Applications::Searcher.new(term, Puppet::Forge.new(options[:module_repository] || Puppet[:module_repository]), options).run
30
- end
31
-
32
- when_rendering :console do |results, term, options|
33
- if results[:result] == :failure
34
- raise results[:error][:multiline]
35
- end
36
-
37
- return _("No results found for '%{term}'.") % { term: term } if results[:answers].empty?
38
-
39
- padding = ' '
40
- headers = {
41
- 'full_name' => 'NAME',
42
- 'desc' => 'DESCRIPTION',
43
- 'author' => 'AUTHOR',
44
- 'tag_list' => 'KEYWORDS',
45
- }
46
-
47
- min_widths = Hash[ *headers.map { |k,v| [k, v.length] }.flatten ]
48
- min_widths['full_name'] = min_widths['author'] = 12
49
-
50
- min_width = min_widths.inject(0) { |sum,pair| sum + pair.last } + (padding.length * (headers.length - 1))
51
-
52
- terminal_width = [Puppet::Util::Terminal.width, min_width].max
53
-
54
- columns = results[:answers].inject(min_widths) do |hash, result|
55
- deprecated_buffer = result['deprecated_at'].nil? ? 0 : 11 # ' DEPRECATED'.length
56
-
57
- {
58
- 'full_name' => [ hash['full_name'], result['full_name'].length + deprecated_buffer ].max,
59
- 'desc' => [ hash['desc'], result['desc'].length ].max,
60
- 'author' => [ hash['author'], "@#{result['author']}".length ].max,
61
- 'tag_list' => [ hash['tag_list'], result['tag_list'].join(' ').length ].max,
62
- }
63
- end
64
-
65
- flex_width = terminal_width - columns['full_name'] - columns['author'] - (padding.length * (headers.length - 1))
66
- tag_lists = results[:answers].map { |r| r['tag_list'] }
67
-
68
- while (columns['tag_list'] > flex_width / 3)
69
- longest_tag_list = tag_lists.sort_by { |tl| tl.join(' ').length }.last
70
- break if [ [], [term] ].include? longest_tag_list
71
- longest_tag_list.delete(longest_tag_list.sort_by { |t| t == term ? -1 : t.length }.last)
72
- columns['tag_list'] = tag_lists.map { |tl| tl.join(' ').length }.max
73
- end
74
-
75
- columns['tag_list'] = [
76
- flex_width / 3,
77
- tag_lists.map { |tl| tl.join(' ').length }.max,
78
- ].max
79
- columns['desc'] = flex_width - columns['tag_list']
80
-
81
- format = %w{full_name desc author tag_list}.map do |k|
82
- "%-#{ [ columns[k], min_widths[k] ].max }s"
83
- end.join(padding) + "\n"
84
-
85
- highlight = proc do |s|
86
- s = s.gsub(term, colorize(:green, term))
87
- s = s.gsub(term.tr('/', '-'), colorize(:green, term.tr('/', '-'))) if term =~ /\//
88
- s = s.gsub(' DEPRECATED', colorize(:red, ' DEPRECATED'))
89
- s
90
- end
91
-
92
- format % [ headers['full_name'], headers['desc'], headers['author'], headers['tag_list'] ] +
93
- results[:answers].map do |match|
94
- name, desc, author, keywords = %w{full_name desc author tag_list}.map { |k| match[k] }
95
- name += ' DEPRECATED' unless match['deprecated_at'].nil?
96
- desc = desc[0...(columns['desc'] - 3)] + '...' if desc.length > columns['desc']
97
- highlight[format % [ name.sub('/', '-'), desc, "@#{author}", [keywords].flatten.join(' ') ]]
98
- end.join
99
- end
100
-
101
- deprecate
102
- end
103
- end
@@ -1,51 +0,0 @@
1
- require 'puppet/indirector/face'
2
-
3
- Puppet::Indirector::Face.define(:status, '0.0.1') do
4
- copyright "Puppet Inc.", 2011
5
- license _("Apache 2 license; see COPYING")
6
-
7
- summary _("View puppet server status.")
8
-
9
- deactivate_action(:destroy)
10
- deactivate_action(:save)
11
- deactivate_action(:search)
12
-
13
- find = get_action(:find)
14
- find.default = true
15
- find.summary _("Check status of puppet master server.")
16
- #TRANSLATORS the string 'Puppet::Status' is a Puppet language object and should not be translated
17
- find.returns _(<<-'EOT')
18
- A "true" response or a low-level connection error. When used from the Ruby
19
- API: returns a Puppet::Status object.
20
- EOT
21
- find.description <<-'EOT'
22
- Checks whether a Puppet server is properly receiving and processing
23
- HTTP requests. This action is only useful when used with '--terminus
24
- rest'; when invoked with the `local` terminus, `find` will always
25
- return true.
26
-
27
- Over REST, this action will query the configured puppet master by default.
28
- To query other servers, including puppet agent nodes started with the
29
- <--listen> option, you can set the global <--server> and <--serverport>
30
- options on the command line; note that agent nodes listen on port 8139.
31
- EOT
32
- find.short_description <<-EOT
33
- Checks whether a Puppet server is properly receiving and processing HTTP
34
- requests. This action is only useful when used with '--terminus rest',
35
- and will always return true when invoked locally.
36
- EOT
37
- find.notes <<-'EOT'
38
- This action requires that the server's `auth.conf` file allow find
39
- access to the `status` REST terminus. Puppet agent does not use this
40
- facility, and it is turned off by default. See
41
- <https://puppet.com/docs/puppet/latest/config_file_auth.html>
42
- for more details.
43
- EOT
44
- find.examples <<-'EOT'
45
- Check the status of the configured puppet master:
46
-
47
- $ puppet status find --terminus rest
48
- EOT
49
-
50
- deprecate
51
- end