puppet 6.25.0-x64-mingw32 → 7.0.0-x64-mingw32

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 (783) 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 +87 -130
  116. data/lib/puppet/confine/variable.rb +1 -1
  117. data/lib/puppet/defaults.rb +128 -226
  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 +164 -114
  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 -12
  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 +0 -69
  230. data/lib/puppet/parser/scope.rb +0 -1
  231. data/lib/puppet/parser/templatewrapper.rb +1 -2
  232. data/lib/puppet/pops/evaluator/deferred_resolver.rb +3 -5
  233. data/lib/puppet/pops/evaluator/evaluator_impl.rb +0 -5
  234. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +3 -3
  235. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  236. data/lib/puppet/pops/issues.rb +0 -5
  237. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +6 -8
  238. data/lib/puppet/pops/lookup/lookup_adapter.rb +2 -3
  239. data/lib/puppet/pops/model/ast.pp +0 -42
  240. data/lib/puppet/pops/model/ast.rb +0 -291
  241. data/lib/puppet/pops/model/ast_transformer.rb +1 -1
  242. data/lib/puppet/pops/model/factory.rb +1 -47
  243. data/lib/puppet/pops/model/model_label_provider.rb +0 -5
  244. data/lib/puppet/pops/model/model_tree_dumper.rb +0 -22
  245. data/lib/puppet/pops/model/pn_transformer.rb +0 -16
  246. data/lib/puppet/pops/parser/egrammar.ra +0 -56
  247. data/lib/puppet/pops/parser/eparser.rb +1691 -1883
  248. data/lib/puppet/pops/parser/lexer2.rb +91 -92
  249. data/lib/puppet/pops/parser/parser_support.rb +0 -5
  250. data/lib/puppet/pops/parser/slurp_support.rb +0 -1
  251. data/lib/puppet/pops/resource/resource_type_impl.rb +2 -24
  252. data/lib/puppet/pops/serialization/to_data_converter.rb +6 -18
  253. data/lib/puppet/pops/serialization/to_stringified_converter.rb +1 -1
  254. data/lib/puppet/pops/types/p_sem_ver_type.rb +2 -8
  255. data/lib/puppet/pops/types/p_sensitive_type.rb +0 -10
  256. data/lib/puppet/pops/types/type_calculator.rb +0 -7
  257. data/lib/puppet/pops/types/type_formatter.rb +3 -4
  258. data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
  259. data/lib/puppet/pops/types/type_parser.rb +0 -4
  260. data/lib/puppet/pops/types/types.rb +1 -2
  261. data/lib/puppet/pops/validation/checker4_0.rb +9 -37
  262. data/lib/puppet/pops/validation/tasks_checker.rb +0 -12
  263. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -2
  264. data/lib/puppet/property/list.rb +1 -1
  265. data/lib/puppet/provider/aix_object.rb +1 -1
  266. data/lib/puppet/provider/exec/posix.rb +4 -16
  267. data/lib/puppet/provider/group/groupadd.rb +10 -18
  268. data/lib/puppet/provider/nameservice.rb +0 -18
  269. data/lib/puppet/provider/package/apt.rb +2 -34
  270. data/lib/puppet/provider/package/aptitude.rb +0 -6
  271. data/lib/puppet/provider/package/dnfmodule.rb +1 -1
  272. data/lib/puppet/provider/package/dpkg.rb +0 -10
  273. data/lib/puppet/provider/package/gem.rb +23 -3
  274. data/lib/puppet/provider/package/nim.rb +6 -11
  275. data/lib/puppet/provider/package/pip.rb +3 -16
  276. data/lib/puppet/provider/package/pkg.rb +2 -23
  277. data/lib/puppet/provider/package/portage.rb +1 -1
  278. data/lib/puppet/provider/package/puppet_gem.rb +1 -4
  279. data/lib/puppet/provider/package/puppetserver_gem.rb +1 -1
  280. data/lib/puppet/provider/package/yum.rb +1 -1
  281. data/lib/puppet/provider/parsedfile.rb +0 -3
  282. data/lib/puppet/provider/service/base.rb +1 -1
  283. data/lib/puppet/provider/service/debian.rb +0 -2
  284. data/lib/puppet/provider/service/init.rb +5 -5
  285. data/lib/puppet/provider/service/launchd.rb +2 -2
  286. data/lib/puppet/provider/service/redhat.rb +1 -1
  287. data/lib/puppet/provider/service/smf.rb +194 -76
  288. data/lib/puppet/provider/service/systemd.rb +6 -16
  289. data/lib/puppet/provider/service/upstart.rb +5 -5
  290. data/lib/puppet/provider/service/windows.rb +0 -38
  291. data/lib/puppet/provider/user/aix.rb +3 -46
  292. data/lib/puppet/provider/user/directoryservice.rb +11 -34
  293. data/lib/puppet/provider/user/useradd.rb +24 -134
  294. data/lib/puppet/provider.rb +1 -14
  295. data/lib/puppet/reference/configuration.rb +8 -7
  296. data/lib/puppet/reference/indirection.rb +1 -1
  297. data/lib/puppet/reference/providers.rb +2 -2
  298. data/lib/puppet/resource/catalog.rb +1 -14
  299. data/lib/puppet/resource/type.rb +3 -119
  300. data/lib/puppet/resource/type_collection.rb +3 -49
  301. data/lib/puppet/resource.rb +1 -89
  302. data/lib/puppet/runtime.rb +2 -13
  303. data/lib/puppet/settings/environment_conf.rb +0 -1
  304. data/lib/puppet/settings/integer_setting.rb +17 -0
  305. data/lib/puppet/settings/port_setting.rb +15 -0
  306. data/lib/puppet/settings/priority_setting.rb +5 -4
  307. data/lib/puppet/settings.rb +82 -98
  308. data/lib/puppet/ssl/base.rb +3 -5
  309. data/lib/puppet/ssl/certificate.rb +0 -6
  310. data/lib/puppet/ssl/certificate_request.rb +1 -12
  311. data/lib/puppet/ssl/certificate_signer.rb +6 -0
  312. data/lib/puppet/ssl/oids.rb +3 -1
  313. data/lib/puppet/ssl/ssl_provider.rb +17 -0
  314. data/lib/puppet/ssl/state_machine.rb +3 -1
  315. data/lib/puppet/ssl/verifier.rb +2 -0
  316. data/lib/puppet/ssl.rb +10 -6
  317. data/lib/puppet/test/test_helper.rb +2 -7
  318. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  319. data/lib/puppet/transaction/persistence.rb +1 -11
  320. data/lib/puppet/transaction/report.rb +3 -19
  321. data/lib/puppet/transaction.rb +1 -7
  322. data/lib/puppet/type/exec.rb +5 -35
  323. data/lib/puppet/type/file/checksum.rb +1 -1
  324. data/lib/puppet/type/file/mode.rb +0 -6
  325. data/lib/puppet/type/file/selcontext.rb +1 -1
  326. data/lib/puppet/type/file/source.rb +1 -1
  327. data/lib/puppet/type/file.rb +12 -32
  328. data/lib/puppet/type/filebucket.rb +4 -4
  329. data/lib/puppet/type/group.rb +1 -0
  330. data/lib/puppet/type/package.rb +8 -16
  331. data/lib/puppet/type/resources.rb +1 -1
  332. data/lib/puppet/type/service.rb +41 -26
  333. data/lib/puppet/type/tidy.rb +3 -22
  334. data/lib/puppet/type/user.rb +21 -38
  335. data/lib/puppet/type.rb +1 -77
  336. data/lib/puppet/util/autoload.rb +8 -1
  337. data/lib/puppet/util/command_line.rb +1 -1
  338. data/lib/puppet/util/execution.rb +0 -11
  339. data/lib/puppet/util/filetype.rb +2 -2
  340. data/lib/puppet/util/http_proxy.rb +2 -215
  341. data/lib/puppet/util/json.rb +0 -3
  342. data/lib/puppet/util/log.rb +2 -1
  343. data/lib/puppet/util/logging.rb +25 -1
  344. data/lib/puppet/util/monkey_patches.rb +0 -53
  345. data/lib/puppet/util/pidlock.rb +1 -1
  346. data/lib/puppet/util/posix.rb +5 -54
  347. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
  348. data/lib/puppet/util/rdoc.rb +0 -7
  349. data/lib/puppet/util/retry_action.rb +1 -1
  350. data/lib/puppet/util/run_mode.rb +9 -1
  351. data/lib/puppet/util/selinux.rb +4 -30
  352. data/lib/puppet/util/suidmanager.rb +2 -1
  353. data/lib/puppet/util/symbolic_file_mode.rb +17 -29
  354. data/lib/puppet/util/tagging.rb +0 -1
  355. data/lib/puppet/util/windows/adsi.rb +0 -46
  356. data/lib/puppet/util/windows/daemon.rb +360 -0
  357. data/lib/puppet/util/windows/error.rb +1 -0
  358. data/lib/puppet/util/windows/eventlog.rb +4 -9
  359. data/lib/puppet/util/windows/file.rb +8 -242
  360. data/lib/puppet/util/windows/monkey_patches/process.rb +414 -0
  361. data/lib/puppet/util/windows/principal.rb +2 -9
  362. data/lib/puppet/util/windows/process.rb +4 -226
  363. data/lib/puppet/util/windows/service.rb +9 -460
  364. data/lib/puppet/util/windows/sid.rb +2 -6
  365. data/lib/puppet/util/windows/string.rb +12 -13
  366. data/lib/puppet/util/windows/user.rb +2 -0
  367. data/lib/puppet/util/windows.rb +3 -8
  368. data/lib/puppet/util/yaml.rb +0 -22
  369. data/lib/puppet/util.rb +3 -4
  370. data/lib/puppet/vendor/require_vendored.rb +0 -1
  371. data/lib/puppet/version.rb +1 -1
  372. data/lib/puppet/x509/cert_provider.rb +29 -1
  373. data/lib/puppet/x509.rb +5 -1
  374. data/lib/puppet.rb +20 -25
  375. data/locales/puppet.pot +816 -1637
  376. data/man/man5/puppet.conf.5 +286 -382
  377. data/man/man8/puppet-agent.8 +2 -5
  378. data/man/man8/puppet-apply.8 +2 -2
  379. data/man/man8/puppet-catalog.8 +9 -9
  380. data/man/man8/puppet-config.8 +1 -1
  381. data/man/man8/puppet-describe.8 +1 -1
  382. data/man/man8/puppet-device.8 +2 -2
  383. data/man/man8/puppet-doc.8 +1 -1
  384. data/man/man8/puppet-epp.8 +1 -1
  385. data/man/man8/puppet-facts.8 +8 -51
  386. data/man/man8/puppet-filebucket.8 +4 -4
  387. data/man/man8/puppet-generate.8 +1 -1
  388. data/man/man8/puppet-help.8 +1 -1
  389. data/man/man8/puppet-lookup.8 +1 -1
  390. data/man/man8/puppet-module.8 +3 -60
  391. data/man/man8/puppet-node.8 +5 -5
  392. data/man/man8/puppet-parser.8 +1 -1
  393. data/man/man8/puppet-plugin.8 +1 -1
  394. data/man/man8/puppet-report.8 +5 -5
  395. data/man/man8/puppet-resource.8 +1 -1
  396. data/man/man8/puppet-script.8 +2 -2
  397. data/man/man8/puppet-ssl.8 +1 -5
  398. data/man/man8/puppet.8 +2 -2
  399. data/spec/fixtures/ssl/127.0.0.1-key.pem +57 -107
  400. data/spec/fixtures/ssl/127.0.0.1.pem +31 -52
  401. data/spec/fixtures/ssl/bad-basic-constraints.pem +35 -57
  402. data/spec/fixtures/ssl/bad-int-basic-constraints.pem +35 -57
  403. data/spec/fixtures/ssl/ca.pem +35 -57
  404. data/spec/fixtures/ssl/crl.pem +18 -28
  405. data/spec/fixtures/ssl/ec-key.pem +11 -11
  406. data/spec/fixtures/ssl/ec.pem +24 -33
  407. data/spec/fixtures/ssl/encrypted-ec-key.pem +12 -12
  408. data/spec/fixtures/ssl/encrypted-key.pem +58 -108
  409. data/spec/fixtures/ssl/intermediate-agent-crl.pem +19 -28
  410. data/spec/fixtures/ssl/intermediate-agent.pem +36 -57
  411. data/spec/fixtures/ssl/intermediate-crl.pem +21 -31
  412. data/spec/fixtures/ssl/intermediate.pem +36 -57
  413. data/spec/fixtures/ssl/pluto-key.pem +57 -107
  414. data/spec/fixtures/ssl/pluto.pem +30 -52
  415. data/spec/fixtures/ssl/request-key.pem +57 -107
  416. data/spec/fixtures/ssl/request.pem +26 -47
  417. data/spec/fixtures/ssl/revoked-key.pem +57 -107
  418. data/spec/fixtures/ssl/revoked.pem +30 -52
  419. data/spec/fixtures/ssl/signed-key.pem +57 -107
  420. data/spec/fixtures/ssl/signed.pem +30 -52
  421. data/spec/fixtures/ssl/tampered-cert.pem +30 -52
  422. data/spec/fixtures/ssl/tampered-csr.pem +26 -47
  423. data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +57 -107
  424. data/spec/fixtures/ssl/unknown-127.0.0.1.pem +29 -50
  425. data/spec/fixtures/ssl/unknown-ca-key.pem +57 -107
  426. data/spec/fixtures/ssl/unknown-ca.pem +33 -55
  427. data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
  428. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -4
  429. data/spec/integration/application/agent_spec.rb +51 -271
  430. data/spec/integration/application/apply_spec.rb +1 -20
  431. data/spec/integration/application/filebucket_spec.rb +16 -32
  432. data/spec/integration/application/help_spec.rb +2 -0
  433. data/spec/integration/application/module_spec.rb +0 -21
  434. data/spec/integration/application/plugin_spec.rb +24 -2
  435. data/spec/integration/configurer_spec.rb +2 -18
  436. data/spec/integration/defaults_spec.rb +14 -3
  437. data/spec/integration/environments/settings_interpolation_spec.rb +4 -0
  438. data/spec/integration/http/client_spec.rb +0 -12
  439. data/spec/integration/indirector/direct_file_server_spec.rb +3 -1
  440. data/spec/integration/indirector/facts/facter_spec.rb +39 -93
  441. data/spec/integration/network/http_pool_spec.rb +3 -21
  442. data/spec/integration/parser/catalog_spec.rb +0 -38
  443. data/spec/integration/parser/node_spec.rb +0 -9
  444. data/spec/integration/parser/pcore_resource_spec.rb +0 -37
  445. data/spec/integration/resource/type_collection_spec.rb +6 -2
  446. data/spec/integration/transaction/report_spec.rb +1 -1
  447. data/spec/integration/transaction_spec.rb +9 -4
  448. data/spec/integration/type/exec_spec.rb +45 -70
  449. data/spec/integration/type/file_spec.rb +7 -6
  450. data/spec/integration/type/package_spec.rb +6 -6
  451. data/spec/integration/util/rdoc/parser_spec.rb +1 -1
  452. data/spec/integration/util/windows/adsi_spec.rb +1 -21
  453. data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
  454. data/spec/integration/util/windows/principal_spec.rb +0 -21
  455. data/spec/integration/util/windows/process_spec.rb +9 -1
  456. data/spec/integration/util/windows/registry_spec.rb +10 -6
  457. data/spec/integration/util/windows/security_spec.rb +1 -1
  458. data/spec/lib/matchers/include.rb +27 -0
  459. data/spec/lib/matchers/include_spec.rb +32 -0
  460. data/spec/lib/puppet/test_ca.rb +2 -7
  461. data/spec/lib/puppet_spec/modules.rb +2 -13
  462. data/spec/lib/puppet_spec/puppetserver.rb +1 -16
  463. data/spec/lib/puppet_spec/settings.rb +1 -1
  464. data/spec/shared_behaviours/documentation_on_faces.rb +2 -0
  465. data/spec/spec_helper.rb +17 -13
  466. data/spec/unit/agent_spec.rb +6 -10
  467. data/spec/unit/application/agent_spec.rb +3 -7
  468. data/spec/unit/application/apply_spec.rb +56 -76
  469. data/spec/unit/application/facts_spec.rb +12 -456
  470. data/spec/unit/application/filebucket_spec.rb +43 -39
  471. data/spec/unit/application/resource_spec.rb +0 -29
  472. data/spec/unit/application/ssl_spec.rb +2 -25
  473. data/spec/unit/application_spec.rb +9 -51
  474. data/spec/unit/certificate_factory_spec.rb +1 -1
  475. data/spec/unit/configurer/downloader_spec.rb +6 -8
  476. data/spec/unit/configurer/plugin_handler_spec.rb +56 -18
  477. data/spec/unit/configurer_spec.rb +67 -202
  478. data/spec/unit/confine/feature_spec.rb +1 -1
  479. data/spec/unit/confine_spec.rb +2 -8
  480. data/spec/unit/context/trusted_information_spec.rb +2 -6
  481. data/spec/unit/defaults_spec.rb +68 -55
  482. data/spec/unit/environments_spec.rb +68 -408
  483. data/spec/unit/face/node_spec.rb +11 -0
  484. data/spec/unit/face/plugin_spec.rb +73 -33
  485. data/spec/unit/file_bucket/dipper_spec.rb +2 -2
  486. data/spec/unit/file_bucket/file_spec.rb +1 -1
  487. data/spec/unit/file_serving/configuration/parser_spec.rb +15 -41
  488. data/spec/unit/file_serving/configuration_spec.rb +10 -26
  489. data/spec/unit/file_serving/fileset_spec.rb +0 -60
  490. data/spec/unit/file_serving/metadata_spec.rb +3 -3
  491. data/spec/unit/file_serving/terminus_helper_spec.rb +4 -11
  492. data/spec/unit/file_system_spec.rb +0 -22
  493. data/spec/unit/forge/module_release_spec.rb +7 -2
  494. data/spec/unit/functions/assert_type_spec.rb +1 -1
  495. data/spec/unit/functions/camelcase_spec.rb +1 -1
  496. data/spec/unit/functions/capitalize_spec.rb +1 -1
  497. data/spec/unit/functions/downcase_spec.rb +1 -1
  498. data/spec/unit/functions/empty_spec.rb +0 -10
  499. data/spec/unit/functions/logging_spec.rb +0 -1
  500. data/spec/unit/functions/lookup_spec.rb +0 -64
  501. data/spec/unit/functions/unwrap_spec.rb +0 -8
  502. data/spec/unit/functions/upcase_spec.rb +1 -1
  503. data/spec/unit/functions4_spec.rb +2 -2
  504. data/spec/unit/gettext/config_spec.rb +0 -12
  505. data/spec/unit/http/client_spec.rb +7 -8
  506. data/spec/unit/{network/resolver_spec.rb → http/dns_spec.rb} +3 -3
  507. data/spec/unit/http/external_client_spec.rb +4 -4
  508. data/spec/unit/{network/http → http}/factory_spec.rb +5 -30
  509. data/spec/unit/{network/http/session_spec.rb → http/pool_entry_spec.rb} +3 -3
  510. data/spec/unit/{network/http → http}/pool_spec.rb +12 -17
  511. data/spec/unit/{util/http_proxy_spec.rb → http/proxy_spec.rb} +2 -69
  512. data/spec/unit/http/resolver_spec.rb +13 -13
  513. data/spec/unit/http/service/compiler_spec.rb +0 -193
  514. data/spec/unit/http/service/file_server_spec.rb +3 -3
  515. data/spec/unit/http/service/puppetserver_spec.rb +34 -4
  516. data/spec/unit/http/service_spec.rb +0 -1
  517. data/spec/unit/http/session_spec.rb +16 -14
  518. data/spec/unit/{network/http → http}/site_spec.rb +3 -3
  519. data/spec/unit/indirector/catalog/compiler_spec.rb +10 -101
  520. data/spec/unit/indirector/catalog/rest_spec.rb +0 -8
  521. data/spec/unit/indirector/face_spec.rb +1 -0
  522. data/spec/unit/indirector/facts/facter_spec.rb +3 -0
  523. data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
  524. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +8 -26
  525. data/spec/unit/indirector/file_content/rest_spec.rb +0 -4
  526. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -4
  527. data/spec/unit/indirector/file_server_spec.rb +1 -15
  528. data/spec/unit/indirector/indirection_spec.rb +15 -18
  529. data/spec/unit/indirector/report/rest_spec.rb +2 -17
  530. data/spec/unit/indirector/request_spec.rb +0 -264
  531. data/spec/unit/indirector/resource/ral_spec.rb +75 -40
  532. data/spec/unit/indirector/rest_spec.rb +98 -752
  533. data/spec/unit/indirector/store_configs_spec.rb +7 -0
  534. data/spec/unit/indirector_spec.rb +2 -2
  535. data/spec/unit/interface/action_spec.rb +9 -0
  536. data/spec/unit/module_spec.rb +1 -15
  537. data/spec/unit/module_tool/applications/installer_spec.rb +0 -105
  538. data/spec/unit/network/authconfig_spec.rb +2 -129
  539. data/spec/unit/network/authorization_spec.rb +2 -55
  540. data/spec/unit/network/formats_spec.rb +4 -51
  541. data/spec/unit/network/http/api/indirected_routes_spec.rb +5 -92
  542. data/spec/unit/network/http/api/master/v3_spec.rb +28 -7
  543. data/spec/unit/network/http/api_spec.rb +10 -0
  544. data/spec/unit/network/http/connection_spec.rb +19 -41
  545. data/spec/unit/network/http/handler_spec.rb +0 -1
  546. data/spec/unit/network/http_pool_spec.rb +0 -4
  547. data/spec/unit/node/environment_spec.rb +33 -21
  548. data/spec/unit/node_spec.rb +2 -54
  549. data/spec/unit/parser/compiler_spec.rb +19 -3
  550. data/spec/unit/parser/functions/create_resources_spec.rb +2 -20
  551. data/spec/unit/parser/functions/fqdn_rand_spec.rb +1 -15
  552. data/spec/unit/parser/resource_spec.rb +8 -14
  553. data/spec/unit/parser/templatewrapper_spec.rb +5 -16
  554. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +4 -7
  555. data/spec/unit/pops/loaders/loaders_spec.rb +6 -21
  556. data/spec/unit/pops/parser/parse_application_spec.rb +4 -22
  557. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  558. data/spec/unit/pops/parser/parse_capabilities_spec.rb +8 -21
  559. data/spec/unit/pops/parser/parse_containers_spec.rb +11 -0
  560. data/spec/unit/pops/parser/parse_site_spec.rb +20 -24
  561. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -71
  562. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -59
  563. data/spec/unit/pops/serialization/to_stringified_spec.rb +0 -5
  564. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -18
  565. data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -18
  566. data/spec/unit/pops/types/type_calculator_spec.rb +6 -12
  567. data/spec/unit/pops/types/type_factory_spec.rb +1 -1
  568. data/spec/unit/pops/validator/validator_spec.rb +61 -46
  569. data/spec/unit/pops/visitor_spec.rb +1 -1
  570. data/spec/unit/property_spec.rb +0 -1
  571. data/spec/unit/provider/group/groupadd_spec.rb +2 -5
  572. data/spec/unit/provider/nameservice_spec.rb +64 -122
  573. data/spec/unit/provider/package/apt_spec.rb +23 -28
  574. data/spec/unit/provider/package/aptitude_spec.rb +1 -1
  575. data/spec/unit/provider/package/base_spec.rb +5 -6
  576. data/spec/unit/provider/package/dnfmodule_spec.rb +1 -10
  577. data/spec/unit/provider/package/dpkg_spec.rb +0 -48
  578. data/spec/unit/provider/package/gem_spec.rb +33 -1
  579. data/spec/unit/provider/package/nim_spec.rb +0 -42
  580. data/spec/unit/provider/package/pacman_spec.rb +12 -18
  581. data/spec/unit/provider/package/pip2_spec.rb +1 -1
  582. data/spec/unit/provider/package/pip3_spec.rb +1 -1
  583. data/spec/unit/provider/package/pip_spec.rb +12 -44
  584. data/spec/unit/provider/package/pkg_spec.rb +4 -29
  585. data/spec/unit/provider/package/pkgdmg_spec.rb +4 -0
  586. data/spec/unit/provider/package/puppet_gem_spec.rb +4 -3
  587. data/spec/unit/provider/package/puppetserver_gem_spec.rb +1 -1
  588. data/spec/unit/provider/parsedfile_spec.rb +0 -10
  589. data/spec/unit/provider/service/init_spec.rb +0 -1
  590. data/spec/unit/provider/service/launchd_spec.rb +0 -11
  591. data/spec/unit/provider/service/openwrt_spec.rb +1 -3
  592. data/spec/unit/provider/service/smf_spec.rb +401 -165
  593. data/spec/unit/provider/service/systemd_spec.rb +9 -54
  594. data/spec/unit/provider/service/windows_spec.rb +0 -203
  595. data/spec/unit/provider/user/aix_spec.rb +0 -105
  596. data/spec/unit/provider/user/directoryservice_spec.rb +36 -68
  597. data/spec/unit/provider/user/hpux_spec.rb +1 -1
  598. data/spec/unit/provider/user/pw_spec.rb +0 -2
  599. data/spec/unit/provider/user/useradd_spec.rb +5 -114
  600. data/spec/unit/provider_spec.rb +12 -22
  601. data/spec/unit/puppet_spec.rb +4 -12
  602. data/spec/unit/resource/catalog_spec.rb +1 -1
  603. data/spec/unit/resource/type_collection_spec.rb +2 -22
  604. data/spec/unit/resource/type_spec.rb +1 -1
  605. data/spec/unit/resource_spec.rb +10 -67
  606. data/spec/unit/settings/http_extra_headers_spec.rb +2 -4
  607. data/spec/unit/settings/integer_setting_spec.rb +42 -0
  608. data/spec/unit/settings/port_setting_spec.rb +31 -0
  609. data/spec/unit/settings/priority_setting_spec.rb +4 -4
  610. data/spec/unit/settings_spec.rb +79 -110
  611. data/spec/unit/ssl/base_spec.rb +37 -3
  612. data/spec/unit/ssl/certificate_request_spec.rb +21 -45
  613. data/spec/unit/ssl/certificate_spec.rb +2 -11
  614. data/spec/unit/ssl/ssl_provider_spec.rb +2 -5
  615. data/spec/unit/ssl/state_machine_spec.rb +5 -20
  616. data/spec/unit/ssl/verifier_spec.rb +0 -21
  617. data/spec/unit/transaction/additional_resource_generator_spec.rb +9 -3
  618. data/spec/unit/transaction/event_manager_spec.rb +11 -14
  619. data/spec/unit/transaction/report_spec.rb +0 -2
  620. data/spec/unit/transaction/resource_harness_spec.rb +2 -2
  621. data/spec/unit/transaction_spec.rb +55 -96
  622. data/spec/unit/type/exec_spec.rb +29 -76
  623. data/spec/unit/type/file/checksum_spec.rb +6 -6
  624. data/spec/unit/type/file/content_spec.rb +2 -1
  625. data/spec/unit/type/file/ensure_spec.rb +1 -1
  626. data/spec/unit/type/file/mode_spec.rb +1 -1
  627. data/spec/unit/type/file/selinux_spec.rb +5 -3
  628. data/spec/unit/type/file/source_spec.rb +4 -5
  629. data/spec/unit/type/file_spec.rb +18 -6
  630. data/spec/unit/type/group_spec.rb +6 -13
  631. data/spec/unit/type/package_spec.rb +1 -1
  632. data/spec/unit/type/resources_spec.rb +7 -7
  633. data/spec/unit/type/service_spec.rb +189 -87
  634. data/spec/unit/type/tidy_spec.rb +8 -24
  635. data/spec/unit/type/user_spec.rb +0 -45
  636. data/spec/unit/type_spec.rb +24 -4
  637. data/spec/unit/util/at_fork_spec.rb +2 -2
  638. data/spec/unit/util/autoload_spec.rb +1 -5
  639. data/spec/unit/util/backups_spec.rb +2 -3
  640. data/spec/unit/util/execution_spec.rb +11 -44
  641. data/spec/unit/util/inifile_spec.rb +14 -6
  642. data/spec/unit/util/log_spec.rb +7 -8
  643. data/spec/unit/util/logging_spec.rb +3 -5
  644. data/spec/unit/util/monkey_patches_spec.rb +0 -6
  645. data/spec/unit/util/posix_spec.rb +15 -363
  646. data/spec/unit/util/run_mode_spec.rb +21 -121
  647. data/spec/unit/util/selinux_spec.rb +68 -163
  648. data/spec/unit/util/storage_spec.rb +1 -3
  649. data/spec/unit/util/suidmanager_spec.rb +41 -44
  650. data/spec/unit/util/windows/sid_spec.rb +0 -41
  651. data/spec/unit/util/windows/string_spec.rb +1 -3
  652. data/spec/unit/util/yaml_spec.rb +0 -54
  653. data/spec/unit/util_spec.rb +6 -31
  654. data/tasks/generate_cert_fixtures.rake +3 -12
  655. data/tasks/parallel.rake +3 -3
  656. metadata +137 -288
  657. data/conf/auth.conf +0 -150
  658. data/ext/README.md +0 -13
  659. data/lib/puppet/application/cert.rb +0 -76
  660. data/lib/puppet/application/key.rb +0 -4
  661. data/lib/puppet/application/man.rb +0 -4
  662. data/lib/puppet/application/status.rb +0 -4
  663. data/lib/puppet/face/key.rb +0 -16
  664. data/lib/puppet/face/man.rb +0 -145
  665. data/lib/puppet/face/module/build.rb +0 -14
  666. data/lib/puppet/face/module/generate.rb +0 -14
  667. data/lib/puppet/face/module/search.rb +0 -103
  668. data/lib/puppet/face/status.rb +0 -51
  669. data/lib/puppet/facter_impl.rb +0 -96
  670. data/lib/puppet/ffi/posix/constants.rb +0 -14
  671. data/lib/puppet/ffi/posix/functions.rb +0 -24
  672. data/lib/puppet/ffi/posix.rb +0 -10
  673. data/lib/puppet/file_serving/mount/scripts.rb +0 -24
  674. data/lib/puppet/indirector/certificate/file.rb +0 -9
  675. data/lib/puppet/indirector/certificate/rest.rb +0 -18
  676. data/lib/puppet/indirector/certificate_request/file.rb +0 -9
  677. data/lib/puppet/indirector/certificate_request/memory.rb +0 -7
  678. data/lib/puppet/indirector/certificate_request/rest.rb +0 -11
  679. data/lib/puppet/indirector/file_content/http.rb +0 -22
  680. data/lib/puppet/indirector/key/file.rb +0 -46
  681. data/lib/puppet/indirector/key/memory.rb +0 -7
  682. data/lib/puppet/indirector/ssl_file.rb +0 -162
  683. data/lib/puppet/indirector/status/local.rb +0 -12
  684. data/lib/puppet/indirector/status/rest.rb +0 -27
  685. data/lib/puppet/indirector/status.rb +0 -3
  686. data/lib/puppet/module_tool/applications/searcher.rb +0 -29
  687. data/lib/puppet/network/auth_config_parser.rb +0 -90
  688. data/lib/puppet/network/authstore.rb +0 -283
  689. data/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
  690. data/lib/puppet/network/http/api/master/v3/environment.rb +0 -88
  691. data/lib/puppet/network/http/base_pool.rb +0 -36
  692. data/lib/puppet/network/http/compression.rb +0 -127
  693. data/lib/puppet/network/http/connection_adapter.rb +0 -184
  694. data/lib/puppet/network/http/nocache_pool.rb +0 -28
  695. data/lib/puppet/network/rest_controller.rb +0 -2
  696. data/lib/puppet/network/rights.rb +0 -210
  697. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -66
  698. data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -22
  699. data/lib/puppet/parser/environment_compiler.rb +0 -202
  700. data/lib/puppet/pops/types/enumeration.rb +0 -16
  701. data/lib/puppet/resource/capability_finder.rb +0 -154
  702. data/lib/puppet/rest/errors.rb +0 -15
  703. data/lib/puppet/rest/response.rb +0 -35
  704. data/lib/puppet/rest/route.rb +0 -85
  705. data/lib/puppet/rest/routes.rb +0 -135
  706. data/lib/puppet/settings/alias_setting.rb +0 -37
  707. data/lib/puppet/ssl/host.rb +0 -505
  708. data/lib/puppet/ssl/key.rb +0 -61
  709. data/lib/puppet/ssl/validator/default_validator.rb +0 -209
  710. data/lib/puppet/ssl/validator/no_validator.rb +0 -22
  711. data/lib/puppet/ssl/validator.rb +0 -61
  712. data/lib/puppet/ssl/verifier_adapter.rb +0 -58
  713. data/lib/puppet/status.rb +0 -40
  714. data/lib/puppet/util/connection.rb +0 -88
  715. data/lib/puppet/util/fact_dif.rb +0 -81
  716. data/lib/puppet/util/ssl.rb +0 -83
  717. data/lib/puppet/util/windows/api_types.rb +0 -309
  718. data/lib/puppet/util/windows/monkey_patches/dir.rb +0 -40
  719. data/lib/puppet/vendor/load_pathspec.rb +0 -1
  720. data/lib/puppet/vendor/pathspec/CHANGELOG.md +0 -2
  721. data/lib/puppet/vendor/pathspec/LICENSE +0 -201
  722. data/lib/puppet/vendor/pathspec/PUPPET_README.md +0 -6
  723. data/lib/puppet/vendor/pathspec/README.md +0 -53
  724. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
  725. data/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
  726. data/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
  727. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
  728. data/man/man8/puppet-key.8 +0 -126
  729. data/man/man8/puppet-man.8 +0 -76
  730. data/man/man8/puppet-status.8 +0 -108
  731. data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -91
  732. data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
  733. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
  734. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
  735. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
  736. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
  737. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
  738. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
  739. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
  740. data/spec/fixtures/ssl/oid-key.pem +0 -117
  741. data/spec/fixtures/ssl/oid.pem +0 -69
  742. data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
  743. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
  744. data/spec/integration/application/resource_spec.rb +0 -64
  745. data/spec/integration/application/ssl_spec.rb +0 -20
  746. data/spec/integration/l10n/compiler_spec.rb +0 -37
  747. data/spec/integration/network/authconfig_spec.rb +0 -256
  748. data/spec/integration/util/windows/monkey_patches/dir_spec.rb +0 -11
  749. data/spec/shared_contexts/l10n.rb +0 -27
  750. data/spec/unit/application/man_spec.rb +0 -52
  751. data/spec/unit/capability_spec.rb +0 -414
  752. data/spec/unit/face/key_spec.rb +0 -9
  753. data/spec/unit/face/module/search_spec.rb +0 -231
  754. data/spec/unit/face/status_spec.rb +0 -9
  755. data/spec/unit/facter_impl_spec.rb +0 -31
  756. data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
  757. data/spec/unit/indirector/certificate/file_spec.rb +0 -14
  758. data/spec/unit/indirector/certificate/rest_spec.rb +0 -61
  759. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -14
  760. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -25
  761. data/spec/unit/indirector/key/file_spec.rb +0 -78
  762. data/spec/unit/indirector/ssl_file_spec.rb +0 -305
  763. data/spec/unit/indirector/status/local_spec.rb +0 -10
  764. data/spec/unit/indirector/status/rest_spec.rb +0 -50
  765. data/spec/unit/module_tool/applications/searcher_spec.rb +0 -38
  766. data/spec/unit/network/auth_config_parser_spec.rb +0 -115
  767. data/spec/unit/network/authstore_spec.rb +0 -407
  768. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +0 -57
  769. data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -185
  770. data/spec/unit/network/http/compression_spec.rb +0 -240
  771. data/spec/unit/network/http/nocache_pool_spec.rb +0 -64
  772. data/spec/unit/network/http_spec.rb +0 -9
  773. data/spec/unit/network/rights_spec.rb +0 -439
  774. data/spec/unit/parser/environment_compiler_spec.rb +0 -730
  775. data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +0 -20
  776. data/spec/unit/pops/types/enumeration_spec.rb +0 -51
  777. data/spec/unit/resource/capability_finder_spec.rb +0 -148
  778. data/spec/unit/rest/route_spec.rb +0 -132
  779. data/spec/unit/ssl/host_spec.rb +0 -645
  780. data/spec/unit/ssl/key_spec.rb +0 -173
  781. data/spec/unit/ssl/validator_spec.rb +0 -278
  782. data/spec/unit/status_spec.rb +0 -45
  783. 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
