puppet 7.6.1 → 7.7.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 (625) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +9 -9
  3. data/install.rb +11 -11
  4. data/lib/hiera_puppet.rb +1 -1
  5. data/lib/puppet.rb +37 -37
  6. data/lib/puppet/agent.rb +6 -6
  7. data/lib/puppet/agent/disabler.rb +1 -1
  8. data/lib/puppet/agent/locker.rb +2 -2
  9. data/lib/puppet/application.rb +6 -6
  10. data/lib/puppet/application/agent.rb +18 -11
  11. data/lib/puppet/application/apply.rb +6 -5
  12. data/lib/puppet/application/catalog.rb +1 -1
  13. data/lib/puppet/application/config.rb +1 -1
  14. data/lib/puppet/application/describe.rb +1 -1
  15. data/lib/puppet/application/device.rb +8 -7
  16. data/lib/puppet/application/doc.rb +7 -7
  17. data/lib/puppet/application/epp.rb +2 -2
  18. data/lib/puppet/application/face_base.rb +2 -2
  19. data/lib/puppet/application/facts.rb +1 -1
  20. data/lib/puppet/application/filebucket.rb +2 -2
  21. data/lib/puppet/application/generate.rb +1 -1
  22. data/lib/puppet/application/help.rb +1 -1
  23. data/lib/puppet/application/indirection_base.rb +1 -1
  24. data/lib/puppet/application/lookup.rb +6 -6
  25. data/lib/puppet/application/module.rb +1 -1
  26. data/lib/puppet/application/node.rb +1 -1
  27. data/lib/puppet/application/parser.rb +2 -2
  28. data/lib/puppet/application/plugin.rb +1 -1
  29. data/lib/puppet/application/report.rb +1 -1
  30. data/lib/puppet/application/resource.rb +3 -2
  31. data/lib/puppet/application/script.rb +6 -5
  32. data/lib/puppet/application/ssl.rb +2 -2
  33. data/lib/puppet/application_support.rb +4 -4
  34. data/lib/puppet/compilable_resource_type.rb +1 -1
  35. data/lib/puppet/concurrent/lock.rb +1 -1
  36. data/lib/puppet/configurer.rb +4 -4
  37. data/lib/puppet/configurer/downloader.rb +4 -3
  38. data/lib/puppet/configurer/fact_handler.rb +3 -3
  39. data/lib/puppet/configurer/plugin_handler.rb +1 -1
  40. data/lib/puppet/confine.rb +1 -1
  41. data/lib/puppet/confine/boolean.rb +1 -1
  42. data/lib/puppet/confine/exists.rb +1 -1
  43. data/lib/puppet/confine/false.rb +1 -1
  44. data/lib/puppet/confine/feature.rb +1 -1
  45. data/lib/puppet/confine/true.rb +1 -1
  46. data/lib/puppet/confine/variable.rb +1 -1
  47. data/lib/puppet/confine_collection.rb +1 -1
  48. data/lib/puppet/confiner.rb +1 -1
  49. data/lib/puppet/context.rb +2 -2
  50. data/lib/puppet/context/trusted_information.rb +1 -1
  51. data/lib/puppet/daemon.rb +2 -2
  52. data/lib/puppet/data_binding.rb +1 -1
  53. data/lib/puppet/datatypes/error.rb +1 -1
  54. data/lib/puppet/defaults.rb +6 -6
  55. data/lib/puppet/environments.rb +1 -1
  56. data/lib/puppet/etc.rb +1 -1
  57. data/lib/puppet/external/pson/common.rb +1 -1
  58. data/lib/puppet/external/pson/pure.rb +3 -3
  59. data/lib/puppet/face.rb +1 -1
  60. data/lib/puppet/face/catalog.rb +1 -1
  61. data/lib/puppet/face/config.rb +2 -2
  62. data/lib/puppet/face/epp.rb +6 -6
  63. data/lib/puppet/face/facts.rb +2 -2
  64. data/lib/puppet/face/generate.rb +2 -2
  65. data/lib/puppet/face/help.rb +3 -3
  66. data/lib/puppet/face/module.rb +3 -3
  67. data/lib/puppet/face/module/install.rb +2 -2
  68. data/lib/puppet/face/node.rb +1 -1
  69. data/lib/puppet/face/parser.rb +4 -4
  70. data/lib/puppet/face/plugin.rb +2 -2
  71. data/lib/puppet/face/report.rb +1 -1
  72. data/lib/puppet/face/resource.rb +1 -1
  73. data/lib/puppet/feature/base.rb +2 -2
  74. data/lib/puppet/feature/bolt.rb +1 -1
  75. data/lib/puppet/feature/cfpropertylist.rb +1 -1
  76. data/lib/puppet/feature/eventlog.rb +1 -1
  77. data/lib/puppet/feature/hiera_eyaml.rb +1 -1
  78. data/lib/puppet/feature/hocon.rb +1 -1
  79. data/lib/puppet/feature/libuser.rb +2 -2
  80. data/lib/puppet/feature/msgpack.rb +1 -1
  81. data/lib/puppet/feature/pe_license.rb +1 -1
  82. data/lib/puppet/feature/selinux.rb +1 -1
  83. data/lib/puppet/feature/ssh.rb +1 -1
  84. data/lib/puppet/feature/telnet.rb +1 -1
  85. data/lib/puppet/feature/zlib.rb +1 -1
  86. data/lib/puppet/ffi/posix.rb +2 -2
  87. data/lib/puppet/ffi/posix/constants.rb +1 -1
  88. data/lib/puppet/ffi/posix/functions.rb +1 -1
  89. data/lib/puppet/ffi/windows.rb +4 -4
  90. data/lib/puppet/ffi/windows/api_types.rb +2 -2
  91. data/lib/puppet/ffi/windows/constants.rb +1 -1
  92. data/lib/puppet/ffi/windows/functions.rb +1 -1
  93. data/lib/puppet/ffi/windows/structs.rb +1 -1
  94. data/lib/puppet/file_bucket/dipper.rb +4 -4
  95. data/lib/puppet/file_bucket/file.rb +3 -3
  96. data/lib/puppet/file_serving/base.rb +2 -2
  97. data/lib/puppet/file_serving/configuration.rb +10 -10
  98. data/lib/puppet/file_serving/configuration/parser.rb +2 -2
  99. data/lib/puppet/file_serving/content.rb +3 -3
  100. data/lib/puppet/file_serving/fileset.rb +16 -4
  101. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  102. data/lib/puppet/file_serving/metadata.rb +6 -6
  103. data/lib/puppet/file_serving/mount.rb +4 -4
  104. data/lib/puppet/file_serving/mount/file.rb +1 -1
  105. data/lib/puppet/file_serving/mount/locales.rb +1 -1
  106. data/lib/puppet/file_serving/mount/modules.rb +1 -1
  107. data/lib/puppet/file_serving/mount/pluginfacts.rb +1 -1
  108. data/lib/puppet/file_serving/mount/plugins.rb +1 -1
  109. data/lib/puppet/file_serving/mount/tasks.rb +1 -1
  110. data/lib/puppet/file_serving/terminus_helper.rb +2 -2
  111. data/lib/puppet/file_serving/terminus_selector.rb +1 -1
  112. data/lib/puppet/file_system.rb +9 -9
  113. data/lib/puppet/file_system/jruby.rb +1 -1
  114. data/lib/puppet/file_system/path_pattern.rb +1 -1
  115. data/lib/puppet/file_system/uniquefile.rb +1 -1
  116. data/lib/puppet/file_system/windows.rb +2 -2
  117. data/lib/puppet/forge.rb +5 -5
  118. data/lib/puppet/forge/cache.rb +1 -1
  119. data/lib/puppet/forge/errors.rb +3 -3
  120. data/lib/puppet/forge/repository.rb +4 -4
  121. data/lib/puppet/functions/all.rb +1 -1
  122. data/lib/puppet/functions/camelcase.rb +1 -1
  123. data/lib/puppet/functions/capitalize.rb +2 -2
  124. data/lib/puppet/functions/downcase.rb +2 -2
  125. data/lib/puppet/functions/get.rb +5 -5
  126. data/lib/puppet/functions/group_by.rb +13 -5
  127. data/lib/puppet/functions/lest.rb +1 -1
  128. data/lib/puppet/functions/new.rb +100 -100
  129. data/lib/puppet/functions/partition.rb +4 -4
  130. data/lib/puppet/functions/require.rb +5 -5
  131. data/lib/puppet/functions/sort.rb +3 -3
  132. data/lib/puppet/functions/tree_each.rb +7 -9
  133. data/lib/puppet/functions/type.rb +4 -4
  134. data/lib/puppet/functions/upcase.rb +2 -2
  135. data/lib/puppet/functions/versioncmp.rb +1 -1
  136. data/lib/puppet/generate/models/type/type.rb +1 -1
  137. data/lib/puppet/generate/type.rb +2 -2
  138. data/lib/puppet/gettext/config.rb +3 -3
  139. data/lib/puppet/gettext/module_translations.rb +1 -1
  140. data/lib/puppet/graph.rb +6 -6
  141. data/lib/puppet/graph/simple_graph.rb +2 -2
  142. data/lib/puppet/http.rb +26 -26
  143. data/lib/puppet/http/factory.rb +2 -2
  144. data/lib/puppet/http/proxy.rb +1 -1
  145. data/lib/puppet/http/resolver/server_list.rb +15 -4
  146. data/lib/puppet/http/service/compiler.rb +73 -1
  147. data/lib/puppet/http/service/file_server.rb +3 -2
  148. data/lib/puppet/indirector.rb +5 -5
  149. data/lib/puppet/indirector/catalog/compiler.rb +7 -6
  150. data/lib/puppet/indirector/catalog/json.rb +2 -2
  151. data/lib/puppet/indirector/catalog/msgpack.rb +2 -2
  152. data/lib/puppet/indirector/catalog/rest.rb +2 -2
  153. data/lib/puppet/indirector/catalog/store_configs.rb +2 -2
  154. data/lib/puppet/indirector/catalog/yaml.rb +2 -2
  155. data/lib/puppet/indirector/code.rb +1 -1
  156. data/lib/puppet/indirector/data_binding/hiera.rb +1 -1
  157. data/lib/puppet/indirector/data_binding/none.rb +1 -1
  158. data/lib/puppet/indirector/direct_file_server.rb +2 -2
  159. data/lib/puppet/indirector/envelope.rb +1 -1
  160. data/lib/puppet/indirector/errors.rb +1 -1
  161. data/lib/puppet/indirector/exec.rb +2 -2
  162. data/lib/puppet/indirector/face.rb +1 -1
  163. data/lib/puppet/indirector/facts/facter.rb +2 -2
  164. data/lib/puppet/indirector/facts/json.rb +3 -3
  165. data/lib/puppet/indirector/facts/memory.rb +2 -2
  166. data/lib/puppet/indirector/facts/network_device.rb +2 -2
  167. data/lib/puppet/indirector/facts/rest.rb +2 -2
  168. data/lib/puppet/indirector/facts/store_configs.rb +2 -2
  169. data/lib/puppet/indirector/facts/yaml.rb +3 -3
  170. data/lib/puppet/indirector/file_bucket_file/file.rb +4 -4
  171. data/lib/puppet/indirector/file_bucket_file/rest.rb +2 -2
  172. data/lib/puppet/indirector/file_bucket_file/selector.rb +1 -1
  173. data/lib/puppet/indirector/file_content.rb +1 -1
  174. data/lib/puppet/indirector/file_content/file.rb +3 -3
  175. data/lib/puppet/indirector/file_content/file_server.rb +3 -3
  176. data/lib/puppet/indirector/file_content/rest.rb +3 -3
  177. data/lib/puppet/indirector/file_content/selector.rb +4 -4
  178. data/lib/puppet/indirector/file_metadata.rb +1 -1
  179. data/lib/puppet/indirector/file_metadata/file.rb +3 -3
  180. data/lib/puppet/indirector/file_metadata/file_server.rb +3 -3
  181. data/lib/puppet/indirector/file_metadata/http.rb +3 -3
  182. data/lib/puppet/indirector/file_metadata/rest.rb +4 -3
  183. data/lib/puppet/indirector/file_metadata/selector.rb +4 -4
  184. data/lib/puppet/indirector/file_server.rb +4 -4
  185. data/lib/puppet/indirector/generic_http.rb +1 -1
  186. data/lib/puppet/indirector/hiera.rb +1 -1
  187. data/lib/puppet/indirector/indirection.rb +5 -5
  188. data/lib/puppet/indirector/json.rb +2 -2
  189. data/lib/puppet/indirector/memory.rb +1 -1
  190. data/lib/puppet/indirector/msgpack.rb +2 -2
  191. data/lib/puppet/indirector/node/exec.rb +2 -2
  192. data/lib/puppet/indirector/node/json.rb +2 -2
  193. data/lib/puppet/indirector/node/memory.rb +2 -2
  194. data/lib/puppet/indirector/node/msgpack.rb +2 -2
  195. data/lib/puppet/indirector/node/plain.rb +2 -2
  196. data/lib/puppet/indirector/node/rest.rb +2 -2
  197. data/lib/puppet/indirector/node/store_configs.rb +2 -2
  198. data/lib/puppet/indirector/node/yaml.rb +2 -2
  199. data/lib/puppet/indirector/none.rb +1 -1
  200. data/lib/puppet/indirector/plain.rb +1 -1
  201. data/lib/puppet/indirector/report/json.rb +2 -2
  202. data/lib/puppet/indirector/report/msgpack.rb +2 -2
  203. data/lib/puppet/indirector/report/processor.rb +3 -3
  204. data/lib/puppet/indirector/report/rest.rb +1 -1
  205. data/lib/puppet/indirector/report/yaml.rb +2 -2
  206. data/lib/puppet/indirector/request.rb +3 -3
  207. data/lib/puppet/indirector/resource/ral.rb +1 -1
  208. data/lib/puppet/indirector/resource/store_configs.rb +2 -2
  209. data/lib/puppet/indirector/terminus.rb +5 -5
  210. data/lib/puppet/indirector/yaml.rb +2 -2
  211. data/lib/puppet/info_service.rb +3 -3
  212. data/lib/puppet/info_service/class_information_service.rb +3 -3
  213. data/lib/puppet/info_service/plan_information_service.rb +1 -1
  214. data/lib/puppet/info_service/task_information_service.rb +1 -1
  215. data/lib/puppet/interface.rb +10 -10
  216. data/lib/puppet/interface/documentation.rb +1 -1
  217. data/lib/puppet/loaders.rb +21 -21
  218. data/lib/puppet/metatype/manager.rb +3 -3
  219. data/lib/puppet/module.rb +4 -4
  220. data/lib/puppet/module/plan.rb +1 -1
  221. data/lib/puppet/module/task.rb +1 -1
  222. data/lib/puppet/module_tool.rb +10 -10
  223. data/lib/puppet/module_tool/applications.rb +7 -7
  224. data/lib/puppet/module_tool/applications/application.rb +2 -2
  225. data/lib/puppet/module_tool/applications/checksummer.rb +2 -2
  226. data/lib/puppet/module_tool/applications/installer.rb +7 -7
  227. data/lib/puppet/module_tool/applications/unpacker.rb +2 -2
  228. data/lib/puppet/module_tool/applications/upgrader.rb +5 -5
  229. data/lib/puppet/module_tool/checksums.rb +1 -1
  230. data/lib/puppet/module_tool/contents_description.rb +1 -1
  231. data/lib/puppet/module_tool/dependency.rb +2 -2
  232. data/lib/puppet/module_tool/errors.rb +6 -6
  233. data/lib/puppet/module_tool/install_directory.rb +2 -2
  234. data/lib/puppet/module_tool/installed_modules.rb +2 -2
  235. data/lib/puppet/module_tool/local_tarball.rb +2 -2
  236. data/lib/puppet/module_tool/metadata.rb +3 -3
  237. data/lib/puppet/module_tool/tar.rb +4 -4
  238. data/lib/puppet/network/format.rb +1 -1
  239. data/lib/puppet/network/format_handler.rb +3 -3
  240. data/lib/puppet/network/format_support.rb +1 -1
  241. data/lib/puppet/network/formats.rb +2 -2
  242. data/lib/puppet/network/http.rb +12 -12
  243. data/lib/puppet/network/http/api.rb +1 -1
  244. data/lib/puppet/network/http/api/indirected_routes.rb +1 -1
  245. data/lib/puppet/network/http/api/master.rb +1 -1
  246. data/lib/puppet/network/http/api/master/v3.rb +2 -2
  247. data/lib/puppet/network/http/api/master/v3/environments.rb +2 -2
  248. data/lib/puppet/network/http/api/server/v3.rb +2 -2
  249. data/lib/puppet/network/http/api/server/v3/environments.rb +1 -1
  250. data/lib/puppet/network/http/connection.rb +1 -1
  251. data/lib/puppet/network/http/error.rb +1 -1
  252. data/lib/puppet/network/http/handler.rb +3 -3
  253. data/lib/puppet/network/http_pool.rb +1 -1
  254. data/lib/puppet/node.rb +3 -3
  255. data/lib/puppet/node/environment.rb +3 -3
  256. data/lib/puppet/node/facts.rb +3 -3
  257. data/lib/puppet/pal/pal_api.rb +10 -10
  258. data/lib/puppet/pal/pal_impl.rb +3 -3
  259. data/lib/puppet/parameter.rb +4 -4
  260. data/lib/puppet/parameter/boolean.rb +1 -1
  261. data/lib/puppet/parameter/package_options.rb +1 -1
  262. data/lib/puppet/parameter/path.rb +1 -1
  263. data/lib/puppet/parameter/value.rb +1 -1
  264. data/lib/puppet/parameter/value_collection.rb +1 -1
  265. data/lib/puppet/parser.rb +10 -10
  266. data/lib/puppet/parser/ast.rb +8 -8
  267. data/lib/puppet/parser/ast/hostclass.rb +1 -1
  268. data/lib/puppet/parser/ast/pops_bridge.rb +2 -2
  269. data/lib/puppet/parser/catalog_compiler.rb +2 -2
  270. data/lib/puppet/parser/compiler.rb +5 -5
  271. data/lib/puppet/parser/e4_parser_adapter.rb +1 -1
  272. data/lib/puppet/parser/functions.rb +4 -4
  273. data/lib/puppet/parser/functions/digest.rb +1 -1
  274. data/lib/puppet/parser/functions/file.rb +1 -1
  275. data/lib/puppet/parser/functions/fqdn_rand.rb +14 -6
  276. data/lib/puppet/parser/functions/versioncmp.rb +1 -1
  277. data/lib/puppet/parser/parser_factory.rb +2 -2
  278. data/lib/puppet/parser/resource.rb +3 -3
  279. data/lib/puppet/parser/scope.rb +3 -3
  280. data/lib/puppet/parser/script_compiler.rb +2 -2
  281. data/lib/puppet/parser/templatewrapper.rb +2 -2
  282. data/lib/puppet/parser/type_loader.rb +1 -1
  283. data/lib/puppet/plugins/configuration.rb +5 -5
  284. data/lib/puppet/pops.rb +57 -57
  285. data/lib/puppet/pops/evaluator/deferred_resolver.rb +1 -1
  286. data/lib/puppet/pops/evaluator/evaluator_impl.rb +7 -7
  287. data/lib/puppet/pops/evaluator/external_syntax_support.rb +1 -1
  288. data/lib/puppet/pops/loader/task_instantiator.rb +1 -1
  289. data/lib/puppet/pops/lookup/invocation.rb +1 -1
  290. data/lib/puppet/pops/model/ast_transformer.rb +1 -1
  291. data/lib/puppet/pops/model/pn_transformer.rb +1 -1
  292. data/lib/puppet/pops/parser/eparser.rb +2 -2
  293. data/lib/puppet/pops/parser/evaluating_parser.rb +1 -1
  294. data/lib/puppet/pops/parser/lexer2.rb +5 -5
  295. data/lib/puppet/pops/parser/lexer_support.rb +1 -1
  296. data/lib/puppet/pops/parser/parser_support.rb +4 -4
  297. data/lib/puppet/pops/puppet_stack.rb +1 -1
  298. data/lib/puppet/pops/serialization/json.rb +1 -1
  299. data/lib/puppet/pops/serialization/json_path.rb +1 -1
  300. data/lib/puppet/pops/time/timespan.rb +1 -1
  301. data/lib/puppet/pops/types/string_converter.rb +1 -1
  302. data/lib/puppet/pops/types/type_calculator.rb +1 -1
  303. data/lib/puppet/pops/types/type_formatter.rb +1 -1
  304. data/lib/puppet/pops/types/type_parser.rb +1 -1
  305. data/lib/puppet/pops/types/types.rb +1 -1
  306. data/lib/puppet/pops/validation/checker4_0.rb +1 -1
  307. data/lib/puppet/property.rb +3 -3
  308. data/lib/puppet/property/boolean.rb +1 -1
  309. data/lib/puppet/property/ensure.rb +1 -1
  310. data/lib/puppet/property/keyvalue.rb +1 -1
  311. data/lib/puppet/property/list.rb +1 -1
  312. data/lib/puppet/property/ordered_list.rb +1 -1
  313. data/lib/puppet/provider.rb +2 -2
  314. data/lib/puppet/provider/confine.rb +2 -2
  315. data/lib/puppet/provider/exec.rb +2 -2
  316. data/lib/puppet/provider/exec/posix.rb +1 -1
  317. data/lib/puppet/provider/exec/windows.rb +1 -1
  318. data/lib/puppet/provider/file/posix.rb +1 -1
  319. data/lib/puppet/provider/file/windows.rb +1 -1
  320. data/lib/puppet/provider/group/aix.rb +1 -1
  321. data/lib/puppet/provider/group/directoryservice.rb +1 -1
  322. data/lib/puppet/provider/group/groupadd.rb +2 -2
  323. data/lib/puppet/provider/group/ldap.rb +1 -1
  324. data/lib/puppet/provider/group/pw.rb +1 -1
  325. data/lib/puppet/provider/group/windows_adsi.rb +1 -1
  326. data/lib/puppet/provider/ldap.rb +2 -2
  327. data/lib/puppet/provider/nameservice.rb +1 -1
  328. data/lib/puppet/provider/nameservice/directoryservice.rb +3 -3
  329. data/lib/puppet/provider/nameservice/objectadd.rb +1 -1
  330. data/lib/puppet/provider/nameservice/pw.rb +1 -1
  331. data/lib/puppet/provider/package.rb +1 -1
  332. data/lib/puppet/provider/package/aix.rb +2 -2
  333. data/lib/puppet/provider/package/appdmg.rb +2 -2
  334. data/lib/puppet/provider/package/apple.rb +1 -1
  335. data/lib/puppet/provider/package/apt.rb +2 -2
  336. data/lib/puppet/provider/package/dnfmodule.rb +1 -1
  337. data/lib/puppet/provider/package/dpkg.rb +1 -1
  338. data/lib/puppet/provider/package/gem.rb +3 -3
  339. data/lib/puppet/provider/package/hpux.rb +1 -1
  340. data/lib/puppet/provider/package/macports.rb +2 -2
  341. data/lib/puppet/provider/package/nim.rb +2 -2
  342. data/lib/puppet/provider/package/openbsd.rb +1 -1
  343. data/lib/puppet/provider/package/opkg.rb +1 -1
  344. data/lib/puppet/provider/package/pacman.rb +1 -1
  345. data/lib/puppet/provider/package/pip.rb +3 -3
  346. data/lib/puppet/provider/package/pkg.rb +2 -2
  347. data/lib/puppet/provider/package/pkgdmg.rb +3 -3
  348. data/lib/puppet/provider/package/pkgin.rb +1 -1
  349. data/lib/puppet/provider/package/pkgng.rb +1 -1
  350. data/lib/puppet/provider/package/portage.rb +1 -1
  351. data/lib/puppet/provider/package/portupgrade.rb +1 -1
  352. data/lib/puppet/provider/package/puppetserver_gem.rb +0 -0
  353. data/lib/puppet/provider/package/rpm.rb +2 -2
  354. data/lib/puppet/provider/package/sun.rb +1 -1
  355. data/lib/puppet/provider/package/windows.rb +3 -3
  356. data/lib/puppet/provider/package/windows/exe_package.rb +1 -1
  357. data/lib/puppet/provider/package/windows/msi_package.rb +1 -1
  358. data/lib/puppet/provider/package/windows/package.rb +4 -4
  359. data/lib/puppet/provider/package/yum.rb +3 -3
  360. data/lib/puppet/provider/package_targetable.rb +1 -1
  361. data/lib/puppet/provider/parsedfile.rb +3 -3
  362. data/lib/puppet/provider/service/base.rb +6 -4
  363. data/lib/puppet/provider/service/daemontools.rb +0 -1
  364. data/lib/puppet/provider/service/debian.rb +3 -5
  365. data/lib/puppet/provider/service/init.rb +1 -1
  366. data/lib/puppet/provider/service/launchd.rb +9 -3
  367. data/lib/puppet/provider/service/service.rb +28 -3
  368. data/lib/puppet/provider/service/smf.rb +0 -24
  369. data/lib/puppet/provider/service/src.rb +2 -2
  370. data/lib/puppet/provider/service/systemd.rb +11 -6
  371. data/lib/puppet/provider/service/windows.rb +38 -0
  372. data/lib/puppet/provider/user/aix.rb +2 -2
  373. data/lib/puppet/provider/user/directoryservice.rb +2 -2
  374. data/lib/puppet/provider/user/ldap.rb +1 -1
  375. data/lib/puppet/provider/user/openbsd.rb +1 -1
  376. data/lib/puppet/provider/user/pw.rb +1 -1
  377. data/lib/puppet/provider/user/user_role_add.rb +2 -2
  378. data/lib/puppet/provider/user/useradd.rb +3 -3
  379. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  380. data/lib/puppet/reference/configuration.rb +1 -1
  381. data/lib/puppet/reference/indirection.rb +4 -4
  382. data/lib/puppet/reference/report.rb +1 -1
  383. data/lib/puppet/reports.rb +1 -1
  384. data/lib/puppet/reports/http.rb +2 -2
  385. data/lib/puppet/reports/log.rb +1 -1
  386. data/lib/puppet/reports/store.rb +2 -2
  387. data/lib/puppet/resource.rb +4 -4
  388. data/lib/puppet/resource/catalog.rb +5 -5
  389. data/lib/puppet/resource/status.rb +2 -2
  390. data/lib/puppet/resource/type.rb +4 -4
  391. data/lib/puppet/resource/type_collection.rb +4 -4
  392. data/lib/puppet/runtime.rb +1 -1
  393. data/lib/puppet/scheduler.rb +4 -4
  394. data/lib/puppet/settings.rb +28 -28
  395. data/lib/puppet/settings/autosign_setting.rb +1 -1
  396. data/lib/puppet/settings/base_setting.rb +2 -2
  397. data/lib/puppet/settings/certificate_revocation_setting.rb +1 -1
  398. data/lib/puppet/settings/config_file.rb +1 -1
  399. data/lib/puppet/settings/errors.rb +1 -1
  400. data/lib/puppet/settings/priority_setting.rb +3 -3
  401. data/lib/puppet/ssl.rb +11 -11
  402. data/lib/puppet/ssl/base.rb +3 -3
  403. data/lib/puppet/ssl/certificate.rb +1 -1
  404. data/lib/puppet/ssl/certificate_request.rb +2 -2
  405. data/lib/puppet/ssl/certificate_request_attributes.rb +2 -2
  406. data/lib/puppet/ssl/oids.rb +1 -1
  407. data/lib/puppet/ssl/openssl_loader.rb +1 -1
  408. data/lib/puppet/ssl/ssl_context.rb +1 -1
  409. data/lib/puppet/ssl/ssl_provider.rb +1 -1
  410. data/lib/puppet/ssl/state_machine.rb +2 -2
  411. data/lib/puppet/ssl/verifier.rb +5 -1
  412. data/lib/puppet/syntax_checkers/base64.rb +1 -1
  413. data/lib/puppet/syntax_checkers/epp.rb +1 -1
  414. data/lib/puppet/syntax_checkers/json.rb +1 -1
  415. data/lib/puppet/syntax_checkers/pp.rb +1 -1
  416. data/lib/puppet/transaction.rb +11 -11
  417. data/lib/puppet/transaction/event.rb +4 -4
  418. data/lib/puppet/transaction/event_manager.rb +1 -1
  419. data/lib/puppet/transaction/persistence.rb +1 -1
  420. data/lib/puppet/transaction/report.rb +2 -2
  421. data/lib/puppet/transaction/resource_harness.rb +1 -1
  422. data/lib/puppet/type.rb +14 -14
  423. data/lib/puppet/type/component.rb +3 -3
  424. data/lib/puppet/type/file.rb +37 -19
  425. data/lib/puppet/type/file/checksum.rb +1 -1
  426. data/lib/puppet/type/file/checksum_value.rb +2 -2
  427. data/lib/puppet/type/file/content.rb +2 -2
  428. data/lib/puppet/type/file/data_sync.rb +2 -2
  429. data/lib/puppet/type/file/ensure.rb +1 -1
  430. data/lib/puppet/type/file/group.rb +1 -1
  431. data/lib/puppet/type/file/mode.rb +1 -1
  432. data/lib/puppet/type/file/selcontext.rb +2 -2
  433. data/lib/puppet/type/file/source.rb +4 -4
  434. data/lib/puppet/type/filebucket.rb +1 -1
  435. data/lib/puppet/type/group.rb +2 -2
  436. data/lib/puppet/type/package.rb +2 -2
  437. data/lib/puppet/type/resources.rb +2 -2
  438. data/lib/puppet/type/service.rb +10 -29
  439. data/lib/puppet/type/tidy.rb +24 -5
  440. data/lib/puppet/type/user.rb +4 -4
  441. data/lib/puppet/util.rb +43 -34
  442. data/lib/puppet/util/at_fork.rb +3 -3
  443. data/lib/puppet/util/at_fork/solaris.rb +1 -1
  444. data/lib/puppet/util/autoload.rb +4 -4
  445. data/lib/puppet/util/checksums.rb +3 -3
  446. data/lib/puppet/util/colors.rb +1 -1
  447. data/lib/puppet/util/command_line.rb +6 -6
  448. data/lib/puppet/util/command_line/puppet_option_parser.rb +2 -2
  449. data/lib/puppet/util/execution.rb +2 -2
  450. data/lib/puppet/util/feature.rb +2 -2
  451. data/lib/puppet/util/filetype.rb +1 -1
  452. data/lib/puppet/util/http_proxy.rb +1 -1
  453. data/lib/puppet/util/inifile.rb +2 -2
  454. data/lib/puppet/util/instance_loader.rb +3 -3
  455. data/lib/puppet/util/json_lockfile.rb +1 -1
  456. data/lib/puppet/util/ldap/connection.rb +1 -1
  457. data/lib/puppet/util/ldap/generator.rb +1 -1
  458. data/lib/puppet/util/ldap/manager.rb +3 -3
  459. data/lib/puppet/util/limits.rb +1 -1
  460. data/lib/puppet/util/log.rb +6 -6
  461. data/lib/puppet/util/log/destinations.rb +1 -1
  462. data/lib/puppet/util/logging.rb +2 -2
  463. data/lib/puppet/util/metric.rb +2 -2
  464. data/lib/puppet/util/monkey_patches.rb +7 -3
  465. data/lib/puppet/util/network_device/base.rb +3 -3
  466. data/lib/puppet/util/network_device/config.rb +2 -2
  467. data/lib/puppet/util/network_device/transport.rb +1 -1
  468. data/lib/puppet/util/network_device/transport/base.rb +2 -2
  469. data/lib/puppet/util/package/version/range.rb +6 -6
  470. data/lib/puppet/util/package/version/range/eq.rb +1 -1
  471. data/lib/puppet/util/package/version/range/gt.rb +1 -1
  472. data/lib/puppet/util/package/version/range/gt_eq.rb +1 -1
  473. data/lib/puppet/util/package/version/range/lt.rb +1 -1
  474. data/lib/puppet/util/package/version/range/lt_eq.rb +1 -1
  475. data/lib/puppet/util/package/version/range/min_max.rb +1 -1
  476. data/lib/puppet/util/package/version/range/simple.rb +1 -1
  477. data/lib/puppet/util/package/version/rpm.rb +1 -1
  478. data/lib/puppet/util/pidlock.rb +1 -1
  479. data/lib/puppet/util/plist.rb +1 -1
  480. data/lib/puppet/util/posix.rb +1 -1
  481. data/lib/puppet/util/profiler.rb +3 -3
  482. data/lib/puppet/util/profiler/aggregate.rb +2 -2
  483. data/lib/puppet/util/profiler/object_counts.rb +1 -1
  484. data/lib/puppet/util/profiler/wall_clock.rb +1 -1
  485. data/lib/puppet/util/provider_features.rb +2 -2
  486. data/lib/puppet/util/rdoc.rb +2 -2
  487. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +2 -2
  488. data/lib/puppet/util/rdoc/parser.rb +6 -6
  489. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  490. data/lib/puppet/util/reference.rb +1 -1
  491. data/lib/puppet/util/resource_template.rb +2 -2
  492. data/lib/puppet/util/rubygems.rb +1 -1
  493. data/lib/puppet/util/selinux.rb +30 -4
  494. data/lib/puppet/util/skip_tags.rb +1 -1
  495. data/lib/puppet/util/storage.rb +1 -1
  496. data/lib/puppet/util/suidmanager.rb +2 -2
  497. data/lib/puppet/util/symbolic_file_mode.rb +1 -1
  498. data/lib/puppet/util/tag_set.rb +1 -1
  499. data/lib/puppet/util/tagging.rb +1 -1
  500. data/lib/puppet/util/watched_file.rb +1 -1
  501. data/lib/puppet/util/watcher.rb +3 -3
  502. data/lib/puppet/util/windows.rb +20 -20
  503. data/lib/puppet/util/windows/access_control_entry.rb +1 -1
  504. data/lib/puppet/util/windows/adsi.rb +1 -1
  505. data/lib/puppet/util/windows/daemon.rb +1 -1
  506. data/lib/puppet/util/windows/error.rb +2 -2
  507. data/lib/puppet/util/windows/file.rb +1 -1
  508. data/lib/puppet/util/windows/monkey_patches/process.rb +2 -2
  509. data/lib/puppet/util/windows/principal.rb +1 -1
  510. data/lib/puppet/util/windows/process.rb +2 -2
  511. data/lib/puppet/util/windows/registry.rb +1 -1
  512. data/lib/puppet/util/windows/root_certs.rb +2 -2
  513. data/lib/puppet/util/windows/security.rb +1 -1
  514. data/lib/puppet/util/windows/security_descriptor.rb +1 -1
  515. data/lib/puppet/util/windows/service.rb +1 -1
  516. data/lib/puppet/util/windows/sid.rb +1 -1
  517. data/lib/puppet/util/windows/user.rb +1 -1
  518. data/lib/puppet/vendor.rb +1 -1
  519. data/lib/puppet/version.rb +1 -1
  520. data/lib/puppet/x509.rb +4 -4
  521. data/lib/puppet/x509/cert_provider.rb +1 -1
  522. data/lib/puppet/x509/pem_store.rb +1 -1
  523. data/lib/puppet_pal.rb +2 -2
  524. data/locales/puppet.pot +156 -144
  525. data/man/man5/puppet.conf.5 +256 -241
  526. data/man/man8/puppet-agent.8 +1 -1
  527. data/man/man8/puppet-apply.8 +1 -1
  528. data/man/man8/puppet-catalog.8 +1 -1
  529. data/man/man8/puppet-config.8 +1 -1
  530. data/man/man8/puppet-describe.8 +1 -1
  531. data/man/man8/puppet-device.8 +1 -1
  532. data/man/man8/puppet-doc.8 +1 -1
  533. data/man/man8/puppet-epp.8 +1 -1
  534. data/man/man8/puppet-facts.8 +1 -1
  535. data/man/man8/puppet-filebucket.8 +1 -1
  536. data/man/man8/puppet-generate.8 +1 -1
  537. data/man/man8/puppet-help.8 +1 -1
  538. data/man/man8/puppet-lookup.8 +1 -1
  539. data/man/man8/puppet-module.8 +1 -1
  540. data/man/man8/puppet-node.8 +1 -1
  541. data/man/man8/puppet-parser.8 +1 -1
  542. data/man/man8/puppet-plugin.8 +1 -1
  543. data/man/man8/puppet-report.8 +1 -1
  544. data/man/man8/puppet-resource.8 +1 -1
  545. data/man/man8/puppet-script.8 +1 -1
  546. data/man/man8/puppet-ssl.8 +1 -1
  547. data/man/man8/puppet.8 +2 -2
  548. data/spec/fixtures/ssl/127.0.0.1-key.pem +107 -57
  549. data/spec/fixtures/ssl/127.0.0.1.pem +52 -31
  550. data/spec/fixtures/ssl/bad-basic-constraints.pem +57 -35
  551. data/spec/fixtures/ssl/bad-int-basic-constraints.pem +57 -35
  552. data/spec/fixtures/ssl/ca.pem +57 -35
  553. data/spec/fixtures/ssl/crl.pem +28 -18
  554. data/spec/fixtures/ssl/ec-key.pem +11 -11
  555. data/spec/fixtures/ssl/ec.pem +33 -24
  556. data/spec/fixtures/ssl/encrypted-ec-key.pem +12 -12
  557. data/spec/fixtures/ssl/encrypted-key.pem +108 -58
  558. data/spec/fixtures/ssl/intermediate-agent-crl.pem +28 -19
  559. data/spec/fixtures/ssl/intermediate-agent.pem +57 -36
  560. data/spec/fixtures/ssl/intermediate-crl.pem +31 -21
  561. data/spec/fixtures/ssl/intermediate.pem +57 -36
  562. data/spec/fixtures/ssl/pluto-key.pem +107 -57
  563. data/spec/fixtures/ssl/pluto.pem +52 -30
  564. data/spec/fixtures/ssl/request-key.pem +107 -57
  565. data/spec/fixtures/ssl/request.pem +47 -26
  566. data/spec/fixtures/ssl/revoked-key.pem +107 -57
  567. data/spec/fixtures/ssl/revoked.pem +52 -30
  568. data/spec/fixtures/ssl/signed-key.pem +107 -57
  569. data/spec/fixtures/ssl/signed.pem +52 -30
  570. data/spec/fixtures/ssl/tampered-cert.pem +52 -30
  571. data/spec/fixtures/ssl/tampered-csr.pem +47 -26
  572. data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +107 -57
  573. data/spec/fixtures/ssl/unknown-127.0.0.1.pem +50 -29
  574. data/spec/fixtures/ssl/unknown-ca-key.pem +107 -57
  575. data/spec/fixtures/ssl/unknown-ca.pem +55 -33
  576. data/spec/integration/type/file_spec.rb +5 -5
  577. data/spec/lib/puppet/test_ca.rb +2 -2
  578. data/spec/lib/puppet_spec/files.rb +1 -1
  579. data/spec/shared_contexts/provider.rb +16 -0
  580. data/spec/unit/application/agent_spec.rb +7 -2
  581. data/spec/unit/configurer/downloader_spec.rb +6 -0
  582. data/spec/unit/configurer_spec.rb +23 -0
  583. data/spec/unit/file_bucket/dipper_spec.rb +1 -1
  584. data/spec/unit/file_serving/fileset_spec.rb +60 -0
  585. data/spec/unit/gettext/config_spec.rb +12 -0
  586. data/spec/unit/http/service/compiler_spec.rb +123 -0
  587. data/spec/unit/indirector/catalog/compiler_spec.rb +14 -10
  588. data/spec/unit/parser/functions/fqdn_rand_spec.rb +15 -1
  589. data/spec/unit/pops/lookup/context_spec.rb +1 -1
  590. data/spec/unit/provider/package/dnfmodule_spec.rb +3 -3
  591. data/spec/unit/provider/package/gem_spec.rb +3 -1
  592. data/spec/unit/provider/package/pip2_spec.rb +3 -1
  593. data/spec/unit/provider/package/pip3_spec.rb +3 -1
  594. data/spec/unit/provider/package/pip_spec.rb +3 -1
  595. data/spec/unit/provider/package/pkg_spec.rb +44 -44
  596. data/spec/unit/provider/package/puppet_gem_spec.rb +3 -1
  597. data/spec/unit/provider/package/puppetserver_gem_spec.rb +2 -0
  598. data/spec/unit/provider/service/base_spec.rb +8 -8
  599. data/spec/unit/provider/service/bsd_spec.rb +0 -4
  600. data/spec/unit/provider/service/daemontools_spec.rb +1 -1
  601. data/spec/unit/provider/service/debian_spec.rb +15 -17
  602. data/spec/unit/provider/service/gentoo_spec.rb +19 -14
  603. data/spec/unit/provider/service/init_spec.rb +29 -20
  604. data/spec/unit/provider/service/launchd_spec.rb +10 -12
  605. data/spec/unit/provider/service/openbsd_spec.rb +21 -35
  606. data/spec/unit/provider/service/openrc_spec.rb +15 -14
  607. data/spec/unit/provider/service/openwrt_spec.rb +3 -1
  608. data/spec/unit/provider/service/redhat_spec.rb +20 -19
  609. data/spec/unit/provider/service/smf_spec.rb +6 -5
  610. data/spec/unit/provider/service/src_spec.rb +5 -10
  611. data/spec/unit/provider/service/systemd_spec.rb +57 -29
  612. data/spec/unit/provider/service/upstart_spec.rb +25 -20
  613. data/spec/unit/provider/service/windows_spec.rb +202 -0
  614. data/spec/unit/resource/catalog_spec.rb +1 -1
  615. data/spec/unit/ssl/state_machine_spec.rb +19 -5
  616. data/spec/unit/transaction/additional_resource_generator_spec.rb +0 -2
  617. data/spec/unit/transaction_spec.rb +18 -20
  618. data/spec/unit/type/file/selinux_spec.rb +3 -3
  619. data/spec/unit/type/service_spec.rb +10 -154
  620. data/spec/unit/type/tidy_spec.rb +17 -7
  621. data/spec/unit/util/at_fork_spec.rb +9 -9
  622. data/spec/unit/util/posix_spec.rb +1 -1
  623. data/spec/unit/util/selinux_spec.rb +87 -16
  624. data/tasks/generate_cert_fixtures.rake +2 -2
  625. metadata +4 -2
