puppet 6.25.1 → 7.0.0

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
@@ -3,7 +3,7 @@ require 'puppet/util/platform'
3
3
  module Puppet
4
4
 
5
5
  def self.default_diffargs
6
- if (Puppet.runtime[:facter].value(:kernel) == "AIX" && Puppet.runtime[:facter].value(:kernelmajversion) == "5300")
6
+ if (Facter.value(:kernel) == "AIX" && Facter.value(:kernelmajversion) == "5300")
7
7
  ""
8
8
  else
9
9
  "-u"
@@ -11,25 +11,60 @@ module Puppet
11
11
  end
12
12
 
13
13
  def self.default_digest_algorithm
14
- Puppet::Util::Platform.fips_enabled? ? 'sha256' : 'md5'
14
+ 'sha256'
15
15
  end
16
16
 
17
17
  def self.valid_digest_algorithms
18
18
  Puppet::Util::Platform.fips_enabled? ?
19
19
  %w[sha256 sha384 sha512 sha224] :
20
- %w[md5 sha256 sha384 sha512 sha224]
20
+ %w[sha256 sha384 sha512 sha224 md5]
21
21
  end
22
22
 
23
23
  def self.default_file_checksum_types
24
24
  Puppet::Util::Platform.fips_enabled? ?
25
25
  %w[sha256 sha384 sha512 sha224] :
26
- %w[md5 sha256 sha384 sha512 sha224]
26
+ %w[sha256 sha384 sha512 sha224 md5]
27
27
  end
28
28
 
29
29
  def self.valid_file_checksum_types
30
30
  Puppet::Util::Platform.fips_enabled? ?
31
31
  %w[sha256 sha256lite sha384 sha512 sha224 sha1 sha1lite mtime ctime] :
32
- %w[md5 md5lite sha256 sha256lite sha384 sha512 sha224 sha1 sha1lite mtime ctime]
32
+ %w[sha256 sha256lite sha384 sha512 sha224 sha1 sha1lite md5 md5lite mtime ctime]
33
+ end
34
+
35
+ def self.log_ca_migration_warning
36
+ urge_to_migrate = <<-UTM
37
+ The cadir is currently configured to be inside the #{Puppet[:ssldir]} directory. This config
38
+ setting and the directory location will not be used in a future version of puppet. Please run the
39
+ puppetserver ca tool to migrate out from the puppet confdir to the /etc/puppetlabs/puppetserver/ca
40
+ directory. Use `puppetserver ca migrate --help` for more info.
41
+ UTM
42
+ Puppet.warn_once('deprecations',
43
+ 'CA migration message',
44
+ urge_to_migrate,
45
+ :default,
46
+ :default)
47
+ end
48
+
49
+ def self.default_cadir
50
+ return "" if Puppet::Util::Platform.windows?
51
+ old_ca_dir = "#{Puppet[:ssldir]}/ca"
52
+ new_ca_dir = "/etc/puppetlabs/puppetserver/ca"
53
+
54
+ if File.exist?(old_ca_dir)
55
+ if File.symlink?(old_ca_dir)
56
+ target = File.readlink(old_ca_dir)
57
+ if target.start_with?(Puppet[:ssldir])
58
+ Puppet.log_ca_migration_warning
59
+ end
60
+ target
61
+ else
62
+ Puppet.log_ca_migration_warning
63
+ old_ca_dir
64
+ end
65
+ else
66
+ new_ca_dir
67
+ end
33
68
  end
34
69
 
35
70
  def self.default_basemodulepath
@@ -58,18 +93,6 @@ module Puppet
58
93
  end
59
94
  end
60
95
 
61
- def self.default_cadir
62
- return "" if Puppet::Util::Platform.windows?
63
- old_ca_dir = "#{Puppet[:ssldir]}/ca"
64
- new_ca_dir = '/etc/puppetlabs/puppetserver/ca'
65
-
66
- if File.exist?("#{new_ca_dir}/ca_crt.pem")
67
- new_ca_dir
68
- else
69
- old_ca_dir
70
- end
71
- end
72
-
73
96
  ############################################################################################
74
97
  # NOTE: For information about the available values for the ":type" property of settings,
75
98
  # see the docs for Settings.define_settings
@@ -82,29 +105,6 @@ module Puppet
82
105
  # @return void
83
106
  def self.initialize_default_settings!(settings)