@@ -830,11 +808,11 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
830
808
  :certname => {
831
809
  :default => lambda { Puppet::Settings.default_certname.downcase },
832
810
  :desc => "The name to use when handling certificates. When a node
833
- 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
834
812
  `certname` setting as its requested Subject CN.
835
813
 
836
814
  This is the name used when managing a node's permissions in
837
- [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).
838
816
  In most cases, it is also used as the node's name when matching
839
817
  [node definitions](https://puppet.com/docs/puppet/latest/lang_node_definitions.html)
840
818
  and requesting data from an ENC. (This can be changed with the `node_name_value`
@@ -849,9 +827,9 @@ Valid values are 0 (never cache) and 15 (15 second minimum wait time).
849
827
  only use lowercase letters, numbers, periods, underscores, and dashes. (That is,
850
828
  it should match `/\A[a-z0-9._-]+\Z/`.)
851
829
  * The special value `ca` is reserved, and can't be used as the certname
852
- for a normal node.
830
+ for a normal node.
853
831
 
854
- **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.
855
833
 
856
834
  Defaults to the node's fully qualified domain name.",
857
835
  :call_hook => :on_initialize_and_write,
@@ -878,8 +856,8 @@ names.
878
856
  **Note:** The list of alternate names is locked in when the server's
879
857
  certificate is signed. If you need to change the list later, you can't just
880
858
  change this setting; you also need to regenerate the certificate. For more
881
- information on that process, see the
882
- [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).
883
861
 
884
862
  To see all the alternate names your servers are using, log into your CA server
885
863
  and run `puppetserver ca list --all`, then check the output for `(alt names: ...)`.
@@ -893,7 +871,7 @@ EOT
893
871
  :desc => <<EOT
894
872
  An optional file containing custom attributes to add to certificate signing
895
873
  requests (CSRs). You should ensure that this file does not exist on your CA
896
- Puppet Server; if it does, unwanted certificate extensions may leak into
874
+ puppet master; if it does, unwanted certificate extensions may leak into
897
875
  certificates created with the `puppetserver ca generate` command.
898
876
 
899
877
  If present, this file must be a YAML hash containing a `custom_attributes` key
@@ -984,13 +962,13 @@ EOT
984
962
  Generally unused."
985
963
  },
986
964
  :hostcsr => {
987
- :default => "$ssldir/csr_$certname.pem",
965
+ :default => "$requestdir/$certname.pem",
988
966
  :type => :file,
989
967
  :mode => "0644",
990
968
  :owner => "service",
991
969
  :group => "service",
992
- :deprecated => :completely,
993
- :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."
994
972
  },
995
973
  :hostcert => {
996
974
  :default => "$certdir/$certname.pem",
@@ -1041,29 +1019,6 @@ EOT
1041
1019
  puppet module tool and the 'http' report processor. This setting is ignored when
1042
1020
  making requests to puppet:// URLs such as catalog and report requests.",
1043
1021
  },
1044
- :ssl_client_ca_auth => {
1045
- :type => :file,
1046
- :mode => "0644",
1047
- :owner => "service",
1048
- :group => "service",
1049
- :desc => "Certificate authorities who issue server certificates. SSL servers will not be
1050
- considered authentic unless they possess a certificate issued by an authority
1051
- listed in this file. If this setting has no value then the Puppet master's CA
1052
- certificate (localcacert) will be used.",
1053
- :hook => proc do |val|
1054
- Puppet.deprecation_warning(_("Setting 'ssl_client_ca_auth' is deprecated."))
1055
- end
1056
- },
1057
- :ssl_server_ca_auth => {
1058
- :type => :file,
1059
- :mode => "0644",
1060
- :owner => "service",
1061
- :group => "service",
1062
- :deprecated => :completely,
1063
- :desc => "The setting is deprecated and has no effect. Ensure all root and
1064
- intermediate certificate authorities used to issue client certificates are
1065
- contained in the server's `cacert` file on the server."
1066
- },
1067
1022
  :hostcrl => {
1068
1023
  :default => "$ssldir/crl.pem",
1069
1024
  :type => :file,
@@ -1097,14 +1052,6 @@ EOT
1097
1052
  certificate revocation checking and does not attempt to download the CRL.
1098
1053
  EOT
1099
1054
  },
1100
- :ciphers => {
1101
- :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',
1102
- :type => :string,
1103
- :desc => "The list of ciphersuites for TLS connections initiated by puppet. The
1104
- default value is chosen to support TLS 1.0 and up, but can be made
1105
- more restrictive if needed. The ciphersuites must be specified in OpenSSL
1106
- format, not IANA."
1107
- },
1108
1055
  :key_type => {
1109
1056
  :default => 'rsa',
1110
1057
  :type => :enum,
@@ -1148,7 +1095,7 @@ EOT
1148
1095
  :type => :string,
1149
1096
  :desc => "Where to send log messages. Choose between 'syslog' (the POSIX syslog
1150
1097
  service), 'eventlog' (the Windows Event Log), 'console', or the path to a log
1151
- file. Multiple destinations can be set using a comma separated list (eg: `/path/file1,console,/path/file2`)"
1098
+ file."
1152
1099
  # Sure would be nice to set the Puppet::Util::Log destination here in an :on_initialize_and_write hook,
1153
1100
  # unfortunately we have a large number of tests that rely on the logging not resetting itself when the
1154
1101
  # settings are initialized as they test what gets logged during settings initialization.
@@ -1165,6 +1112,13 @@ EOT
1165
1112
  :default => lambda { default_cadir },
1166
1113
  :type => :directory,
1167
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
1168
1122
  },
1169
1123
  :cacert => {
1170
1124
  :default => "$cadir/ca_crt.pem",
@@ -1205,7 +1159,7 @@ EOT
1205
1159
  :default => "$confdir/autosign.conf",
1206
1160
  :type => :autosign,
1207
1161
  :desc => "Whether (and how) to autosign certificate requests. This setting
1208
- 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).
1209
1163
 
1210
1164
  Valid values are true (autosigns all certificate requests; not recommended),
1211
1165
  false (disables autosigning certificates), or the absolute path to a file.
@@ -1216,7 +1170,7 @@ EOT
1216
1170
  file, it will be treated as a policy executable; otherwise, it will be
1217
1171
  treated as a config file.
1218
1172
 
1219
- 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
1220
1174
  every time it receives a CSR. The executable will be passed the subject CN of the
1221
1175
  request _as a command line argument,_ and the contents of the CSR in PEM format
1222
1176
  _on stdin._ It should exit with a status of 0 if the cert should be autosigned
@@ -1302,7 +1256,7 @@ EOT
1302
1256
  :manifest => {
1303
1257
  :default => nil,
1304
1258
  :type => :file_or_directory,
1305
- :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
1306
1260
  or a directory of manifests to be evaluated in alphabetical order. Puppet manages
1307
1261
  this path as a directory if one exists or if the path ends with a / or \\.
1308
1262
 
@@ -1391,34 +1345,25 @@ EOT
1391
1345
  by `puppet`, and should only be set if you're writing your own Puppet
1392
1346
  executable.",
1393
1347
  },
1394
- :masterport => {
1348
+ :serverport => {
1395
1349
  :default => 8140,
1350
+ :type => :port,
1396
1351
  :desc => "The default port puppet subcommands use to communicate
1397
1352
  with Puppet Server. (eg `puppet facts upload`, `puppet agent`). May be
1398
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
1399
1357
  },
1400
- :serverport => {
1401
- :type => :alias,
1402
- :alias_for => :masterport
1403
- },
1404
- :node_name => {
1405
- :default => 'cert',
1406
- :type => :enum,
1407
- :values => ['cert', 'facter'],
1408
- :deprecated => :completely,
1409
- :hook => proc { |val|
1410
- if val != 'cert'
1411
- Puppet.deprecation_warning("The node_name setting is deprecated and will be removed in a future release.")
1412
- end
1413
- },
1414
- :desc => "How the puppet master determines the client's identity
1415
- and sets the 'hostname', 'fqdn' and 'domain' facts for use in the manifest,
1416
- in particular for determining which 'node' statement applies to the client.
1417
- Possible values are 'cert' (use the subject's CN in the client's
1418
- certificate) and 'facter' (use the hostname that the client
1419
- reported in its facts).
1420
-
1421
- 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
1422
1367
  },
1423
1368
  :bucketdir => {
1424
1369
  :default => "$vardir/bucket",
@@ -1428,15 +1373,6 @@ EOT
1428
1373
  :group => "service",
1429
1374
  :desc => "Where FileBucket files are stored."
1430
1375
  },
1431
- :rest_authconfig => {
1432
- :default => "$confdir/auth.conf",
1433
- :type => :file,
1434
- :deprecated => :completely,
1435
- :desc => "The configuration file that defines the rights to the different
1436
- rest indirections. This can be used as a fine-grained authorization system for
1437
- `puppet master`. The `puppet master` command is deprecated and Puppet Server
1438
- uses its own auth.conf that must be placed within its configuration directory.",
1439
- },
1440
1376
  :trusted_oid_mapping_file => {
1441
1377
  :default => "$confdir/custom_trusted_oid_mapping.yaml",
1442
1378
  :type => :file,
@@ -1509,17 +1445,15 @@ EOT
1509
1445
  their names should be comma-separated, with whitespace allowed. (For example,
1510
1446
  `reports = http, store`.)
1511
1447
 
1512
- This setting is relevant to puppet server and puppet apply. The primary Puppet
1513
- 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
1514
1450
  agent nodes, and puppet apply will call them with its own report. (In
1515
1451
  all cases, the node applying the catalog must have `report = true`.)
1516
1452
 
1517
1453
  See the report reference for information on the built-in report
1518
1454
  handlers; custom report handlers can also be loaded from modules.
1519
1455
  (Report handlers are loaded from the lib directory, at
1520
- `puppet/reports/NAME.rb`.)
1521
-
1522
- To turn off reports entirely, set this to `none`",
1456
+ `puppet/reports/NAME.rb`.)",
1523
1457
  },
1524
1458
  :reportdir => {
1525
1459
  :default => "$vardir/reports",
@@ -1541,23 +1475,7 @@ EOT
1541
1475
  :default => "$confdir/fileserver.conf",
1542
1476
  :type => :file,
1543
1477
  :desc => "Where the fileserver configuration is stored.",
1544
- },
1545
- :strict_hostname_checking => {
1546
- :default => true,
1547
- :type => :boolean,
1548
- :desc => "Whether to only search for the complete
1549
- hostname as it is in the certificate when searching for node information
1550
- in the catalogs or to match dot delimited segments of the cert's certname
1551
- and the hostname, fqdn, and/or domain facts.
1552
-
1553
- This setting is deprecated and will be removed in a future release.",
1554
- :hook => proc { |val|
1555
- if val != true
1556
- 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).")
1557
- end
1558
- }
1559
- }
1560
- )
1478
+ })
1561
1479
 