@@ -1,6 +1,6 @@
1
- require 'puppet/file_bucket'
2
- require 'puppet/indirector'
3
- require 'puppet/util/checksums'
1
+ require_relative '../../puppet/file_bucket'
2
+ require_relative '../../puppet/indirector'
3
+ require_relative '../../puppet/util/checksums'
4
4
  require 'digest/md5'
5
5
  require 'stringio'
6
6
 
@@ -1,5 +1,5 @@
1
- require 'puppet/file_serving'
2
- require 'puppet/util'
1
+ require_relative '../../puppet/file_serving'
2
+ require_relative '../../puppet/util'
3
3
 
4
4
  # The base class for Content and Metadata; provides common
5
5
  # functionality like the behaviour around links.
@@ -1,15 +1,15 @@
1
- require 'puppet'
2
- require 'puppet/file_serving'
3
- require 'puppet/file_serving/mount'
4
- require 'puppet/file_serving/mount/file'
5
- require 'puppet/file_serving/mount/modules'
6
- require 'puppet/file_serving/mount/plugins'
7
- require 'puppet/file_serving/mount/locales'
8
- require 'puppet/file_serving/mount/pluginfacts'
9
- require 'puppet/file_serving/mount/tasks'
1
+ require_relative '../../puppet'
2
+ require_relative '../../puppet/file_serving'
3
+ require_relative '../../puppet/file_serving/mount'
4
+ require_relative '../../puppet/file_serving/mount/file'
5
+ require_relative '../../puppet/file_serving/mount/modules'
6
+ require_relative '../../puppet/file_serving/mount/plugins'
7
+ require_relative '../../puppet/file_serving/mount/locales'
8
+ require_relative '../../puppet/file_serving/mount/pluginfacts'
9
+ require_relative '../../puppet/file_serving/mount/tasks'
10
10
 