84
107
  settings.define_settings(:main,
85
- :facterng => {
86
- :default => false,
87
- :type => :boolean,
88
- :desc => 'Whether to enable a pre-Facter 4.0 release of Facter (distributed as
89
- the "facter-ng" gem). This is not necessary if Facter 3.x or later is installed.
90
- This setting is still experimental.',
91
- :hook => proc do |value|
92
- value = munge(value)
93
- if value && Puppet::Util::Package.versioncmp(Puppet.runtime[:facter].value('facterversion'), '4.0.0') < 0
94
- begin
95
- original_facter = Object.const_get(:Facter)
96
- Object.send(:remove_const, :Facter)
97
-
98
- require 'facter-ng'
99
- # It is required to re-setup logger for facter-ng
100
- Puppet::Util::Logging.setup_facter_logging!
101
- rescue LoadError
102
- Object.const_set(:Facter, original_facter)
103
- raise ArgumentError, 'facter-ng could not be loaded'
104
- end
105
- end
106
- end
107
- },
108
108
  :confdir => {
109
109
  :default => nil,
110
110
  :type => :directory,
@@ -218,7 +218,7 @@ module Puppet
218
218
 
219
219
  The strictness level is for both language semantics and runtime
220
220
  evaluation validation. In addition to controlling the behavior with
221
- this primary server switch some individual warnings may also be controlled
221
+ this master switch some individual warnings may also be controlled
222
222
  by the disable_warnings setting.
223
223
 
224
224
  No new validations will be added to a micro (x.y.z) release,
@@ -231,7 +231,7 @@ module Puppet
231
231
  end
232
232
  },
233
233
  :disable_i18n => {
234
- :default => false,
234
+ :default => true,
235
235
  :type => :boolean,
236
236
  :desc => "If true, turns off all translations of Puppet and module
237
237
  log messages, which affects error, warning, and info log messages,
@@ -262,7 +262,7 @@ module Puppet
262
262
  internal Ruby stack trace interleaved with Puppet function frames.",
263
263
  :hook => proc do |value|
264
264
  # Enable or disable Facter's trace option too
265
- Puppet.runtime[:facter].trace(value)
265
+ Facter.trace(value) if Facter.respond_to? :trace
266
266
  end
267
267
  },
268
268
  :puppet_trace => {
@@ -276,13 +276,6 @@ module Puppet
276
276
  :type => :boolean,
277
277
  :desc => "Whether to enable experimental performance profiling",
278
278
  },
279
- :future_features => {
280
- :default => false,
281
- :type => :boolean,
282
- :desc => "Whether or not to enable all features currently being developed for future
283
- major releases of Puppet. Should be used with caution, as in development
284
- features are experimental and can have unexpected effects."
285
- },
286
279
  :versioned_environment_dirs => {
287
280
  :default => false,
288
281
  :type => :boolean,
@@ -294,9 +287,14 @@ module Puppet
294
287
  :default => true,
295
288
  :type => :boolean,
296
289
  :desc => "Whether to compile a [static catalog](https://puppet.com/docs/puppet/latest/static_catalogs.html#enabling-or-disabling-static-catalogs),
297
- which occurs only on Puppet Server when the `code-id-command` and
290
+ which occurs only on a Puppet Server master when the `code-id-command` and
298
291
  `code-content-command` settings are configured in its `puppetserver.conf` file.",
299
292
  },