1562
1480
  settings.define_settings(:device,
1563
1481
  :devicedir => {
@@ -1578,18 +1496,16 @@ EOT
1578
1496
  :node_name_value => {
1579
1497
  :default => "$certname",
1580
1498
  :desc => "The explicit value used for the node name for all requests the agent
1581
- makes to the primary server. WARNING: This setting is mutually exclusive with
1582
- node_name_fact. Changing this setting also requires changes to the default
1583
- auth.conf configuration on the Puppet Master. Please see
1584
- 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)."
1585
1502
  },
1586
1503
  :node_name_fact => {
1587
1504
  :default => "",
1588
1505
  :desc => "The fact name used to determine the node name used for all requests the agent
1589
- makes to the primary server. WARNING: This setting is mutually exclusive with
1590
- node_name_value. Changing this setting also requires changes to the default
1591
- auth.conf configuration on the Puppet Master. Please see
1592
- 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).",
1593
1509
  :hook => proc do |value|
1594
1510
  if !value.empty? and Puppet[:node_name_value] != Puppet[:certname]
1595
1511
  raise "Cannot specify both the node_name_value and node_name_fact settings"
@@ -1600,8 +1516,8 @@ EOT
1600
1516
  :default => "$statedir/state.yaml",
1601
1517
  :type => :file,
1602
1518
  :mode => "0640",
1603
- :desc => "Where Puppet agent and Puppet Server store state associated
1604
- 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,
1605
1521
  this file reflects the state discovered through interacting
1606
1522
  with clients."
1607
1523
  },