11
11
  class Puppet::FileServing::Configuration
12
- require 'puppet/file_serving/configuration/parser'
12
+ require_relative 'configuration/parser'
13
13
 
14
14
  def self.configuration
15
15
  @configuration ||= new
@@ -1,5 +1,5 @@
1
- require 'puppet/file_serving/configuration'
2
- require 'puppet/util/watched_file'
1
+ require_relative '../../../puppet/file_serving/configuration'
2
+ require_relative '../../../puppet/util/watched_file'
3
3
 
4
4
  class Puppet::FileServing::Configuration::Parser
5
5
  Mount = Puppet::FileServing::Mount
@@ -1,6 +1,6 @@
1
- require 'puppet/indirector'
2
- require 'puppet/file_serving'
3
- require 'puppet/file_serving/base'
1
+ require_relative '../../puppet/indirector'
2
+ require_relative '../../puppet/file_serving'
3
+ require_relative '../../puppet/file_serving/base'
4
4
 
5
5
  # A class that handles retrieving file contents.
6
6
  # It only reads the file when its content is specifically
@@ -1,11 +1,11 @@
1
1
  require 'find'
2
- require 'puppet/file_serving'
3
- require 'puppet/file_serving/metadata'
2
+ require_relative '../../puppet/file_serving'
3
+ require_relative '../../puppet/file_serving/metadata'
4
4
 