293
+ :settings_catalog => {
294
+ :default => true,
295
+ :type => :boolean,
296
+ :desc => "Whether to compile and apply the settings catalog",
297
+ },
300
298
  :strict_environment_mode => {
301
299
  :default => false,
302
300
  :type => :boolean,
@@ -412,13 +410,13 @@ module Puppet
412
410
  :default => "production",
413
411
  :desc => "The environment in which Puppet is running. For clients,
414
412
  such as `puppet agent`, this determines the environment itself, which
415
- Puppet uses to find modules and much more. For servers, such as `puppet server`,
413
+ Puppet uses to find modules and much more. For servers, such as `puppet master`,
416
414
  this provides the default environment for nodes that Puppet knows nothing about.
417
415
 
418
416
  When defining an environment in the `[agent]` section, this refers to the
419
- environment that the agent requests from the primary server. The environment doesn't
417
+ environment that the agent requests from the master. The environment doesn't
420
418
  have to exist on the local filesystem because the agent fetches it from the
421
- primary server. This definition is used when running `puppet agent`.
419
+ master. This definition is used when running `puppet agent`.
422
420
 
423
421
  When defined in the `[user]` section, the environment refers to the path that
424
422
  Puppet uses to search for code and modules related to its execution. This
@@ -719,9 +717,8 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
719
717
  A value of `0` will disable caching. This setting can also be set to
720
718
  `unlimited`, which will cache environments until the server is restarted
721
719
  or told to refresh the cache. All other values will result in Puppet
722
- server evicting expired environments. The expiration time is computed
723
- based on either when the environment was created or last accessed, see
724
- `environment_timeout_mode`.
720
+ server evicting environments that haven't been used within the last
721
+ `environment_timeout` seconds.
725
722
 
726
723
  You should change this setting once your Puppet deployment is doing
727
724
  non-trivial work. We chose the default value of `0` because it lets new
@@ -734,32 +731,13 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
734
731
  * Setting this to a number that will keep your most actively used
735
732
  environments cached, but allow testing environments to fall out of the
736
733
  cache and reduce memory usage. A value of 3 minutes (3m) is a reasonable
737
- value. This option requires setting `environment_timeout_mode` to
738
- `from_last_used`.
734
+ value.
739
735
 
740
736
  Once you set `environment_timeout` to a non-zero value, you need to tell
741
737
  Puppet server to read new code from disk using the `environment-cache` API
742
738
  endpoint after you deploy new code. See the docs for the Puppet Server
743
739
  [administrative API](https://puppet.com/docs/puppetserver/latest/admin-api/v1/environment-cache.html).
744
- ",
745
- :hook => proc do |val|
746
- if Puppet[:environment_timeout_mode] == :from_created
747
- unless [0, 'unlimited', Float::INFINITY].include?(val)
748
- Puppet.deprecation_warning("Evicting environments based on their creation time is deprecated, please set `environment_timeout_mode` to `from_last_used` instead.")
749
- end
750
- end
751
- end
752
- },
753
- :environment_timeout_mode => {
754
- :default => :from_created,
755
- :type => :symbolic_enum,
756
- :values => [:from_created, :from_last_used],
757
- :desc => "How Puppet interprets the `environment_timeout` setting when
758
- `environment_timeout` is neither `0` nor `unlimited`. If set to
759
- `from_created`, then the environment will be evicted `environment_timeout`
760
- seconds from when it was created. If set to `from_last_used` then the
761
- environment will be evicted `environment_timeout` seconds from when it
762
- was last used."
740
+ "
763
741
  },
764
742
  :environment_data_provider => {
765
743
  :desc => "The name of a registered environment data provider used when obtaining environment
@@ -800,12 +778,6 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
800
778
  :owner => "service",
801
779
  :group => "service",
802
780
  :desc => "The directory where catalog previews per node are generated."
803
- },
804
- :location_trusted => {
805
- :default => false,
806
- :type => :boolean,
807
- :desc => "This will allow sending the name + password and the cookie header to all hosts that puppet may redirect to.
808
- This may or may not introduce a security breach if puppet redirects you to a site to which you'll send your authentication info and cookies."
809
781
  }
810
782
  )
811
783
 