@@ -1638,12 +1554,6 @@ EOT
1638
1554
  :mode => "0750",
1639
1555
  :desc => "The directory in which serialized data is stored on the client."
1640
1556
  },
1641
- :write_catalog_summary => {
1642
- :default => true,
1643
- :type => :boolean,
1644
- :desc => "Whether to write the `classfile` and `resourcefile` after applying
1645
- the catalog. It is enabled by default, except when running `puppet apply`.",
1646
- },
1647
1557
  :classfile => {
1648
1558
  :default => "$statedir/classes.txt",
1649
1559
  :type => :file,
@@ -1670,11 +1580,11 @@ EOT
1670
1580
  the POSIX syslog service and the Windows Event Log are unavailable. (Currently,
1671
1581
  no supported operating systems match that description.)
1672
1582
 
1673
- 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
1674
1584
  as the fallback logging destination.
1675
1585
 
1676
1586
  For control over logging destinations, see the `--logdest` command line
1677
- 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
1678
1588
  apply. You can see man pages by running `puppet <SUBCOMMAND> --help`,
1679
1589
  or read them online at https://puppet.com/docs/puppet/latest/man/."
1680
1590
  },
@@ -1688,13 +1598,13 @@ EOT
1688
1598
  },
1689
1599
  :server => {
1690
1600
  :default => "puppet",
1691
- :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.",
1692
1602
  },