5
5
  # Operate recursively on a path, returning a set of file paths.
6
6
  class Puppet::FileServing::Fileset
7
7
  attr_reader :path, :ignore, :links
8
- attr_accessor :recurse, :recurselimit, :checksum_type
8
+ attr_accessor :recurse, :recurselimit, :max_files, :checksum_type
9
9
 
10
10
  # Produce a hash of files, with merged so that earlier files
11
11
  # with the same postfix win. E.g., /dir1/subfile beats /dir2/subfile.
@@ -40,6 +40,7 @@ class Puppet::FileServing::Fileset
40
40
  self.links = :manage
41
41
  @recurse = false
42
42
  @recurselimit = :infinite
43
+ @max_files = 0
43
44
 
44
45
  if options.is_a?(Puppet::Indirector::Request)
45
46
  initialize_from_request(options)
@@ -58,6 +59,17 @@ class Puppet::FileServing::Fileset
58
59
  # level deep, which Find doesn't do.
59
60
  def files
60
61
  files = perform_recursion
62
+ soft_max_files = 1000
63
+
64
+ # munged_max_files is needed since puppet http handler is keeping negative numbers as strings
65
+ # https://github.com/puppetlabs/puppet/blob/main/lib/puppet/network/http/handler.rb#L196-L197
66
+ munged_max_files = max_files == '-1' ? -1 : max_files
67
+
68
+ if munged_max_files > 0 && files.size > munged_max_files
69
+ raise Puppet::Error.new _("The directory '%{path}' contains %{entries} entries, which exceeds the limit of %{munged_max_files} specified by the max_files parameter for this resource. The limit may be increased, but be aware that large number of file resources can result in excessive resource consumption and degraded performance. Consider using an alternate method to manage large directory trees") % { path: path, entries: files.size, munged_max_files: munged_max_files }
70
+ elsif munged_max_files == 0 && files.size > soft_max_files
71
+ Puppet.warning _("The directory '%{path}' contains %{entries} entries, which exceeds the default soft limit %{soft_max_files} and may cause excessive resource consumption and degraded performance. To remove this warning set a value for `max_files` parameter or consider using an alternate method to manage large directory trees") % { path: path, entries: files.size, soft_max_files: soft_max_files }
72
+ end
61
73
 