@@ -836,11 +808,11 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
836
808
  :certname => {
837
809
  :default => lambda { Puppet::Settings.default_certname.downcase },
838
810
  :desc => "The name to use when handling certificates. When a node
839
- requests a certificate from the CA Puppet Server, it uses the value of the
811
+ requests a certificate from the CA puppet master, it uses the value of the
840
812
  `certname` setting as its requested Subject CN.
841
813
 
842
814
  This is the name used when managing a node's permissions in
843
- [auth.conf](https://puppet.com/docs/puppet/latest/config_file_auth.html).
815
+ Puppet Server's [auth.conf](https://puppet.com/docs/puppetserver/latest/config_file_auth.html).
844
816
  In most cases, it is also used as the node's name when matching
845
817
  [node definitions](https://puppet.com/docs/puppet/latest/lang_node_definitions.html)
846
818
  and requesting data from an ENC. (This can be changed with the `node_name_value`
@@ -855,9 +827,9 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
855
827
  only use lowercase letters, numbers, periods, underscores, and dashes. (That is,
856
828
  it should match `/\A[a-z0-9._-]+\Z/`.)
857
829
  * The special value `ca` is reserved, and can't be used as the certname
858
- for a normal node.
830
+ for a normal node.
859
831
 
860
- **Note:** You must set the certname in the main section of the puppet.conf file. Setting it in a different section causes errors.
832
+ **Note:** You must set the certname in the main section of the puppet.conf file. Setting it in a different section causes errors.
861
833
 
862
834
  Defaults to the node's fully qualified domain name.",
863
835
  :call_hook => :on_initialize_and_write,
@@ -884,8 +856,8 @@ names.
884
856
  **Note:** The list of alternate names is locked in when the server's
885
857
  certificate is signed. If you need to change the list later, you can't just
886
858
  change this setting; you also need to regenerate the certificate. For more
887
- information on that process, see the
888
- [cert regen docs](https://puppet.com/docs/puppet/latest/ssl_regenerate_certificates.html).
859
+ information on that process, see the [cert regen docs]
860
+ (https://puppet.com/docs/puppet/latest/ssl_regenerate_certificates.html).
889
861
 
890
862
  To see all the alternate names your servers are using, log into your CA server
891
863
  and run `puppetserver ca list --all`, then check the output for `(alt names: ...)`.
@@ -899,7 +871,7 @@ EOT
899
871
  :desc => <<EOT
900
872
  An optional file containing custom attributes to add to certificate signing
901
873
  requests (CSRs). You should ensure that this file does not exist on your CA
902
- Puppet Server; if it does, unwanted certificate extensions may leak into
874
+ puppet master; if it does, unwanted certificate extensions may leak into
903
875
  certificates created with the `puppetserver ca generate` command.
904
876
 
905
877
  If present, this file must be a YAML hash containing a `custom_attributes` key
@@ -990,13 +962,13 @@ EOT
990
962
  Generally unused."
991
963
  },
992
964
  :hostcsr => {
993
- :default => "$ssldir/csr_$certname.pem",
965
+ :default => "$requestdir/$certname.pem",
994
966
  :type => :file,
995
967
  :mode => "0644",
996
968
  :owner => "service",
997
969
  :group => "service",
998
- :deprecated => :completely,
999
- :desc => "This setting is deprecated."
970
+ :desc => "Where individual hosts store their certificate request (CSR)
971
+ while waiting for the CA to issue their certificate."
1000
972
  },
1001
973
  :hostcert => {
1002
974
  :default => "$certdir/$certname.pem",
@@ -1047,29 +1019,6 @@ EOT
1047
1019
  puppet module tool and the 'http' report processor. This setting is ignored when
1048
1020
  making requests to puppet:// URLs such as catalog and report requests.",
1049
1021
  },
1050
- :ssl_client_ca_auth => {
1051
- :type => :file,
1052
- :mode => "0644",
1053
- :owner => "service",
1054
- :group => "service",
1055
- :desc => "Certificate authorities who issue server certificates. SSL servers will not be
1056
- considered authentic unless they possess a certificate issued by an authority
1057
- listed in this file. If this setting has no value then the Puppet master's CA
1058
- certificate (localcacert) will be used.",
1059
- :hook => proc do |val|
1060
- Puppet.deprecation_warning(_("Setting 'ssl_client_ca_auth' is deprecated."))
1061
- end
1062
- },
1063
- :ssl_server_ca_auth => {
1064
- :type => :file,
1065
- :mode => "0644",
1066
- :owner => "service",
1067
- :group => "service",
1068
- :deprecated => :completely,
1069
- :desc => "The setting is deprecated and has no effect. Ensure all root and
1070
- intermediate certificate authorities used to issue client certificates are
1071
- contained in the server's `cacert` file on the server."
1072
- },
1073
1022
  :hostcrl => {
1074
1023
  :default => "$ssldir/crl.pem",
1075
1024
  :type => :file,
@@ -1103,14 +1052,6 @@ EOT
1103
1052
  certificate revocation checking and does not attempt to download the CRL.
1104
1053
  EOT
1105
1054
  },
1106
- :ciphers => {
1107
- :default => 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256',
1108
- :type => :string,
1109
- :desc => "The list of ciphersuites for TLS connections initiated by puppet. The
1110
- default value is chosen to support TLS 1.0 and up, but can be made
1111
- more restrictive if needed. The ciphersuites must be specified in OpenSSL
1112
- format, not IANA."
1113
- },
1114
1055
  :key_type => {
1115
1056
  :default => 'rsa',
1116
1057
  :type => :enum,
@@ -1154,7 +1095,7 @@ EOT
1154
1095
  :type => :string,
1155
1096
  :desc => "Where to send log messages. Choose between 'syslog' (the POSIX syslog
1156
1097
  service), 'eventlog' (the Windows Event Log), 'console', or the path to a log
1157
- file. Multiple destinations can be set using a comma separated list (eg: `/path/file1,console,/path/file2`)"
1098
+ file."
1158
1099
  # Sure would be nice to set the Puppet::Util::Log destination here in an :on_initialize_and_write hook,
1159
1100
  # unfortunately we have a large number of tests that rely on the logging not resetting itself when the
1160
1101
  # settings are initialized as they test what gets logged during settings initialization.
@@ -1171,6 +1112,13 @@ EOT
1171
1112
  :default => lambda { default_cadir },
1172
1113
  :type => :directory,
1173
1114
  :desc => "The root directory for the certificate authority.",
1115
+ :call_hook => :on_initialize_and_write,
1116
+ :hook => proc do |value|
1117
+ if value.start_with?(Puppet[:ssldir])
1118
+ Puppet.log_ca_migration_warning
1119
+ end
1120
+ value
1121
+ end
1174
1122
  },
1175
1123
  :cacert => {
1176
1124
  :default => "$cadir/ca_crt.pem",
@@ -1211,7 +1159,7 @@ EOT
1211
1159
  :default => "$confdir/autosign.conf",
1212
1160
  :type => :autosign,
1213
1161
  :desc => "Whether (and how) to autosign certificate requests. This setting
1214
- is only relevant on a Puppet Server acting as a certificate authority (CA).
1162
+ is only relevant on a puppet master acting as a certificate authority (CA).
1215
1163
 
1216
1164
  Valid values are true (autosigns all certificate requests; not recommended),
1217
1165
  false (disables autosigning certificates), or the absolute path to a file.
@@ -1222,7 +1170,7 @@ EOT
1222
1170
  file, it will be treated as a policy executable; otherwise, it will be
1223
1171
  treated as a config file.
1224
1172
 
1225
- If a custom policy executable is configured, the CA Puppet Server will run it
1173
+ If a custom policy executable is configured, the CA puppet master will run it
1226
1174
  every time it receives a CSR. The executable will be passed the subject CN of the
1227
1175
  request _as a command line argument,_ and the contents of the CSR in PEM format
1228
1176
  _on stdin._ It should exit with a status of 0 if the cert should be autosigned
@@ -1308,7 +1256,7 @@ EOT
1308
1256
  :manifest => {
1309
1257
  :default => nil,
1310
1258
  :type => :file_or_directory,
1311
- :desc => "The entry-point manifest for the primary server. This can be one file
1259
+ :desc => "The entry-point manifest for puppet master. This can be one file
1312
1260
  or a directory of manifests to be evaluated in alphabetical order. Puppet manages
1313
1261
  this path as a directory if one exists or if the path ends with a / or \\.
1314
1262
 
@@ -1397,34 +1345,25 @@ EOT
1397
1345
  by `puppet`, and should only be set if you're writing your own Puppet
1398
1346
  executable.",
1399
1347
  },
1400
- :masterport => {
1348
+ :serverport => {
1401
1349
  :default => 8140,
1350
+ :type => :port,
1402
1351
  :desc => "The default port puppet subcommands use to communicate
1403
1352
  with Puppet Server. (eg `puppet facts upload`, `puppet agent`). May be
1404
1353
  overridden by more specific settings (see `ca_port`, `report_port`).",
1354
+ :hook => proc do |value|
1355
+ Puppet[:masterport] = value unless Puppet.settings.set_by_config?(:masterport)
1356
+ end
1405
1357
  },
1406
- :serverport => {
1407
- :type => :alias,
1408
- :alias_for => :masterport
1409
- },
1410
- :node_name => {
1411
- :default => 'cert',
1412
- :type => :enum,
1413
- :values => ['cert', 'facter'],
1414
- :deprecated => :completely,
1415
- :hook => proc { |val|
1416
- if val != 'cert'
1417
- Puppet.deprecation_warning("The node_name setting is deprecated and will be removed in a future release.")
1418
- end
1419
- },
1420
- :desc => "How the puppet master determines the client's identity
1421
- and sets the 'hostname', 'fqdn' and 'domain' facts for use in the manifest,
1422
- in particular for determining which 'node' statement applies to the client.
1423
- Possible values are 'cert' (use the subject's CN in the client's
1424
- certificate) and 'facter' (use the hostname that the client
1425
- reported in its facts).
1426
-
1427
- This setting is deprecated, please use explicit fact matching for classification.",
1358
+ :masterport => {
1359
+ :default => "$serverport",
1360
+ :type => :port,
1361
+ :desc => "The default port puppet subcommands use to communicate
1362
+ with Puppet Server. (eg `puppet facts upload`, `puppet agent`). May be
1363
+ overridden by more specific settings (see `ca_port`, `report_port`).",
1364
+ :hook => proc do |value|
1365
+ Puppet[:serverport] = value unless Puppet.settings.set_by_config?(:serverport)
1366
+ end
1428
1367
  },
1429
1368
  :bucketdir => {
1430
1369
  :default => "$vardir/bucket",
@@ -1434,15 +1373,6 @@ EOT
1434
1373
  :group => "service",
1435
1374
  :desc => "Where FileBucket files are stored."
1436
1375
  },
1437
- :rest_authconfig => {
1438
- :default => "$confdir/auth.conf",
1439
- :type => :file,
1440
- :deprecated => :completely,
1441
- :desc => "The configuration file that defines the rights to the different
1442
- rest indirections. This can be used as a fine-grained authorization system for
1443
- `puppet master`. The `puppet master` command is deprecated and Puppet Server
1444
- uses its own auth.conf that must be placed within its configuration directory.",
1445
- },
1446
1376
  :trusted_oid_mapping_file => {
1447
1377
  :default => "$confdir/custom_trusted_oid_mapping.yaml",
1448
1378
  :type => :file,
@@ -1515,17 +1445,15 @@ EOT
1515
1445
  their names should be comma-separated, with whitespace allowed. (For example,
1516
1446
  `reports = http, store`.)
1517
1447
 
1518
- This setting is relevant to puppet server and puppet apply. The primary Puppet
1519
- server will call these report handlers with the reports it receives from
1448
+ This setting is relevant to puppet master and puppet apply. The puppet
1449
+ master will call these report handlers with the reports it receives from
1520
1450
  agent nodes, and puppet apply will call them with its own report. (In
1521
1451
  all cases, the node applying the catalog must have `report = true`.)
1522
1452
 
1523
1453
  See the report reference for information on the built-in report
1524
1454
  handlers; custom report handlers can also be loaded from modules.
1525
1455
  (Report handlers are loaded from the lib directory, at
1526
- `puppet/reports/NAME.rb`.)
1527
-
1528
- To turn off reports entirely, set this to `none`",
1456
+ `puppet/reports/NAME.rb`.)",
1529
1457
  },
1530
1458
  :reportdir => {
1531
1459
  :default => "$vardir/reports",
@@ -1547,23 +1475,7 @@ EOT
1547
1475
  :default => "$confdir/fileserver.conf",
1548
1476
  :type => :file,
1549
1477
  :desc => "Where the fileserver configuration is stored.",
1550
- },
1551
- :strict_hostname_checking => {
1552
- :default => true,
1553
- :type => :boolean,
1554
- :desc => "Whether to only search for the complete
1555
- hostname as it is in the certificate when searching for node information
1556
- in the catalogs or to match dot delimited segments of the cert's certname
1557
- and the hostname, fqdn, and/or domain facts.
1558
-
1559
- This setting is deprecated and will be removed in a future release.",
1560
- :hook => proc { |val|
1561
- if val != true
1562
- Puppet.deprecation_warning("Setting strict_hostname_checking to false is deprecated and will be removed in a future release. Please use regular expressions in your node declarations or explicit fact matching for classification (though be warned that fact based classification may be considered insecure).")
1563
- end
1564
- }
1565
- }
1566
- )
1478
+ })
1567
1479
 
1568
1480
  settings.define_settings(:device,
1569
1481
  :devicedir => {
@@ -1584,18 +1496,16 @@ EOT
1584
1496
  :node_name_value => {
1585
1497
  :default => "$certname",
1586
1498
  :desc => "The explicit value used for the node name for all requests the agent
1587
- makes to the primary server. WARNING: This setting is mutually exclusive with
1588
- node_name_fact. Changing this setting also requires changes to the default
1589
- auth.conf configuration on the Puppet Master. Please see
1590
- http://links.puppet.com/node_name_value for more information."
1499
+ makes to the master. WARNING: This setting is mutually exclusive with
1500
+ node_name_fact. Changing this setting also requires changes to
1501
+ Puppet Server's default [auth.conf](https://puppet.com/docs/puppetserver/latest/config_file_auth.html)."
1591
1502
  },
1592
1503
  :node_name_fact => {
1593
1504
  :default => "",
1594
1505
  :desc => "The fact name used to determine the node name used for all requests the agent
1595
- makes to the primary server. WARNING: This setting is mutually exclusive with
1596
- node_name_value. Changing this setting also requires changes to the default
1597
- auth.conf configuration on the Puppet Master. Please see
1598
- http://links.puppet.com/node_name_fact for more information.",
1506
+ makes to the master. WARNING: This setting is mutually exclusive with
1507
+ node_name_value. Changing this setting also requires changes to
1508
+ Puppet Server's default [auth.conf](https://puppet.com/docs/puppetserver/latest/config_file_auth.html).",
1599
1509
  :hook => proc do |value|
1600
1510
  if !value.empty? and Puppet[:node_name_value] != Puppet[:certname]
1601
1511
  raise "Cannot specify both the node_name_value and node_name_fact settings"
@@ -1606,8 +1516,8 @@ EOT
1606
1516
  :default => "$statedir/state.yaml",
1607
1517
  :type => :file,
1608
1518
  :mode => "0640",
1609
- :desc => "Where Puppet agent and Puppet Server store state associated
1610
- with the running configuration. In the case of Puppet Server,
1519
+ :desc => "Where puppet agent and puppet master store state associated
1520
+ with the running configuration. In the case of puppet master,
1611
1521
  this file reflects the state discovered through interacting
1612
1522
  with clients."
1613
1523
  },
@@ -1644,12 +1554,6 @@ EOT
1644
1554
  :mode => "0750",
1645
1555
  :desc => "The directory in which serialized data is stored on the client."
1646
1556
  },
1647
- :write_catalog_summary => {
1648
- :default => true,
1649
- :type => :boolean,
1650
- :desc => "Whether to write the `classfile` and `resourcefile` after applying
1651
- the catalog. It is enabled by default, except when running `puppet apply`.",
1652
- },
1653
1557
  :classfile => {
1654
1558
  :default => "$statedir/classes.txt",
1655
1559
  :type => :file,
@@ -1676,11 +1580,11 @@ EOT
1676
1580
  the POSIX syslog service and the Windows Event Log are unavailable. (Currently,
1677
1581
  no supported operating systems match that description.)
1678
1582
 
1679
- Despite the name, both puppet agent and puppet server will use this file
1583
+ Despite the name, both puppet agent and puppet master will use this file
1680
1584
  as the fallback logging destination.
1681
1585
 
1682
1586
  For control over logging destinations, see the `--logdest` command line
1683
- option in the manual pages for puppet server, puppet agent, and puppet
1587
+ option in the manual pages for puppet master, puppet agent, and puppet
1684
1588
  apply. You can see man pages by running `puppet <SUBCOMMAND> --help`,
1685
1589
  or read them online at https://puppet.com/docs/puppet/latest/man/."
1686
1590
  },
@@ -1694,13 +1598,13 @@ EOT
1694
1598
  },
1695
1599
  :server => {
1696
1600
  :default => "puppet",
1697
- :desc => "The primary Puppet server to which the Puppet agent should connect.",
1601
+ :desc => "The puppet master server to which the puppet agent should connect.",
1698
1602
  },
1699
1603
  :server_list => {
1700
1604
  :default => [],
1701
1605
  :type => :server_list,
1702
- :desc => "The list of primary Puppet servers to which the Puppet agent should connect,
1703
- in the order that they will be tried.",
1606
+ :desc => "The list of Puppet master servers to which the Puppet agent should connect,
1607
+ in the order that they will be tried. Each value should be a fully qualified domain name, followed by an optional ':' and port number. If a port is omitted, Puppet uses masterport for that host.",
1704
1608
  },
1705
1609
  :use_srv_records => {
1706
1610
  :default => false,
@@ -1714,7 +1618,7 @@ EOT
1714
1618
  :http_extra_headers => {
1715
1619
  :default => [],
1716
1620
  :type => :http_extra_headers,
1717
- :desc => "The list of extra headers that will be sent with http requests to the primary server.
1621
+ :desc => "The list of extra headers that will be sent with http requests to the master.
1718
1622
  The header definition consists of a name and a value separated by a colon."
1719
1623
  },
1720
1624
  :ignoreschedules => {
@@ -1740,7 +1644,7 @@ EOT
1740
1644
  like it does when running normally. However, if a resource attribute is not in
1741
1645
  the desired state (as declared in the catalog), Puppet will take no
1742
1646
  action, and will instead report the changes it _would_ have made. These
1743
- simulated changes will appear in the report sent to the primary Puppet server, or
1647
+ simulated changes will appear in the report sent to the puppet master, or
1744
1648
  be shown on the console if running puppet agent or puppet apply in the
1745
1649
  foreground. The simulated changes will not send refresh events to any
1746
1650
  subscribing or notified resources, although Puppet will log that a refresh
@@ -1776,6 +1680,7 @@ EOT
1776
1680
  },
1777
1681
  :ca_port => {
1778
1682
  :default => "$serverport",
1683
+ :type => :port,
1779
1684
  :desc => "The port to use for the certificate authority.",
1780
1685
  },
1781
1686
  :preferred_serialization_format => {
@@ -1794,7 +1699,7 @@ EOT
1794
1699
  },
1795
1700
  :agent_disabled_lockfile => {
1796
1701
  :default => "$statedir/agent_disabled.lock",
1797
- :type => :string,
1702
+ :type => :file,
1798
1703
  :desc => "A lock file to indicate that puppet agent runs have been administratively
1799
1704
  disabled. File contains a JSON object with state information.",
1800
1705
  },
@@ -1812,7 +1717,7 @@ EOT
1812
1717
  :desc => "Whether to only use the cached catalog rather than compiling a new catalog
1813
1718
  on every run. Puppet can be run with this enabled by default and then selectively
1814
1719
  disabled when a recompile is desired. Because a Puppet agent using cached catalogs
1815
- does not contact the primary server for a new catalog, it also does not upload facts at
1720
+ does not contact the master for a new catalog, it also does not upload facts at
1816
1721
  the beginning of the Puppet run.",
1817
1722
  },
1818
1723
  :ignoremissingtypes => {
@@ -1820,7 +1725,7 @@ EOT
1820
1725
  :type => :boolean,
1821
1726
  :desc => "Skip searching for classes and definitions that were missing during a
1822
1727
  prior compilation. The list of missing objects is maintained per-environment and
1823
- persists until the environment is cleared or the primary server is restarted.",
1728
+ persists until the environment is cleared or the master is restarted.",
1824
1729
  },
1825
1730
  :splaylimit => {
1826
1731
  :default => "$runinterval",
@@ -1850,7 +1755,7 @@ EOT
1850
1755
  If you restart an agent's puppet service with `splay` enabled, it
1851
1756
  recalculates its splay period and delays its first agent run after
1852
1757
  restarting for this new period. If you simultaneously restart a group of
1853
- puppet agents with `splay` enabled, their checkins to your primary servers
1758
+ puppet agents with `splay` enabled, their checkins to your puppet masters
1854
1759
  can be distributed more evenly.",
1855
1760
  },
1856
1761
  :clientbucketdir => {
@@ -1865,6 +1770,7 @@ EOT
1865
1770
  },
1866
1771
  :report_port => {
1867
1772
  :default => "$serverport",
1773
+ :type => :port,
1868
1774
  :desc => "The port to communicate with the report_server.",
1869
1775
  },
1870
1776
  :report => {
@@ -1894,10 +1800,16 @@ EOT
1894
1800
  for the node stored in puppetdb are current. However, this will double the fact
1895
1801
  submission load on puppetdb, so it is disabled by default.",
1896
1802
  },
1803
+ :publicdir => {
1804
+ :default => nil,
1805
+ :type => :directory,
1806
+ :mode => "0755",
1807
+ :desc => "Where Puppet stores public files."
1808
+ },
1897
1809
  :lastrunfile => {
1898
- :default => "$statedir/last_run_summary.yaml",
1810
+ :default => "$publicdir/last_run_summary.yaml",
1899
1811
  :type => :file,
1900
- :mode => "0644",
1812
+ :mode => "0640",
1901
1813
  :desc => "Where puppet agent stores the last run report summary in yaml format."
1902
1814
  },
1903
1815
  :lastrunreport => {
@@ -1942,7 +1854,7 @@ EOT
1942
1854
 
1943
1855
  When starting for the first time, puppet agent will submit a certificate
1944
1856
  signing request (CSR) to the server named in the `ca_server` setting
1945
- (usually the primary Puppet server); this may be autosigned, or may need to be
1857
+ (usually the puppet master); this may be autosigned, or may need to be
1946
1858
  approved by a human, depending on the CA server's configuration.
1947
1859
 
1948
1860
  Puppet agent cannot apply configurations until its approved certificate is
@@ -1977,7 +1889,7 @@ EOT
1977
1889
  :type => :ttl,
1978
1890
  :desc => "The maximum amount of time the puppet agent should wait for an
1979
1891
  already running puppet agent to finish before starting a new one. This is set by default to 1 minute.
1980
- A value of `unlimited` will cause puppet agent to wait indefinitely.
1892
+ A value of `unlimited` will cause puppet agent to wait indefinitely.
1981
1893
  #{AS_DURATION}",
1982
1894
  }
1983
1895
  )
@@ -2034,7 +1946,7 @@ EOT
2034
1946
  :desc => "What files to ignore when pulling down plugins.",
2035
1947
  },
2036
1948
  :ignore_plugin_errors => {
2037
- :default => true,
1949
+ :default => false,
2038
1950
  :type => :boolean,
2039
1951
  :desc => "Whether the puppet run should ignore errors during pluginsync. If the setting
2040
1952
  is false and there are errors during pluginsync, then the agent will abort the run and
@@ -2056,7 +1968,7 @@ EOT
2056
1968
  :call_hook => :on_initialize_and_write, # Call our hook with the default value, so we always get the value added to facter.
2057
1969
  :hook => proc do |value|
2058
1970
  paths = value.split(File::PATH_SEPARATOR)
2059
- Puppet.runtime[:facter].search(*paths)
1971
+ Facter.search(*paths)
2060
1972
  end
2061
1973
  }
2062
1974
  )
@@ -2249,22 +2161,6 @@ EOT
2249
2161
  referencing variables that are explicitly set to undef).
2250
2162
  EOT
2251
2163
  },
2252
- :func3x_check => {
2253
- :default => true,
2254
- :type => :boolean,
2255
- :desc => <<-'EOT',
2256
- Causes validation of loaded legacy Ruby functions (3x API) to raise errors about illegal constructs that
2257
- could cause harm or that simply does not work. This flag is on by default. This flag is made available
2258
- so that the validation can be turned off in case the method of validation is faulty - if encountered, please
2259
- file a bug report.
2260
- EOT
2261
- :call_hook => :on_initialize_and_write,
2262
- :hook => proc do |value|
2263
- unless value
2264
- Puppet.deprecation_warning(_("The 'func3x_check' setting is deprecated and will be removed in a future release."))
2265
- end
2266
- end
2267
- },
2268
2164
  :tasks => {
2269
2165
  :default => false,
2270
2166
  :type => :boolean,