1693
1603
  :server_list => {
1694
1604
  :default => [],
1695
1605
  :type => :server_list,
1696
- :desc => "The list of primary Puppet servers to which the Puppet agent should connect,
1697
- 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.",
1698
1608
  },
1699
1609
  :use_srv_records => {
1700
1610
  :default => false,
@@ -1708,7 +1618,7 @@ EOT
1708
1618
  :http_extra_headers => {
1709
1619
  :default => [],
1710
1620
  :type => :http_extra_headers,
1711
- :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.
1712
1622
  The header definition consists of a name and a value separated by a colon."
1713
1623
  },
1714
1624
  :ignoreschedules => {
@@ -1734,7 +1644,7 @@ EOT
1734
1644
  like it does when running normally. However, if a resource attribute is not in
1735
1645
  the desired state (as declared in the catalog), Puppet will take no
1736
1646
  action, and will instead report the changes it _would_ have made. These
1737
- 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
1738
1648
  be shown on the console if running puppet agent or puppet apply in the
1739
1649
  foreground. The simulated changes will not send refresh events to any
1740
1650
  subscribing or notified resources, although Puppet will log that a refresh
@@ -1770,6 +1680,7 @@ EOT
1770
1680
  },
1771
1681
  :ca_port => {
1772
1682
  :default => "$serverport",
1683
+ :type => :port,
1773
1684
  :desc => "The port to use for the certificate authority.",
1774
1685
  },
1775
1686
  :preferred_serialization_format => {
@@ -1788,7 +1699,7 @@ EOT
1788
1699
  },
1789
1700
  :agent_disabled_lockfile => {
1790
1701
  :default => "$statedir/agent_disabled.lock",
1791
- :type => :string,
1702
+ :type => :file,
1792
1703
  :desc => "A lock file to indicate that puppet agent runs have been administratively
1793
1704
  disabled. File contains a JSON object with state information.",
1794
1705
  },
@@ -1806,7 +1717,7 @@ EOT
1806
1717
  :desc => "Whether to only use the cached catalog rather than compiling a new catalog
1807
1718
  on every run. Puppet can be run with this enabled by default and then selectively
1808
1719
  disabled when a recompile is desired. Because a Puppet agent using cached catalogs
1809
- 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
1810
1721
  the beginning of the Puppet run.",
1811
1722
  },