62
74
  # Now strip off the leading path, so each file becomes relative, and remove
63
75
  # any slashes that might end up at the beginning of the path.
@@ -96,7 +108,7 @@ class Puppet::FileServing::Fileset
96
108
  end
97
109
 
98
110
  def initialize_from_request(request)
99
- [:links, :ignore, :recurse, :recurselimit, :checksum_type].each do |param|
111
+ [:links, :ignore, :recurse, :recurselimit, :max_files, :checksum_type].each do |param|
100
112
  if request.options.include?(param) # use 'include?' so the values can be false
101
113
  value = request.options[param]
102
114
  elsif request.options.include?(param.to_s)
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/metadata'
1
+ require_relative '../../puppet/file_serving/metadata'
2
2
 
3
3
  # Simplified metadata representation, suitable for the information
4
4
  # that is available from HTTP headers.
@@ -1,8 +1,8 @@
1
- require 'puppet'
2
- require 'puppet/indirector'
3
- require 'puppet/file_serving'
4
- require 'puppet/file_serving/base'
5
- require 'puppet/util/checksums'
1
+ require_relative '../../puppet'
2
+ require_relative '../../puppet/indirector'
3
+ require_relative '../../puppet/file_serving'
4
+ require_relative '../../puppet/file_serving/base'
5
+ require_relative '../../puppet/util/checksums'
6
6
  require 'uri'