1812
1723
  :ignoremissingtypes => {
@@ -1814,7 +1725,7 @@ EOT
1814
1725
  :type => :boolean,
1815
1726
  :desc => "Skip searching for classes and definitions that were missing during a
1816
1727
  prior compilation. The list of missing objects is maintained per-environment and
1817
- persists until the environment is cleared or the primary server is restarted.",
1728
+ persists until the environment is cleared or the master is restarted.",
1818
1729
  },
1819
1730
  :splaylimit => {
1820
1731
  :default => "$runinterval",
@@ -1844,7 +1755,7 @@ EOT
1844
1755
  If you restart an agent's puppet service with `splay` enabled, it
1845
1756
  recalculates its splay period and delays its first agent run after
1846
1757
  restarting for this new period. If you simultaneously restart a group of
1847
- puppet agents with `splay` enabled, their checkins to your primary servers
1758
+ puppet agents with `splay` enabled, their checkins to your puppet masters
1848
1759
  can be distributed more evenly.",
1849
1760
  },
1850
1761
  :clientbucketdir => {
@@ -1859,6 +1770,7 @@ EOT
1859
1770
  },
1860
1771
  :report_port => {
1861
1772
  :default => "$serverport",
1773
+ :type => :port,
1862
1774
  :desc => "The port to communicate with the report_server.",
1863
1775
  },
1864
1776
  :report => {
@@ -1888,10 +1800,16 @@ EOT
1888
1800
  for the node stored in puppetdb are current. However, this will double the fact
1889
1801
  submission load on puppetdb, so it is disabled by default.",
1890
1802
  },
1803
+ :publicdir => {
1804
+ :default => nil,
1805
+ :type => :directory,
1806
+ :mode => "0755",
1807
+ :desc => "Where Puppet stores public files."
1808
+ },
1891
1809
  :lastrunfile => {
1892
- :default => "$statedir/last_run_summary.yaml",
1810
+ :default => "$publicdir/last_run_summary.yaml",
1893
1811
  :type => :file,
1894
- :mode => "0644",
1812
+ :mode => "0640",
1895
1813
  :desc => "Where puppet agent stores the last run report summary in yaml format."
1896
1814
  },
1897
1815
  :lastrunreport => {
@@ -1936,7 +1854,7 @@ EOT
1936
1854
 
1937
1855
  When starting for the first time, puppet agent will submit a certificate
1938
1856
  signing request (CSR) to the server named in the `ca_server` setting
1939
- (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
1940
1858
  approved by a human, depending on the CA server's configuration.
1941
1859
 
1942
1860
  Puppet agent cannot apply configurations until its approved certificate is
@@ -1971,7 +1889,7 @@ EOT
1971
1889
  :type => :ttl,
1972
1890
  :desc => "The maximum amount of time the puppet agent should wait for an
1973
1891
  already running puppet agent to finish before starting a new one. This is set by default to 1 minute.
1974
- A value of `unlimited` will cause puppet agent to wait indefinitely.
1892
+ A value of `unlimited` will cause puppet agent to wait indefinitely.
1975
1893
  #{AS_DURATION}",
1976
1894
  }
1977
1895
  )