7
7
 
8
8
  # A class that handles retrieving file metadata.
@@ -66,7 +66,7 @@ class Puppet::FileServing::Metadata < Puppet::FileServing::Base
66
66
 
67
67
  class WindowsStat < MetaStat
68
68
  if Puppet::Util::Platform.windows?
69
- require 'puppet/util/windows/security'
69
+ require_relative '../../puppet/util/windows/security'
70
70
  end
71
71
 
72
72
  def initialize(stat, path, source_permissions)
@@ -1,7 +1,7 @@
1
- require 'puppet/util/logging'
2
- require 'puppet/file_serving'
3
- require 'puppet/file_serving/metadata'
4
- require 'puppet/file_serving/content'
1
+ require_relative '../../puppet/util/logging'
2
+ require_relative '../../puppet/file_serving'
3
+ require_relative '../../puppet/file_serving/metadata'
4
+ require_relative '../../puppet/file_serving/content'
5
5
 
6
6
  # Broker access to the filesystem, converting local URIs into metadata
7
7
  # or content objects.
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/mount'
1
+ require_relative '../../../puppet/file_serving/mount'
2
2
 
3
3
  class Puppet::FileServing::Mount::File < Puppet::FileServing::Mount
4
4
  def self.localmap
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/mount'
1
+ require_relative '../../../puppet/file_serving/mount'
2
2
 