@@ -2028,7 +1946,7 @@ EOT
2028
1946
  :desc => "What files to ignore when pulling down plugins.",
2029
1947
  },
2030
1948
  :ignore_plugin_errors => {
2031
- :default => true,
1949
+ :default => false,
2032
1950
  :type => :boolean,
2033
1951
  :desc => "Whether the puppet run should ignore errors during pluginsync. If the setting
2034
1952
  is false and there are errors during pluginsync, then the agent will abort the run and
@@ -2050,7 +1968,7 @@ EOT
2050
1968
  :call_hook => :on_initialize_and_write, # Call our hook with the default value, so we always get the value added to facter.
2051
1969
  :hook => proc do |value|
2052
1970
  paths = value.split(File::PATH_SEPARATOR)
2053
- Puppet.runtime[:facter].search(*paths)
1971
+ Facter.search(*paths)
2054
1972
  end
2055
1973
  }
2056
1974
  )
@@ -2243,22 +2161,6 @@ EOT
2243
2161
  referencing variables that are explicitly set to undef).
2244
2162
  EOT
2245
2163
  },
2246
- :func3x_check => {
2247
- :default => true,
2248
- :type => :boolean,
2249
- :desc => <<-'EOT',
2250
- Causes validation of loaded legacy Ruby functions (3x API) to raise errors about illegal constructs that
2251
- could cause harm or that simply does not work. This flag is on by default. This flag is made available
2252
- so that the validation can be turned off in case the method of validation is faulty - if encountered, please
2253
- file a bug report.
2254
- EOT
2255
- :call_hook => :on_initialize_and_write,
2256
- :hook => proc do |value|
2257
- unless value
2258
- Puppet.deprecation_warning(_("The 'func3x_check' setting is deprecated and will be removed in a future release."))
2259
- end
2260
- end
2261
- },
2262
2164
  :tasks => {
2263
2165
  :default => false,
2264
2166
  :type => :boolean,