3
3
  # Find files in the modules' locales directories.
4
4
  # This is a very strange mount because it merges
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/mount'
1
+ require_relative '../../../puppet/file_serving/mount'
2
2
 
3
3
  # This is the modules-specific mount: it knows how to search through
4
4
  # modules for files. Yay.
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/mount'
1
+ require_relative '../../../puppet/file_serving/mount'
2
2
 
3
3
  # Find files in the modules' pluginfacts directories.
4
4
  # This is a very strange mount because it merges
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/mount'
1
+ require_relative '../../../puppet/file_serving/mount'
2
2
 
3
3
  # Find files in the modules' plugins directories.
4
4
  # This is a very strange mount because it merges
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving/mount'
1
+ require_relative '../../../puppet/file_serving/mount'
2
2
 
3
3
  class Puppet::FileServing::Mount::Tasks < Puppet::FileServing::Mount
4
4
  def find(path, request)
@@ -1,5 +1,5 @@
1
- require 'puppet/file_serving'
2
- require 'puppet/file_serving/fileset'
1
+ require_relative '../../puppet/file_serving'
2
+ require_relative '../../puppet/file_serving/fileset'
3
3
 
4
4
  # Define some common methods for FileServing termini.
5
5
 
@@ -1,4 +1,4 @@
1
- require 'puppet/file_serving'
1
+ require_relative '../../puppet/file_serving'
2
2
 
3
3
  # This module is used to pick the appropriate terminus
4
4
  # in file-serving indirections. This is necessary because
@@ -1,20 +1,20 @@
1
1
  module Puppet::FileSystem
2
- require 'puppet/util'
3
- require 'puppet/file_system/path_pattern'
4
- require 'puppet/file_system/file_impl'
5
- require 'puppet/file_system/memory_file'
6
- require 'puppet/file_system/memory_impl'
7
- require 'puppet/file_system/uniquefile'
2
+ require_relative '../puppet/util'
3
+ require_relative 'file_system/path_pattern'
4
+ require_relative 'file_system/file_impl'
5
+ require_relative 'file_system/memory_file'
6
+ require_relative 'file_system/memory_impl'
7
+ require_relative 'file_system/uniquefile'
8
8
 
9
9
  # create instance of the file system implementation to use for the current platform
10
10
  @impl = if Puppet::Util::Platform.windows?
11
- require 'puppet/file_system/windows'
11
+ require_relative 'file_system/windows'
12
12
  Puppet::FileSystem::Windows
13
13
  elsif Puppet::Util::Platform.jruby?
14
- require 'puppet/file_system/jruby'
14
+ require_relative 'file_system/jruby'
15
15
  Puppet::FileSystem::JRuby
16
16
  else
17
- require 'puppet/file_system/posix'
17
+ require_relative 'file_system/posix'
18
18
  Puppet::FileSystem::Posix
19
19
  end.new()
20
20
 
@@ -1,4 +1,4 @@
1
- require 'puppet/file_system/posix'
1
+ require_relative '../../puppet/file_system/posix'
2
2
 
3
3
  class Puppet::FileSystem::JRuby < Puppet::FileSystem::Posix
4
4
  def unlink(*paths)
@@ -1,5 +1,5 @@
1
1
  require 'pathname'
2
- require 'puppet/error'
2
+ require_relative '../../puppet/error'
3
3
 
4
4
  module Puppet::FileSystem
5
5
  class PathPattern
@@ -1,4 +1,4 @@
1
- require 'puppet/file_system'
1
+ require_relative '../../puppet/file_system'
2
2
  require 'delegate'
3
3
  require 'tmpdir'
4
4
 
@@ -1,5 +1,5 @@
1
- require 'puppet/file_system/posix'
2
- require 'puppet/util/windows'
1
+ require_relative '../../puppet/file_system/posix'
2
+ require_relative '../../puppet/util/windows'
3
3
 
4
4
  class Puppet::FileSystem::Windows < Puppet::FileSystem::Posix
5
5
  FULL_CONTROL = Puppet::Util::Windows::File::FILE_ALL_ACCESS
data/lib/puppet/forge.rb CHANGED
@@ -1,17 +1,17 @@
1
- require 'puppet/vendor'
1
+ require_relative '../puppet/vendor'
2
2
  Puppet::Vendor.load_vendored
3
3
 
4
4
  require 'net/http'
5
5
  require 'tempfile'
6
6
  require 'uri'
7
7
  require 'pathname'
8
- require 'puppet/util/json'
8
+ require_relative '../puppet/util/json'
9
9
  require 'semantic_puppet'
10
10
 
11
11
  class Puppet::Forge < SemanticPuppet::Dependency::Source
12
- require 'puppet/forge/cache'
13
- require 'puppet/forge/repository'
14
- require 'puppet/forge/errors'
12
+ require_relative 'forge/cache'
13
+ require_relative 'forge/repository'
14
+ require_relative 'forge/errors'
15
15
 
16
16
  include Puppet::Forge::Errors
17
17
 
@@ -1,6 +1,6 @@
1
1
  require 'uri'
2
2
 
3
- require 'puppet/forge'
3
+ require_relative '../../puppet/forge'
4
4
 
5
5
  class Puppet::Forge
6
6
  # = Cache
@@ -1,6 +1,6 @@
1
- require 'puppet/util/json'
2
- require 'puppet/error'
3
- require 'puppet/forge'
1
+ require_relative '../../puppet/util/json'
2
+ require_relative '../../puppet/error'
3
+ require_relative '../../puppet/forge'
4
4
 
5
5
  # Puppet::Forge specific exceptions
6
6
  module Puppet::Forge::Errors
@@ -1,9 +1,9 @@
1
- require 'puppet/ssl/openssl_loader'
1
+ require_relative '../../puppet/ssl/openssl_loader'
2
2
  require 'digest/sha1'
3
3
  require 'uri'
4
- require 'puppet/forge'
5
- require 'puppet/forge/errors'
6
- require 'puppet/network/http'
4
+ require_relative '../../puppet/forge'
5
+ require_relative '../../puppet/forge/errors'
6
+ require_relative '../../puppet/network/http'
7
7
 
8
8
  class Puppet::Forge
9
9
  # = Repository
@@ -51,7 +51,7 @@
51
51
  # notice $data.all |$key, $value| { $value % 10 == 0 and $key =~ /^abc/ }
52
52
  # ```
53
53
  #
54
- # Would notice true.
54
+ # Would notice `true`.
55
55
  #
56
56
  # For an general examples that demonstrates iteration, see the Puppet
57
57
  # [iteration](https://puppet.com/docs/puppet/latest/lang_iteration.html)
@@ -3,7 +3,7 @@
3
3
  # This function is compatible with the stdlib function with the same name.
4
4
  #
5
5
  # The function does the following:
6
- # * For a `String` the conversion replaces all combinations of *_<char>* with an upcased version of the
6
+ # * For a `String` the conversion replaces all combinations of `*_<char>*` with an upcased version of the
7
7
  # character following the _. This is done using Ruby system locale which handles some, but not all
8
8
  # special international up-casing rules (for example German double-s ß is upcased to "Ss").
9
9
  # * For an `Iterable[Variant[String, Numeric]]` (for example an `Array`) each value is capitalized and the conversion is not recursive.
@@ -18,14 +18,14 @@
18
18
  # 'hello'.capitalize()
19
19
  # upcase('hello')
20
20
  # ```
21
- # Would both result in "Hello"
21
+ # Would both result in `"Hello"`
22
22
  #
23
23
  # @example Capitalizing strings in an Array
24
24
  # ```puppet
25
25
  # ['abc', 'bcd'].capitalize()
26
26
  # capitalize(['abc', 'bcd'])
27
27
  # ```
28
- # Would both result in ['Abc', 'Bcd']
28
+ # Would both result in `['Abc', 'Bcd']`
29
29
  #
30
30
  Puppet::Functions.create_function(:capitalize) do
31
31
 
@@ -22,14 +22,14 @@
22
22
  # 'HELLO'.downcase()
23
23
  # downcase('HEllO')
24
24
  # ```
25
- # Would both result in "hello"
25
+ # Would both result in `"hello"`
26
26
  #
27
27
  # @example Converting an Array to lower case
28
28
  # ```puppet
29
29
  # ['A', 'B'].downcase()
30
30
  # downcase(['A', 'B'])
31
31
  # ```
32
- # Would both result in ['a', 'b']
32
+ # Would both result in `['a', 'b']`
33
33
  #
34
34
  # @example Converting a Hash to lower case
35
35
  # ```puppet
@@ -23,20 +23,20 @@
23
23
  # #get($facts, 'os.family')
24
24
  # $facts.get('os.family')
25
25
  # ```
26
- # Would both result in the value of $facts['os']['family']
26
+ # Would both result in the value of `$facts['os']['family']`
27
27
  #
28
28
  # @example Getting the value from an expression
29
29
  # ```puppet
30
30
  # get([1,2,[{'name' =>'waldo'}]], '2.0.name')
31
31
  # ```
32
- # Would result in 'waldo'
32
+ # Would result in `'waldo'`
33
33
  #
34
34
  # @example Using a default value
35
35
  # ```puppet
36
36
  # get([1,2,[{'name' =>'waldo'}]], '2.1.name', 'not waldo')
37
37
  #
38
38
  # ```
39
- # Would result in 'not waldo'
39
+ # Would result in `'not waldo'`
40
40
  #
41
41
  # @example Quoting a key with period
42
42
  # ```puppet
@@ -128,8 +128,8 @@ Puppet::Functions.create_function(:get, Puppet::Functions::InternalFunction) do
128
128
 
129
129
  # Note: split_key always processes the initial segment as a string even if it could be an integer.
130
130
  # This since it is designed for lookup keys. For a numeric first segment
131
- # like '0.1' the wanted result is [0,1], not ["0", 1]. The workaround here is to
132
- # prefix the navigation with "x." thus giving split_key a first segment that is a string.
131
+ # like '0.1' the wanted result is `[0,1]`, not `["0", 1]`. The workaround here is to
132
+ # prefix the navigation with `"x."` thus giving split_key a first segment that is a string.
133
133
  # The fake segment is then dropped.
134
134
  segments = split_key("x." + navigation) {|err| _("Syntax error in dotted-navigation string")}
135
135
  segments.shift
@@ -4,14 +4,22 @@
4
4
  # and the values are arrays of elements in the collection that correspond to the key.
5
5
  Puppet::Functions.create_function(:group_by) do
6
6
  # @param collection A collection of things to group.
7
- # @example Group array of strings by length, results in e.g. { 1 => [a, b], 2 => [ab] }
7
+ # @example Group array of strings by length, results in e.g. `{ 1 => [a, b], 2 => [ab] }`
8
+ # ```puppet
8
9
  # [a, b, ab].group_by |$s| { $s.length }
9
- # @example Group array of strings by length and index, results in e.g. {1 => ['a'], 2 => ['b', 'ab']}
10
+ # ```
11
+ # @example Group array of strings by length and index, results in e.g. `{1 => ['a'], 2 => ['b', 'ab']}`
12
+ # ```puppet
10
13
  # [a, b, ab].group_by |$i, $s| { $i%2 + $s.length }
11
- # @example Group hash iterating by key-value pair, results in e.g. { 2 => [['a', [1, 2]]], 1 => [['b', [1]]] }
14
+ # ```
15
+ # @example Group hash iterating by key-value pair, results in e.g. `{ 2 => [['a', [1, 2]]], 1 => [['b', [1]]] }`
16
+ # ```puppet
12
17
  # { a => [1, 2], b => [1] }.group_by |$kv| { $kv[1].length }
13
- # @example Group hash iterating by key and value, results in e.g. { 2 => [['a', [1, 2]]], 1 => [['b', [1]]] }
14
- # { a => [1, 2], b => [1] }.group_by |$k, $v| { $v.length }
18
+ # ```
19
+ # @example Group hash iterating by key and value, results in e.g. `{ 2 => [['a', [1, 2]]], 1 => [['b', [1]]] }`
20
+ # ```puppet
21
+ # { a => [1, 2], b => [1] }.group_by |$k, $v| { $v.length }
22
+ # ```
15
23
  dispatch :group_by_1 do
16
24
  required_param 'Collection', :collection
17
25
  block_param 'Callable[1,1]', :block