puppet 8.5.0-universal-darwin → 8.6.0-universal-darwin

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (543) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +29 -26
  3. data/ext/windows/service/daemon.rb +49 -55
  4. data/lib/hiera/scope.rb +3 -3
  5. data/lib/hiera_puppet.rb +1 -1
  6. data/lib/puppet/agent/disabler.rb +1 -1
  7. data/lib/puppet/application/agent.rb +2 -2
  8. data/lib/puppet/application/apply.rb +2 -2
  9. data/lib/puppet/application/describe.rb +6 -6
  10. data/lib/puppet/application/device.rb +99 -100
  11. data/lib/puppet/application/doc.rb +1 -1
  12. data/lib/puppet/application/face_base.rb +7 -7
  13. data/lib/puppet/application/filebucket.rb +1 -1
  14. data/lib/puppet/application/lookup.rb +5 -5
  15. data/lib/puppet/application/resource.rb +10 -3
  16. data/lib/puppet/application/ssl.rb +3 -3
  17. data/lib/puppet/application.rb +16 -18
  18. data/lib/puppet/coercion.rb +1 -1
  19. data/lib/puppet/configurer/downloader.rb +9 -4
  20. data/lib/puppet/configurer/fact_handler.rb +12 -13
  21. data/lib/puppet/configurer.rb +16 -18
  22. data/lib/puppet/confine/feature.rb +1 -1
  23. data/lib/puppet/confine/variable.rb +1 -1
  24. data/lib/puppet/confine.rb +2 -2
  25. data/lib/puppet/confine_collection.rb +1 -1
  26. data/lib/puppet/confiner.rb +2 -2
  27. data/lib/puppet/daemon.rb +3 -3
  28. data/lib/puppet/datatypes.rb +5 -6
  29. data/lib/puppet/defaults.rb +14 -8
  30. data/lib/puppet/environments.rb +3 -7
  31. data/lib/puppet/error.rb +3 -3
  32. data/lib/puppet/external/dot.rb +42 -34
  33. data/lib/puppet/face/catalog/select.rb +1 -1
  34. data/lib/puppet/face/epp.rb +7 -9
  35. data/lib/puppet/face/help.rb +12 -12
  36. data/lib/puppet/face/module/changes.rb +1 -3
  37. data/lib/puppet/face/module/list.rb +37 -37
  38. data/lib/puppet/face/node/clean.rb +1 -1
  39. data/lib/puppet/face/parser.rb +6 -8
  40. data/lib/puppet/face/report.rb +5 -7
  41. data/lib/puppet/facter_impl.rb +1 -1
  42. data/lib/puppet/feature/base.rb +9 -11
  43. data/lib/puppet/feature/pe_license.rb +1 -1
  44. data/lib/puppet/feature/ssh.rb +1 -1
  45. data/lib/puppet/feature/telnet.rb +3 -5
  46. data/lib/puppet/feature/zlib.rb +1 -1
  47. data/lib/puppet/ffi/windows/constants.rb +1 -1
  48. data/lib/puppet/ffi/windows/functions.rb +2 -2
  49. data/lib/puppet/ffi/windows/structs.rb +3 -3
  50. data/lib/puppet/file_bucket/dipper.rb +4 -4
  51. data/lib/puppet/file_bucket/file.rb +4 -4
  52. data/lib/puppet/file_serving/base.rb +5 -5
  53. data/lib/puppet/file_serving/configuration/parser.rb +9 -9
  54. data/lib/puppet/file_serving/configuration.rb +3 -3
  55. data/lib/puppet/file_serving/fileset.rb +13 -13
  56. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  57. data/lib/puppet/file_serving/metadata.rb +13 -9
  58. data/lib/puppet/file_serving/mount/file.rb +6 -6
  59. data/lib/puppet/file_serving/mount/locales.rb +2 -4
  60. data/lib/puppet/file_serving/mount/pluginfacts.rb +2 -4
  61. data/lib/puppet/file_serving/mount/plugins.rb +2 -4
  62. data/lib/puppet/file_serving/mount.rb +1 -1
  63. data/lib/puppet/file_system/file_impl.rb +3 -3
  64. data/lib/puppet/file_system/memory_impl.rb +1 -1
  65. data/lib/puppet/file_system/path_pattern.rb +1 -1
  66. data/lib/puppet/file_system/uniquefile.rb +17 -16
  67. data/lib/puppet/file_system/windows.rb +26 -18
  68. data/lib/puppet/forge/cache.rb +2 -2
  69. data/lib/puppet/forge/errors.rb +1 -1
  70. data/lib/puppet/forge/repository.rb +2 -2
  71. data/lib/puppet/forge.rb +13 -19
  72. data/lib/puppet/functions/abs.rb +2 -2
  73. data/lib/puppet/functions/camelcase.rb +1 -1
  74. data/lib/puppet/functions/compare.rb +2 -2
  75. data/lib/puppet/functions/contain.rb +1 -1
  76. data/lib/puppet/functions/defined.rb +2 -2
  77. data/lib/puppet/functions/dig.rb +1 -1
  78. data/lib/puppet/functions/eyaml_lookup_key.rb +11 -13
  79. data/lib/puppet/functions/get.rb +1 -1
  80. data/lib/puppet/functions/hocon_data.rb +3 -5
  81. data/lib/puppet/functions/import.rb +1 -1
  82. data/lib/puppet/functions/json_data.rb +4 -6
  83. data/lib/puppet/functions/max.rb +2 -2
  84. data/lib/puppet/functions/min.rb +2 -2
  85. data/lib/puppet/functions/new.rb +1 -1
  86. data/lib/puppet/functions/reduce.rb +6 -10
  87. data/lib/puppet/functions/regsubst.rb +2 -2
  88. data/lib/puppet/functions/require.rb +1 -1
  89. data/lib/puppet/functions/yaml_data.rb +11 -13
  90. data/lib/puppet/functions.rb +32 -37
  91. data/lib/puppet/generate/type.rb +2 -2
  92. data/lib/puppet/gettext/config.rb +9 -9
  93. data/lib/puppet/graph/rb_tree_map.rb +31 -23
  94. data/lib/puppet/graph/relationship_graph.rb +12 -12
  95. data/lib/puppet/graph/simple_graph.rb +8 -10
  96. data/lib/puppet/http/client.rb +1 -1
  97. data/lib/puppet/http/dns.rb +4 -4
  98. data/lib/puppet/http/external_client.rb +1 -1
  99. data/lib/puppet/http/factory.rb +1 -1
  100. data/lib/puppet/http/proxy.rb +15 -15
  101. data/lib/puppet/http/redirector.rb +6 -2
  102. data/lib/puppet/http/resolver.rb +2 -2
  103. data/lib/puppet/http/retry_after_handler.rb +2 -2
  104. data/lib/puppet/http/service/ca.rb +1 -1
  105. data/lib/puppet/http/service/compiler.rb +4 -4
  106. data/lib/puppet/http/service/file_server.rb +1 -1
  107. data/lib/puppet/http/service/report.rb +2 -2
  108. data/lib/puppet/http/service.rb +9 -13
  109. data/lib/puppet/http/session.rb +1 -1
  110. data/lib/puppet/http/site.rb +1 -1
  111. data/lib/puppet/indirector/catalog/compiler.rb +44 -45
  112. data/lib/puppet/indirector/catalog/rest.rb +7 -5
  113. data/lib/puppet/indirector/catalog/store_configs.rb +1 -1
  114. data/lib/puppet/indirector/exec.rb +2 -2
  115. data/lib/puppet/indirector/face.rb +7 -9
  116. data/lib/puppet/indirector/fact_search.rb +1 -1
  117. data/lib/puppet/indirector/facts/facter.rb +6 -6
  118. data/lib/puppet/indirector/facts/json.rb +1 -1
  119. data/lib/puppet/indirector/facts/store_configs.rb +1 -1
  120. data/lib/puppet/indirector/file_bucket_file/file.rb +17 -17
  121. data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -3
  122. data/lib/puppet/indirector/file_content/rest.rb +1 -1
  123. data/lib/puppet/indirector/file_metadata/rest.rb +1 -1
  124. data/lib/puppet/indirector/hiera.rb +1 -1
  125. data/lib/puppet/indirector/indirection.rb +27 -29
  126. data/lib/puppet/indirector/json.rb +4 -4
  127. data/lib/puppet/indirector/memory.rb +2 -2
  128. data/lib/puppet/indirector/msgpack.rb +5 -5
  129. data/lib/puppet/indirector/node/store_configs.rb +1 -1
  130. data/lib/puppet/indirector/none.rb +1 -1
  131. data/lib/puppet/indirector/report/json.rb +1 -1
  132. data/lib/puppet/indirector/report/yaml.rb +1 -1
  133. data/lib/puppet/indirector/request.rb +4 -4
  134. data/lib/puppet/indirector/resource/ral.rb +2 -4
  135. data/lib/puppet/indirector/resource/store_configs.rb +1 -1
  136. data/lib/puppet/indirector/terminus.rb +4 -4
  137. data/lib/puppet/indirector/yaml.rb +3 -3
  138. data/lib/puppet/info_service/class_information_service.rb +5 -8
  139. data/lib/puppet/info_service/task_information_service.rb +6 -7
  140. data/lib/puppet/interface/action.rb +5 -5
  141. data/lib/puppet/interface/action_manager.rb +5 -5
  142. data/lib/puppet/interface/documentation.rb +5 -5
  143. data/lib/puppet/interface/face_collection.rb +7 -7
  144. data/lib/puppet/interface/option.rb +2 -2
  145. data/lib/puppet/interface/option_manager.rb +6 -6
  146. data/lib/puppet/interface.rb +4 -4
  147. data/lib/puppet/metatype/manager.rb +2 -2
  148. data/lib/puppet/module/plan.rb +10 -10
  149. data/lib/puppet/module/task.rb +8 -8
  150. data/lib/puppet/module.rb +39 -41
  151. data/lib/puppet/module_tool/applications/application.rb +10 -8
  152. data/lib/puppet/module_tool/applications/installer.rb +53 -50
  153. data/lib/puppet/module_tool/applications/unpacker.rb +6 -8
  154. data/lib/puppet/module_tool/applications/upgrader.rb +37 -34
  155. data/lib/puppet/module_tool/checksums.rb +2 -2
  156. data/lib/puppet/module_tool/dependency.rb +1 -1
  157. data/lib/puppet/module_tool/errors/base.rb +1 -1
  158. data/lib/puppet/module_tool/install_directory.rb +1 -1
  159. data/lib/puppet/module_tool/local_tarball.rb +3 -5
  160. data/lib/puppet/module_tool/metadata.rb +12 -8
  161. data/lib/puppet/module_tool/shared_behaviors.rb +27 -12
  162. data/lib/puppet/module_tool/tar/mini.rb +3 -3
  163. data/lib/puppet/module_tool.rb +4 -4
  164. data/lib/puppet/network/client_request.rb +5 -3
  165. data/lib/puppet/network/format.rb +2 -2
  166. data/lib/puppet/network/format_support.rb +1 -1
  167. data/lib/puppet/network/formats.rb +1 -1
  168. data/lib/puppet/network/http/api/indirected_routes.rb +24 -44
  169. data/lib/puppet/network/http/api/server/v3.rb +1 -1
  170. data/lib/puppet/network/http/connection.rb +1 -1
  171. data/lib/puppet/network/http/handler.rb +8 -12
  172. data/lib/puppet/network/http/request.rb +1 -1
  173. data/lib/puppet/network/http/route.rb +9 -9
  174. data/lib/puppet/node/environment.rb +21 -23
  175. data/lib/puppet/node/facts.rb +1 -1
  176. data/lib/puppet/node.rb +5 -5
  177. data/lib/puppet/pal/json_catalog_encoder.rb +1 -1
  178. data/lib/puppet/pal/pal_impl.rb +48 -50
  179. data/lib/puppet/pal/plan_signature.rb +1 -1
  180. data/lib/puppet/pal/task_signature.rb +1 -1
  181. data/lib/puppet/parameter/package_options.rb +1 -1
  182. data/lib/puppet/parameter/value.rb +2 -2
  183. data/lib/puppet/parameter/value_collection.rb +7 -7
  184. data/lib/puppet/parameter.rb +8 -9
  185. data/lib/puppet/parser/ast/block_expression.rb +2 -2
  186. data/lib/puppet/parser/ast/hostclass.rb +1 -1
  187. data/lib/puppet/parser/ast/pops_bridge.rb +3 -4
  188. data/lib/puppet/parser/ast/resource.rb +4 -4
  189. data/lib/puppet/parser/ast/resourceparam.rb +4 -4
  190. data/lib/puppet/parser/ast.rb +14 -15
  191. data/lib/puppet/parser/compiler.rb +26 -28
  192. data/lib/puppet/parser/functions/create_resources.rb +3 -3
  193. data/lib/puppet/parser/functions/fail.rb +1 -1
  194. data/lib/puppet/parser/functions/generate.rb +2 -2
  195. data/lib/puppet/parser/functions/tag.rb +1 -1
  196. data/lib/puppet/parser/functions.rb +2 -2
  197. data/lib/puppet/parser/relationship.rb +3 -1
  198. data/lib/puppet/parser/resource/param.rb +2 -2
  199. data/lib/puppet/parser/resource.rb +23 -23
  200. data/lib/puppet/parser/scope.rb +10 -10
  201. data/lib/puppet/parser/script_compiler.rb +1 -1
  202. data/lib/puppet/parser/templatewrapper.rb +1 -1
  203. data/lib/puppet/parser/type_loader.rb +10 -12
  204. data/lib/puppet/parser.rb +1 -1
  205. data/lib/puppet/pops/adaptable.rb +1 -1
  206. data/lib/puppet/pops/evaluator/access_operator.rb +8 -8
  207. data/lib/puppet/pops/evaluator/callable_signature.rb +4 -4
  208. data/lib/puppet/pops/evaluator/collector_transformer.rb +4 -4
  209. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +7 -7
  210. data/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +6 -6
  211. data/lib/puppet/pops/evaluator/compare_operator.rb +10 -10
  212. data/lib/puppet/pops/evaluator/deferred_resolver.rb +1 -1
  213. data/lib/puppet/pops/evaluator/epp_evaluator.rb +2 -2
  214. data/lib/puppet/pops/evaluator/evaluator_impl.rb +56 -60
  215. data/lib/puppet/pops/evaluator/literal_evaluator.rb +4 -0
  216. data/lib/puppet/pops/evaluator/relationship_operator.rb +2 -2
  217. data/lib/puppet/pops/evaluator/runtime3_converter.rb +3 -3
  218. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  219. data/lib/puppet/pops/functions/dispatcher.rb +3 -3
  220. data/lib/puppet/pops/functions/function.rb +14 -16
  221. data/lib/puppet/pops/issue_reporter.rb +2 -2
  222. data/lib/puppet/pops/label_provider.rb +2 -2
  223. data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
  224. data/lib/puppet/pops/loader/loader.rb +4 -4
  225. data/lib/puppet/pops/loader/loader_paths.rb +3 -3
  226. data/lib/puppet/pops/loader/module_loaders.rb +11 -11
  227. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
  228. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  229. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +5 -1
  230. data/lib/puppet/pops/loader/static_loader.rb +3 -3
  231. data/lib/puppet/pops/loaders.rb +3 -3
  232. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  233. data/lib/puppet/pops/lookup/explainer.rb +2 -2
  234. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  235. data/lib/puppet/pops/lookup/hiera_config.rb +15 -11
  236. data/lib/puppet/pops/lookup/interpolation.rb +3 -3
  237. data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
  238. data/lib/puppet/pops/lookup/location_resolver.rb +1 -1
  239. data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -7
  240. data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
  241. data/lib/puppet/pops/merge_strategy.rb +6 -6
  242. data/lib/puppet/pops/migration/migration_checker.rb +1 -1
  243. data/lib/puppet/pops/model/ast_transformer.rb +9 -11
  244. data/lib/puppet/pops/model/factory.rb +4 -5
  245. data/lib/puppet/pops/parser/epp_parser.rb +2 -2
  246. data/lib/puppet/pops/parser/epp_support.rb +1 -1
  247. data/lib/puppet/pops/parser/evaluating_parser.rb +2 -2
  248. data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
  249. data/lib/puppet/pops/parser/interpolation_support.rb +3 -3
  250. data/lib/puppet/pops/parser/lexer2.rb +20 -12
  251. data/lib/puppet/pops/parser/lexer_support.rb +1 -1
  252. data/lib/puppet/pops/parser/locator.rb +4 -4
  253. data/lib/puppet/pops/parser/parser_support.rb +12 -14
  254. data/lib/puppet/pops/parser/pn_parser.rb +3 -3
  255. data/lib/puppet/pops/parser/slurp_support.rb +8 -8
  256. data/lib/puppet/pops/patterns.rb +12 -12
  257. data/lib/puppet/pops/pcore.rb +1 -1
  258. data/lib/puppet/pops/pn.rb +2 -2
  259. data/lib/puppet/pops/puppet_stack.rb +1 -1
  260. data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
  261. data/lib/puppet/pops/serialization/abstract_reader.rb +2 -2
  262. data/lib/puppet/pops/serialization/abstract_writer.rb +3 -3
  263. data/lib/puppet/pops/time/timestamp.rb +1 -1
  264. data/lib/puppet/pops/types/class_loader.rb +4 -6
  265. data/lib/puppet/pops/types/iterable.rb +1 -1
  266. data/lib/puppet/pops/types/p_binary_type.rb +1 -1
  267. data/lib/puppet/pops/types/p_init_type.rb +1 -1
  268. data/lib/puppet/pops/types/p_object_type.rb +5 -5
  269. data/lib/puppet/pops/types/p_object_type_extension.rb +4 -6
  270. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +1 -1
  271. data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
  272. data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
  273. data/lib/puppet/pops/types/p_type_set_type.rb +10 -10
  274. data/lib/puppet/pops/types/p_uri_type.rb +4 -4
  275. data/lib/puppet/pops/types/recursion_guard.rb +4 -4
  276. data/lib/puppet/pops/types/ruby_generator.rb +2 -2
  277. data/lib/puppet/pops/types/string_converter.rb +12 -8
  278. data/lib/puppet/pops/types/tree_iterators.rb +4 -6
  279. data/lib/puppet/pops/types/type_calculator.rb +10 -10
  280. data/lib/puppet/pops/types/type_factory.rb +7 -3
  281. data/lib/puppet/pops/types/type_formatter.rb +22 -24
  282. data/lib/puppet/pops/types/type_mismatch_describer.rb +24 -24
  283. data/lib/puppet/pops/types/types.rb +28 -24
  284. data/lib/puppet/pops/utils.rb +38 -42
  285. data/lib/puppet/pops/validation/checker4_0.rb +10 -10
  286. data/lib/puppet/pops/validation/tasks_checker.rb +1 -1
  287. data/lib/puppet/pops/validation/validator_factory_4_0.rb +2 -0
  288. data/lib/puppet/pops/validation.rb +4 -4
  289. data/lib/puppet/pops/visitor.rb +2 -2
  290. data/lib/puppet/property/ensure.rb +12 -14
  291. data/lib/puppet/property/keyvalue.rb +4 -4
  292. data/lib/puppet/property/list.rb +4 -4
  293. data/lib/puppet/property/ordered_list.rb +1 -1
  294. data/lib/puppet/property.rb +31 -33
  295. data/lib/puppet/provider/exec.rb +2 -2
  296. data/lib/puppet/provider/file/posix.rb +19 -17
  297. data/lib/puppet/provider/file/windows.rb +13 -19
  298. data/lib/puppet/provider/group/directoryservice.rb +3 -2
  299. data/lib/puppet/provider/group/groupadd.rb +4 -4
  300. data/lib/puppet/provider/group/windows_adsi.rb +2 -2
  301. data/lib/puppet/provider/nameservice/directoryservice.rb +29 -29
  302. data/lib/puppet/provider/nameservice/objectadd.rb +2 -4
  303. data/lib/puppet/provider/nameservice/pw.rb +1 -2
  304. data/lib/puppet/provider/nameservice.rb +8 -8
  305. data/lib/puppet/provider/package/aix.rb +19 -19
  306. data/lib/puppet/provider/package/appdmg.rb +2 -2
  307. data/lib/puppet/provider/package/apple.rb +1 -1
  308. data/lib/puppet/provider/package/apt.rb +18 -18
  309. data/lib/puppet/provider/package/aptitude.rb +1 -3
  310. data/lib/puppet/provider/package/aptrpm.rb +9 -9
  311. data/lib/puppet/provider/package/blastwave.rb +10 -14
  312. data/lib/puppet/provider/package/dnfmodule.rb +3 -3
  313. data/lib/puppet/provider/package/dpkg.rb +11 -13
  314. data/lib/puppet/provider/package/fink.rb +14 -14
  315. data/lib/puppet/provider/package/freebsd.rb +1 -1
  316. data/lib/puppet/provider/package/gem.rb +12 -14
  317. data/lib/puppet/provider/package/macports.rb +2 -2
  318. data/lib/puppet/provider/package/nim.rb +10 -10
  319. data/lib/puppet/provider/package/openbsd.rb +22 -22
  320. data/lib/puppet/provider/package/opkg.rb +6 -6
  321. data/lib/puppet/provider/package/pacman.rb +35 -29
  322. data/lib/puppet/provider/package/pip.rb +25 -24
  323. data/lib/puppet/provider/package/pkg.rb +15 -15
  324. data/lib/puppet/provider/package/pkgdmg.rb +10 -10
  325. data/lib/puppet/provider/package/pkgin.rb +2 -2
  326. data/lib/puppet/provider/package/pkgng.rb +5 -5
  327. data/lib/puppet/provider/package/pkgutil.rb +17 -21
  328. data/lib/puppet/provider/package/portage.rb +59 -61
  329. data/lib/puppet/provider/package/ports.rb +12 -11
  330. data/lib/puppet/provider/package/portupgrade.rb +35 -35
  331. data/lib/puppet/provider/package/puppetserver_gem.rb +10 -9
  332. data/lib/puppet/provider/package/rpm.rb +26 -26
  333. data/lib/puppet/provider/package/rug.rb +7 -9
  334. data/lib/puppet/provider/package/sun.rb +4 -4
  335. data/lib/puppet/provider/package/up2date.rb +5 -7
  336. data/lib/puppet/provider/package/urpmi.rb +6 -6
  337. data/lib/puppet/provider/package/windows/exe_package.rb +7 -7
  338. data/lib/puppet/provider/package/windows/msi_package.rb +3 -3
  339. data/lib/puppet/provider/package/windows/package.rb +2 -2
  340. data/lib/puppet/provider/package/windows.rb +3 -5
  341. data/lib/puppet/provider/package/yum.rb +33 -37
  342. data/lib/puppet/provider/package/zypper.rb +12 -14
  343. data/lib/puppet/provider/package.rb +1 -1
  344. data/lib/puppet/provider/package_targetable.rb +1 -1
  345. data/lib/puppet/provider/parsedfile.rb +9 -9
  346. data/lib/puppet/provider/service/base.rb +16 -21
  347. data/lib/puppet/provider/service/bsd.rb +4 -4
  348. data/lib/puppet/provider/service/daemontools.rb +31 -31
  349. data/lib/puppet/provider/service/debian.rb +6 -6
  350. data/lib/puppet/provider/service/freebsd.rb +36 -36
  351. data/lib/puppet/provider/service/gentoo.rb +6 -6
  352. data/lib/puppet/provider/service/init.rb +19 -19
  353. data/lib/puppet/provider/service/launchd.rb +22 -22
  354. data/lib/puppet/provider/service/openbsd.rb +10 -10
  355. data/lib/puppet/provider/service/openrc.rb +1 -1
  356. data/lib/puppet/provider/service/openwrt.rb +3 -3
  357. data/lib/puppet/provider/service/rcng.rb +3 -3
  358. data/lib/puppet/provider/service/redhat.rb +4 -4
  359. data/lib/puppet/provider/service/runit.rb +6 -6
  360. data/lib/puppet/provider/service/service.rb +5 -7
  361. data/lib/puppet/provider/service/smf.rb +28 -27
  362. data/lib/puppet/provider/service/src.rb +7 -7
  363. data/lib/puppet/provider/service/systemd.rb +31 -37
  364. data/lib/puppet/provider/service/upstart.rb +17 -17
  365. data/lib/puppet/provider/service/windows.rb +7 -7
  366. data/lib/puppet/provider/user/aix.rb +4 -2
  367. data/lib/puppet/provider/user/directoryservice.rb +34 -36
  368. data/lib/puppet/provider/user/hpux.rb +10 -14
  369. data/lib/puppet/provider/user/pw.rb +1 -1
  370. data/lib/puppet/provider/user/user_role_add.rb +16 -18
  371. data/lib/puppet/provider/user/useradd.rb +7 -7
  372. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  373. data/lib/puppet/provider.rb +8 -8
  374. data/lib/puppet/reference/indirection.rb +3 -0
  375. data/lib/puppet/reference/metaparameter.rb +1 -1
  376. data/lib/puppet/reference/providers.rb +3 -3
  377. data/lib/puppet/reference/type.rb +1 -1
  378. data/lib/puppet/relationship.rb +4 -5
  379. data/lib/puppet/reports/http.rb +1 -1
  380. data/lib/puppet/reports/log.rb +2 -2
  381. data/lib/puppet/reports/store.rb +4 -4
  382. data/lib/puppet/reports.rb +2 -2
  383. data/lib/puppet/resource/catalog.rb +16 -16
  384. data/lib/puppet/resource/status.rb +3 -3
  385. data/lib/puppet/resource/type.rb +8 -8
  386. data/lib/puppet/resource/type_collection.rb +1 -1
  387. data/lib/puppet/resource.rb +41 -41
  388. data/lib/puppet/scheduler/scheduler.rb +1 -1
  389. data/lib/puppet/settings/alias_setting.rb +3 -5
  390. data/lib/puppet/settings/base_setting.rb +11 -11
  391. data/lib/puppet/settings/boolean_setting.rb +2 -2
  392. data/lib/puppet/settings/config_file.rb +5 -4
  393. data/lib/puppet/settings/duration_setting.rb +2 -2
  394. data/lib/puppet/settings/environment_conf.rb +3 -3
  395. data/lib/puppet/settings/file_or_directory_setting.rb +2 -2
  396. data/lib/puppet/settings/file_setting.rb +11 -11
  397. data/lib/puppet/settings/ini_file.rb +3 -3
  398. data/lib/puppet/settings/port_setting.rb +1 -1
  399. data/lib/puppet/settings/priority_setting.rb +2 -2
  400. data/lib/puppet/settings/ttl_setting.rb +2 -2
  401. data/lib/puppet/settings/value_translator.rb +8 -8
  402. data/lib/puppet/settings.rb +65 -70
  403. data/lib/puppet/ssl/base.rb +2 -4
  404. data/lib/puppet/ssl/certificate_request.rb +18 -22
  405. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  406. data/lib/puppet/ssl/oids.rb +2 -2
  407. data/lib/puppet/ssl/openssl_loader.rb +4 -4
  408. data/lib/puppet/syntax_checkers/base64.rb +3 -3
  409. data/lib/puppet/syntax_checkers/epp.rb +3 -3
  410. data/lib/puppet/syntax_checkers/json.rb +3 -3
  411. data/lib/puppet/syntax_checkers/pp.rb +3 -3
  412. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  413. data/lib/puppet/transaction/event.rb +2 -2
  414. data/lib/puppet/transaction/event_manager.rb +5 -5
  415. data/lib/puppet/transaction/persistence.rb +12 -14
  416. data/lib/puppet/transaction/report.rb +4 -4
  417. data/lib/puppet/transaction/resource_harness.rb +2 -2
  418. data/lib/puppet/transaction.rb +14 -18
  419. data/lib/puppet/type/component.rb +3 -3
  420. data/lib/puppet/type/exec.rb +43 -45
  421. data/lib/puppet/type/file/checksum_value.rb +1 -1
  422. data/lib/puppet/type/file/content.rb +6 -6
  423. data/lib/puppet/type/file/ctime.rb +2 -2
  424. data/lib/puppet/type/file/data_sync.rb +3 -3
  425. data/lib/puppet/type/file/ensure.rb +16 -15
  426. data/lib/puppet/type/file/mode.rb +9 -9
  427. data/lib/puppet/type/file/mtime.rb +2 -2
  428. data/lib/puppet/type/file/selcontext.rb +14 -14
  429. data/lib/puppet/type/file/source.rb +19 -21
  430. data/lib/puppet/type/file/target.rb +11 -11
  431. data/lib/puppet/type/file.rb +21 -21
  432. data/lib/puppet/type/filebucket.rb +3 -3
  433. data/lib/puppet/type/group.rb +3 -3
  434. data/lib/puppet/type/notify.rb +2 -2
  435. data/lib/puppet/type/package.rb +4 -4
  436. data/lib/puppet/type/resources.rb +6 -6
  437. data/lib/puppet/type/schedule.rb +9 -9
  438. data/lib/puppet/type/service.rb +6 -8
  439. data/lib/puppet/type/tidy.rb +22 -24
  440. data/lib/puppet/type/user.rb +13 -13
  441. data/lib/puppet/type.rb +76 -88
  442. data/lib/puppet/util/at_fork/solaris.rb +33 -37
  443. data/lib/puppet/util/autoload.rb +2 -2
  444. data/lib/puppet/util/backups.rb +9 -9
  445. data/lib/puppet/util/character_encoding.rb +7 -6
  446. data/lib/puppet/util/checksums.rb +2 -2
  447. data/lib/puppet/util/classgen.rb +8 -8
  448. data/lib/puppet/util/colors.rb +1 -1
  449. data/lib/puppet/util/command_line/puppet_option_parser.rb +1 -1
  450. data/lib/puppet/util/command_line/trollop.rb +42 -46
  451. data/lib/puppet/util/command_line.rb +2 -2
  452. data/lib/puppet/util/constant_inflector.rb +2 -2
  453. data/lib/puppet/util/diff.rb +19 -21
  454. data/lib/puppet/util/docs.rb +2 -2
  455. data/lib/puppet/util/errors.rb +9 -9
  456. data/lib/puppet/util/execution.rb +32 -9
  457. data/lib/puppet/util/feature.rb +1 -1
  458. data/lib/puppet/util/fileparsing.rb +12 -16
  459. data/lib/puppet/util/filetype.rb +36 -40
  460. data/lib/puppet/util/inifile.rb +6 -12
  461. data/lib/puppet/util/ldap/connection.rb +1 -1
  462. data/lib/puppet/util/ldap/manager.rb +10 -12
  463. data/lib/puppet/util/lockfile.rb +6 -8
  464. data/lib/puppet/util/log/destination.rb +2 -2
  465. data/lib/puppet/util/log/destinations.rb +4 -4
  466. data/lib/puppet/util/log.rb +12 -9
  467. data/lib/puppet/util/logging.rb +11 -11
  468. data/lib/puppet/util/metric.rb +3 -3
  469. data/lib/puppet/util/monkey_patches.rb +5 -7
  470. data/lib/puppet/util/network_device/config.rb +3 -3
  471. data/lib/puppet/util/package/version/debian.rb +27 -28
  472. data/lib/puppet/util/package/version/pip.rb +5 -5
  473. data/lib/puppet/util/package/version/range/eq.rb +1 -1
  474. data/lib/puppet/util/package/version/rpm.rb +1 -1
  475. data/lib/puppet/util/package.rb +2 -2
  476. data/lib/puppet/util/pidlock.rb +2 -2
  477. data/lib/puppet/util/platform.rb +1 -1
  478. data/lib/puppet/util/plist.rb +8 -10
  479. data/lib/puppet/util/posix.rb +17 -17
  480. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  481. data/lib/puppet/util/provider_features.rb +3 -3
  482. data/lib/puppet/util/rdoc/code_objects.rb +3 -3
  483. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +63 -64
  484. data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +23 -23
  485. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +12 -12
  486. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  487. data/lib/puppet/util/rdoc/parser.rb +1 -1
  488. data/lib/puppet/util/reference.rb +13 -9
  489. data/lib/puppet/util/retry_action.rb +1 -1
  490. data/lib/puppet/util/rpm_compare.rb +17 -18
  491. data/lib/puppet/util/rubygems.rb +1 -1
  492. data/lib/puppet/util/selinux.rb +7 -7
  493. data/lib/puppet/util/storage.rb +10 -12
  494. data/lib/puppet/util/suidmanager.rb +18 -19
  495. data/lib/puppet/util/symbolic_file_mode.rb +71 -75
  496. data/lib/puppet/util/tag_set.rb +2 -2
  497. data/lib/puppet/util/tagging.rb +8 -10
  498. data/lib/puppet/util/terminal.rb +4 -4
  499. data/lib/puppet/util/user_attr.rb +7 -7
  500. data/lib/puppet/util/watcher.rb +3 -5
  501. data/lib/puppet/util/windows/access_control_list.rb +1 -1
  502. data/lib/puppet/util/windows/adsi.rb +42 -42
  503. data/lib/puppet/util/windows/daemon.rb +64 -68
  504. data/lib/puppet/util/windows/error.rb +2 -2
  505. data/lib/puppet/util/windows/file.rb +18 -25
  506. data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
  507. data/lib/puppet/util/windows/principal.rb +8 -8
  508. data/lib/puppet/util/windows/process.rb +16 -28
  509. data/lib/puppet/util/windows/registry.rb +16 -15
  510. data/lib/puppet/util/windows/root_certs.rb +2 -2
  511. data/lib/puppet/util/windows/security.rb +31 -31
  512. data/lib/puppet/util/windows/service.rb +11 -11
  513. data/lib/puppet/util/windows/sid.rb +8 -8
  514. data/lib/puppet/util/windows/user.rb +18 -20
  515. data/lib/puppet/util/yaml.rb +1 -1
  516. data/lib/puppet/util.rb +55 -46
  517. data/lib/puppet/version.rb +2 -2
  518. data/lib/puppet/x509/pem_store.rb +1 -1
  519. data/lib/puppet.rb +3 -3
  520. data/man/man5/puppet.conf.5 +10 -2
  521. data/man/man8/puppet-agent.8 +1 -1
  522. data/man/man8/puppet-apply.8 +1 -1
  523. data/man/man8/puppet-catalog.8 +1 -1
  524. data/man/man8/puppet-config.8 +1 -1
  525. data/man/man8/puppet-describe.8 +1 -1
  526. data/man/man8/puppet-device.8 +1 -1
  527. data/man/man8/puppet-doc.8 +1 -1
  528. data/man/man8/puppet-epp.8 +1 -1
  529. data/man/man8/puppet-facts.8 +1 -1
  530. data/man/man8/puppet-filebucket.8 +1 -1
  531. data/man/man8/puppet-generate.8 +1 -1
  532. data/man/man8/puppet-help.8 +1 -1
  533. data/man/man8/puppet-lookup.8 +1 -1
  534. data/man/man8/puppet-module.8 +1 -1
  535. data/man/man8/puppet-node.8 +1 -1
  536. data/man/man8/puppet-parser.8 +1 -1
  537. data/man/man8/puppet-plugin.8 +1 -1
  538. data/man/man8/puppet-report.8 +1 -1
  539. data/man/man8/puppet-resource.8 +5 -1
  540. data/man/man8/puppet-script.8 +1 -1
  541. data/man/man8/puppet-ssl.8 +1 -1
  542. data/man/man8/puppet.8 +2 -2
  543. metadata +2 -2
@@ -31,7 +31,7 @@ module Puppet::FileBucketFile
31
31
  raise _("could not find diff_with %{diff}") % { diff: request.options[:diff_with] } unless Puppet::FileSystem.exist?(other_contents_file)
32
32
  raise _("Unable to diff on this platform") unless Puppet[:diff] != ""
33
33
 
34
- return diff(Puppet::FileSystem.path_string(contents_file), Puppet::FileSystem.path_string(other_contents_file))
34
+ diff(Puppet::FileSystem.path_string(contents_file), Puppet::FileSystem.path_string(other_contents_file))
35
35
  else
36
36
  # TRANSLATORS "FileBucket" should not be translated
37
37
  Puppet.info _("FileBucket read %{checksum}") % { checksum: checksum }
@@ -64,14 +64,14 @@ module Puppet::FileBucketFile
64
64
  msg = ''.dup
65
65
  # Get all files with mtime between 'from' and 'to'
66
66
  Pathname.new(request.options[:bucket_path]).find { |item|
67
- if item.file? and item.basename.to_s == "paths"
68
- filenames = item.read.strip.split("\n")
69
- filestat = Time.parse(item.stat.mtime.to_s)
70
- if from <= filestat and filestat <= to
71
- filenames.each do |filename|
72
- bucket[filename] += [[item.stat.mtime, item.parent.basename]]
73
- end
74
- end
67
+ next unless item.file? and item.basename.to_s == "paths"
68
+
69
+ filenames = item.read.strip.split("\n")
70
+ filestat = Time.parse(item.stat.mtime.to_s)
71
+ next unless from <= filestat and filestat <= to
72
+
73
+ filenames.each do |filename|
74
+ bucket[filename] += [[item.stat.mtime, item.parent.basename]]
75
75
  end
76
76
  }
77
77
  # Sort the results
@@ -88,7 +88,7 @@ module Puppet::FileBucketFile
88
88
  msg += "#{chksum} #{date} #{filename}\n"
89
89
  }
90
90
  }
91
- return model.new(msg)
91
+ model.new(msg)
92
92
  end
93
93
 
94
94
  def head(request)
@@ -125,7 +125,7 @@ module Puppet::FileBucketFile
125
125
  # given its possible that request.options[:bucket_path] or Puppet[:bucketdir]
126
126
  # contained characters in an encoding that are not represented the
127
127
  # same way when the bytes are decoded as UTF-8, continue using system encoding
128
- Puppet::FileSystem.open(paths_file, 0640, 'a+:external') do |f|
128
+ Puppet::FileSystem.open(paths_file, 0o640, 'a+:external') do |f|
129
129
  path_match(f, files_original_path)
130
130
  end
131
131
  end
@@ -137,7 +137,7 @@ module Puppet::FileBucketFile
137
137
  file_handle.each_line do |line|
138
138
  return true if line.chomp == files_original_path
139
139
  end
140
- return false
140
+ false
141
141
  end
142
142
 
143
143
  # @param bucket_file [Puppet::FileBucket::File] IO object representing
@@ -152,7 +152,7 @@ module Puppet::FileBucketFile
152
152
  # existing and new backup
153
153
  # @api private
154
154
  def save_to_disk(bucket_file, files_original_path, contents_file, paths_file)
155
- Puppet::Util.withumask(0007) do
155
+ Puppet::Util.withumask(0o007) do
156
156
  unless Puppet::FileSystem.dir_exist?(paths_file)
157
157
  Puppet::FileSystem.dir_mkpath(paths_file)
158
158
  end
@@ -161,14 +161,14 @@ module Puppet::FileBucketFile
161
161
  # given its possible that request.options[:bucket_path] or Puppet[:bucketdir]
162
162
  # contained characters in an encoding that are not represented the
163
163
  # same way when the bytes are decoded as UTF-8, continue using system encoding
164
- Puppet::FileSystem.exclusive_open(paths_file, 0640, 'a+:external') do |f|
164
+ Puppet::FileSystem.exclusive_open(paths_file, 0o640, 'a+:external') do |f|
165
165
  if Puppet::FileSystem.exist?(contents_file)
166
166
  if verify_identical_file(contents_file, bucket_file)
167
167
  # TRANSLATORS "FileBucket" should not be translated
168
168
  Puppet.info _("FileBucket got a duplicate file %{file_checksum}") % { file_checksum: bucket_file.checksum }
169
169
  # Don't touch the contents file on Windows, since we can't update the
170
170
  # mtime of read-only files there.
171
- if !Puppet::Util::Platform.windows?
171
+ unless Puppet::Util::Platform.windows?
172
172
  Puppet::FileSystem.touch(contents_file)
173
173
  end
174
174
  elsif contents_file_matches_checksum?(contents_file, bucket_file.checksum_data, bucket_file.checksum_type)
@@ -202,7 +202,7 @@ module Puppet::FileBucketFile
202
202
  end
203
203
 
204
204
  def request_to_checksum_and_path(request)
205
- checksum_type, checksum, path = request.key.split(/\//, 3)
205
+ checksum_type, checksum, path = request.key.split(%r{/}, 3)
206
206
  if path == '' # Treat "md5/<checksum>/" like "md5/<checksum>"
207
207
  path = nil
208
208
  end
@@ -257,7 +257,7 @@ module Puppet::FileBucketFile
257
257
  # @return [void]
258
258
  # @api private
259
259
  def copy_bucket_file_to_contents_file(contents_file, bucket_file)
260
- Puppet::FileSystem.replace_file(contents_file, 0440) do |of|
260
+ Puppet::FileSystem.replace_file(contents_file, 0o440) do |of|
261
261
  # PUP-1044 writes all of the contents
262
262
  bucket_file.stream() do |src|
263
263
  FileUtils.copy_stream(src, of)
@@ -13,7 +13,7 @@ module Puppet::FileBucketFile
13
13
  api.head_filebucket_file(
14
14
  request.key,
15
15
  environment: request.environment.to_s,
16
- bucket_path: request.options[:bucket_path],
16
+ bucket_path: request.options[:bucket_path]
17
17
  )
18
18
  rescue Puppet::HTTP::ResponseError => e
19
19
  return nil if e.response.code == 404
@@ -31,7 +31,7 @@ module Puppet::FileBucketFile
31
31
  diff_with: request.options[:diff_with],
32
32
  list_all: request.options[:list_all],
33
33
  fromdate: request.options[:fromdate],
34
- todate: request.options[:todate],
34
+ todate: request.options[:todate]
35
35
  )
36
36
  filebucket_file
37
37
  rescue Puppet::HTTP::ResponseError => e
@@ -44,7 +44,7 @@ module Puppet::FileBucketFile
44
44
  api.put_filebucket_file(
45
45
  request.key,
46
46
  body: request.instance.render,
47
- environment: request.environment.to_s,
47
+ environment: request.environment.to_s
48
48
  )
49
49
  rescue Puppet::HTTP::ResponseError => e
50
50
  raise convert_to_http_error(e.response)
@@ -17,7 +17,7 @@ class Puppet::Indirector::FileContent::Rest < Puppet::Indirector::REST
17
17
 
18
18
  api.get_file_content(
19
19
  path: Puppet::Util.uri_unescape(url.path),
20
- environment: request.environment.to_s,
20
+ environment: request.environment.to_s
21
21
  ) do |data|
22
22
  content << data
23
23
  end
@@ -46,7 +46,7 @@ class Puppet::Indirector::FileMetadata::Rest < Puppet::Indirector::REST
46
46
  ignore: request.options[:ignore],
47
47
  links: request.options[:links],
48
48
  checksum_type: request.options[:checksum_type],
49
- source_permissions: request.options[:source_permissions],
49
+ source_permissions: request.options[:source_permissions]
50
50
  )
51
51
  file_metadatas
52
52
  rescue Puppet::HTTP::ResponseError => e
@@ -9,7 +9,7 @@ require 'hiera/scope'
9
9
  # Use `Puppet::DataBinding.indirection.terminus(:hiera)` instead.
10
10
  class Puppet::Indirector::Hiera < Puppet::Indirector::Terminus
11
11
  def initialize(*args)
12
- if !Puppet.features.hiera?
12
+ unless Puppet.features.hiera?
13
13
  # TRANSLATORS "Hiera" is the name of a code library and should not be translated
14
14
  raise _("Hiera terminus not supported without hiera library")
15
15
  end
@@ -26,7 +26,7 @@ class Puppet::Indirector::Indirection
26
26
  # Return a list of all known indirections. Used to generate the
27
27
  # reference.
28
28
  def self.instances
29
- @@indirections.collect { |i| i.name }
29
+ @@indirections.collect(&:name)
30
30
  end
31
31
 
32
32
  # Find an indirected model by name. This is provided so that Terminus classes
@@ -121,10 +121,10 @@ class Puppet::Indirector::Indirection
121
121
  def set_global_setting(setting, value)
122
122
  case setting
123
123
  when :cache_class
124
- validate_terminus_class(value) if !value.nil?
124
+ validate_terminus_class(value) unless value.nil?
125
125
  @cache_class = Puppet::ThreadLocal.new(value)
126
126
  when :terminus_class
127
- validate_terminus_class(value) if !value.nil?
127
+ validate_terminus_class(value) unless value.nil?
128
128
  @terminus_class = Puppet::ThreadLocal.new(value)
129
129
  when :terminus_setting
130
130
  @terminus_setting = Puppet::ThreadLocal.new(value)
@@ -135,13 +135,13 @@ class Puppet::Indirector::Indirection
135
135
 
136
136
  # Set up our request object.
137
137
  def request(*args)
138
- Puppet::Indirector::Request.new(self.name, *args)
138
+ Puppet::Indirector::Request.new(name, *args)
139
139
  end
140
140
 
141
141
  # Return the singleton terminus for this indirection.
142
142
  def terminus(terminus_name = nil)
143
143
  # Get the name of the terminus.
144
- raise Puppet::DevError, _("No terminus specified for %{name}; cannot redirect") % { name: self.name } unless terminus_name ||= terminus_class
144
+ raise Puppet::DevError, _("No terminus specified for %{name}; cannot redirect") % { name: name } unless terminus_name ||= terminus_class
145
145
 
146
146
  termini[terminus_name] ||= make_terminus(terminus_name)
147
147
  end
@@ -158,11 +158,11 @@ class Puppet::Indirector::Indirection
158
158
  # Determine the terminus class.
159
159
  def terminus_class
160
160
  unless @terminus_class.value
161
- setting = self.terminus_setting
161
+ setting = terminus_setting
162
162
  if setting
163
163
  self.terminus_class = Puppet.settings[setting]
164
164
  else
165
- raise Puppet::DevError, _("No terminus class nor terminus setting was provided for indirection %{name}") % { name: self.name }
165
+ raise Puppet::DevError, _("No terminus class nor terminus setting was provided for indirection %{name}") % { name: name }
166
166
  end
167
167
  end
168
168
  @terminus_class.value
@@ -184,9 +184,9 @@ class Puppet::Indirector::Indirection
184
184
  raise ArgumentError, _("Invalid terminus name %{terminus_class}") % { terminus_class: terminus_class.inspect }
185
185
  end
186
186
 
187
- unless Puppet::Indirector::Terminus.terminus_class(self.name, terminus_class)
187
+ unless Puppet::Indirector::Terminus.terminus_class(name, terminus_class)
188
188
  raise ArgumentError, _("Could not find terminus %{terminus_class} for indirection %{name}") %
189
- { terminus_class: terminus_class, name: self.name }
189
+ { terminus_class: terminus_class, name: name }
190
190
  end
191
191
  end
192
192
 
@@ -201,7 +201,7 @@ class Puppet::Indirector::Indirection
201
201
  instance = cache.find(request(:find, key, nil, options))
202
202
  return nil unless instance
203
203
 
204
- Puppet.info _("Expiring the %{cache} cache of %{instance}") % { cache: self.name, instance: instance.name }
204
+ Puppet.info _("Expiring the %{cache} cache of %{instance}") % { cache: name, instance: instance.name }
205
205
 
206
206
  # Set an expiration date in the past
207
207
  instance.expiration = Time.now - 60
@@ -220,7 +220,7 @@ class Puppet::Indirector::Indirection
220
220
  terminus = prepare(request)
221
221
 
222
222
  result = find_in_cache(request)
223
- if not result.nil?
223
+ if !result.nil?
224
224
  result
225
225
  elsif request.ignore_terminus?
226
226
  nil
@@ -228,10 +228,10 @@ class Puppet::Indirector::Indirection
228
228
  # Otherwise, return the result from the terminus, caching if
229
229
  # appropriate.
230
230
  result = terminus.find(request)
231
- if not result.nil?
232
- result.expiration ||= self.expiration if result.respond_to?(:expiration)
231
+ unless result.nil?
232
+ result.expiration ||= expiration if result.respond_to?(:expiration)
233
233
  if cache? && !request.ignore_cache_save?
234
- Puppet.info _("Caching %{indirection} for %{request}") % { indirection: self.name, request: request.key }
234
+ Puppet.info _("Caching %{indirection} for %{request}") % { indirection: name, request: request.key }
235
235
  begin
236
236
  cache.save request(:save, key, result, options)
237
237
  rescue => detail
@@ -242,13 +242,11 @@ class Puppet::Indirector::Indirection
242
242
 
243
243
  filtered = result
244
244
  if terminus.respond_to?(:filter)
245
- Puppet::Util::Profiler.profile(_("Filtered result for %{indirection} %{request}") % { indirection: self.name, request: request.key }, [:indirector, :filter, self.name, request.key]) do
246
- begin
247
- filtered = terminus.filter(result)
248
- rescue Puppet::Error => detail
249
- Puppet.log_exception(detail)
250
- raise detail
251
- end
245
+ Puppet::Util::Profiler.profile(_("Filtered result for %{indirection} %{request}") % { indirection: name, request: request.key }, [:indirector, :filter, name, request.key]) do
246
+ filtered = terminus.filter(result)
247
+ rescue Puppet::Error => detail
248
+ Puppet.log_exception(detail)
249
+ raise detail
252
250
  end
253
251
  end
254
252
  filtered
@@ -273,14 +271,14 @@ class Puppet::Indirector::Indirection
273
271
  return nil unless cached
274
272
 
275
273
  if cached.expired?
276
- Puppet.info _("Not using expired %{indirection} for %{request} from cache; expired at %{expiration}") % { indirection: self.name, request: request.key, expiration: cached.expiration }
274
+ Puppet.info _("Not using expired %{indirection} for %{request} from cache; expired at %{expiration}") % { indirection: name, request: request.key, expiration: cached.expiration }
277
275
  return nil
278
276
  end
279
277
 
280
- Puppet.debug { "Using cached #{self.name} for #{request.key}" }
278
+ Puppet.debug { "Using cached #{name} for #{request.key}" }
281
279
  cached
282
280
  rescue => detail
283
- Puppet.log_exception(detail, _("Cached %{indirection} for %{request} failed: %{detail}") % { indirection: self.name, request: request.key, detail: detail })
281
+ Puppet.log_exception(detail, _("Cached %{indirection} for %{request} failed: %{detail}") % { indirection: name, request: request.key, detail: detail })
284
282
  nil
285
283
  end
286
284
 
@@ -311,9 +309,9 @@ class Puppet::Indirector::Indirection
311
309
  result.each do |instance|
312
310
  next unless instance.respond_to? :expiration
313
311
 
314
- instance.expiration ||= self.expiration
312
+ instance.expiration ||= expiration
315
313
  end
316
- return result
314
+ result
317
315
  end
318
316
  end
319
317
 
@@ -323,7 +321,7 @@ class Puppet::Indirector::Indirection
323
321
  request = request(:save, key, instance, options)
324
322
  terminus = prepare(request)
325
323
 
326
- result = terminus.save(request) if !request.ignore_terminus?
324
+ result = terminus.save(request) unless request.ignore_terminus?
327
325
 
328
326
  # If caching is enabled, save our document there
329
327
  cache.save(request) if cache? && !request.ignore_cache_save?
@@ -373,9 +371,9 @@ class Puppet::Indirector::Indirection
373
371
  # Create a new terminus instance.
374
372
  def make_terminus(terminus_class)
375
373
  # Load our terminus class.
376
- klass = Puppet::Indirector::Terminus.terminus_class(self.name, terminus_class)
374
+ klass = Puppet::Indirector::Terminus.terminus_class(name, terminus_class)
377
375
  unless klass
378
- raise ArgumentError, _("Could not find terminus %{terminus_class} for indirection %{indirection}") % { terminus_class: terminus_class, indirection: self.name }
376
+ raise ArgumentError, _("Could not find terminus %{terminus_class} for indirection %{indirection}") % { terminus_class: terminus_class, indirection: name }
379
377
  end
380
378
 
381
379
  klass.new
@@ -16,16 +16,16 @@ class Puppet::Indirector::JSON < Puppet::Indirector::Terminus
16
16
  filename = path(request.key)
17
17
  FileUtils.mkdir_p(File.dirname(filename))
18
18
 
19
- Puppet::FileSystem.replace_file(filename, 0660) { |f| f.print to_json(request.instance).force_encoding(Encoding::BINARY) }
19
+ Puppet::FileSystem.replace_file(filename, 0o660) { |f| f.print to_json(request.instance).force_encoding(Encoding::BINARY) }
20
20
  rescue TypeError => detail
21
- Puppet.log_exception(detail, _("Could not save %{json} %{request}: %{detail}") % { json: self.name, request: request.key, detail: detail })
21
+ Puppet.log_exception(detail, _("Could not save %{json} %{request}: %{detail}") % { json: name, request: request.key, detail: detail })
22
22
  end
23
23
 
24
24
  def destroy(request)
25
25
  Puppet::FileSystem.unlink(path(request.key))
26
26
  rescue => detail
27
27
  unless detail.is_a? Errno::ENOENT
28
- raise Puppet::Error, _("Could not destroy %{json} %{request}: %{detail}") % { json: self.name, request: request.key, detail: detail }, detail.backtrace
28
+ raise Puppet::Error, _("Could not destroy %{json} %{request}: %{detail}") % { json: name, request: request.key, detail: detail }, detail.backtrace
29
29
  end
30
30
 
31
31
  1 # emulate success...
@@ -66,7 +66,7 @@ class Puppet::Indirector::JSON < Puppet::Indirector::Terminus
66
66
  end
67
67
 
68
68
  begin
69
- return from_json(json)
69
+ from_json(json)
70
70
  rescue => detail
71
71
  raise Puppet::Error, _("Could not parse JSON data for %{name} %{key}: %{detail}") % { name: indirection.name, key: key, detail: detail }, detail.backtrace
72
72
  end
@@ -13,7 +13,7 @@ class Puppet::Indirector::Memory < Puppet::Indirector::Terminus
13
13
  end
14
14
 
15
15
  def destroy(request)
16
- raise ArgumentError.new(_("Could not find %{request} to destroy") % { request: request.key }) unless @instances.include?(request.key)
16
+ raise ArgumentError, _("Could not find %{request} to destroy") % { request: request.key } unless @instances.include?(request.key)
17
17
 
18
18
  @instances.delete(request.key)
19
19
  end
@@ -28,7 +28,7 @@ class Puppet::Indirector::Memory < Puppet::Indirector::Terminus
28
28
  end
29
29
 
30
30
  def head(request)
31
- not find(request).nil?
31
+ !find(request).nil?
32
32
  end
33
33
 
34
34
  def save(request)
@@ -9,7 +9,7 @@ require_relative '../../puppet/util'
9
9
  # implementations, since it is ~ 30 times faster
10
10
  class Puppet::Indirector::Msgpack < Puppet::Indirector::Terminus
11
11
  def initialize(*args)
12
- if !Puppet.features.msgpack?
12
+ unless Puppet.features.msgpack?
13
13
  raise _("MessagePack terminus not supported without msgpack library")
14
14
  end
15
15
 
@@ -24,16 +24,16 @@ class Puppet::Indirector::Msgpack < Puppet::Indirector::Terminus
24
24
  filename = path(request.key)
25
25
  FileUtils.mkdir_p(File.dirname(filename))
26
26
 
27
- Puppet::FileSystem.replace_file(filename, 0660) { |f| f.print to_msgpack(request.instance) }
27
+ Puppet::FileSystem.replace_file(filename, 0o660) { |f| f.print to_msgpack(request.instance) }
28
28
  rescue TypeError => detail
29
- Puppet.log_exception(detail, _("Could not save %{name} %{request}: %{detail}") % { name: self.name, request: request.key, detail: detail })
29
+ Puppet.log_exception(detail, _("Could not save %{name} %{request}: %{detail}") % { name: name, request: request.key, detail: detail })
30
30
  end
31
31
 
32
32
  def destroy(request)
33
33
  Puppet::FileSystem.unlink(path(request.key))
34
34
  rescue => detail
35
35
  unless detail.is_a? Errno::ENOENT
36
- raise Puppet::Error, _("Could not destroy %{name} %{request}: %{detail}") % { name: self.name, request: request.key, detail: detail }, detail.backtrace
36
+ raise Puppet::Error, _("Could not destroy %{name} %{request}: %{detail}") % { name: name, request: request.key, detail: detail }, detail.backtrace
37
37
  end
38
38
 
39
39
  1 # emulate success...
@@ -71,7 +71,7 @@ class Puppet::Indirector::Msgpack < Puppet::Indirector::Terminus
71
71
  end
72
72
 
73
73
  begin
74
- return from_msgpack(msgpack)
74
+ from_msgpack(msgpack)
75
75
  rescue => detail
76
76
  raise Puppet::Error, _("Could not parse MessagePack data for %{indirection} %{key}: %{detail}") % { indirection: indirection.name, key: key, detail: detail }, detail.backtrace
77
77
  end
@@ -4,5 +4,5 @@ require_relative '../../../puppet/indirector/store_configs'
4
4
  require_relative '../../../puppet/node'
5
5
 
6
6
  class Puppet::Node::StoreConfigs < Puppet::Indirector::StoreConfigs
7
- desc %q{Part of the "storeconfigs" feature. Should not be directly set by end users.}
7
+ desc 'Part of the "storeconfigs" feature. Should not be directly set by end users.'
8
8
  end
@@ -5,6 +5,6 @@ require_relative '../../puppet/indirector/terminus'
5
5
  # A none terminus type, meant to always return nil
6
6
  class Puppet::Indirector::None < Puppet::Indirector::Terminus
7
7
  def find(request)
8
- return nil
8
+ nil
9
9
  end
10
10
  end
@@ -30,7 +30,7 @@ class Puppet::Transaction::Report::Json < Puppet::Indirector::JSON
30
30
  fh.print JSON.dump(request.instance)
31
31
  end
32
32
  rescue TypeError => detail
33
- Puppet.err _("Could not save %{indirection} %{request}: %{detail}") % { indirection: self.name, request: request.key, detail: detail }
33
+ Puppet.err _("Could not save %{indirection} %{request}: %{detail}") % { indirection: name, request: request.key, detail: detail }
34
34
  end
35
35
  end
36
36
  end
@@ -30,7 +30,7 @@ class Puppet::Transaction::Report::Yaml < Puppet::Indirector::Yaml
30
30
  fh.print YAML.dump(request.instance)
31
31
  end
32
32
  rescue TypeError => detail
33
- Puppet.err _("Could not save %{indirection} %{request}: %{detail}") % { indirection: self.name, request: request.key, detail: detail }
33
+ Puppet.err _("Could not save %{indirection} %{request}: %{detail}") % { indirection: name, request: request.key, detail: detail }
34
34
  end
35
35
  end
36
36
  end
@@ -80,7 +80,7 @@ class Puppet::Indirector::Request
80
80
  # info out in the REST class, but it seemed bad design for the REST
81
81
  # class to rewrite the key.
82
82
 
83
- if key.to_s =~ /^\w+:\// and not Puppet::Util.absolute_path?(key.to_s) # it's a URI
83
+ if key.to_s =~ %r{^\w+:/} and !Puppet::Util.absolute_path?(key.to_s) # it's a URI
84
84
  set_uri_key(key)
85
85
  else
86
86
  @key = key
@@ -140,11 +140,11 @@ class Puppet::Indirector::Request
140
140
  end
141
141
 
142
142
  def description
143
- return(uri ? uri : "/#{indirection_name}/#{key}")
143
+ uri || "/#{indirection_name}/#{key}"
144
144
  end
145
145
 
146
146
  def remote?
147
- self.node or self.ip
147
+ node or ip
148
148
  end
149
149
 
150
150
  private
@@ -192,6 +192,6 @@ class Puppet::Indirector::Request
192
192
  @protocol = uri.scheme
193
193
  end
194
194
 
195
- @key = Puppet::Util.uri_unescape(uri.path.sub(/^\//, ''))
195
+ @key = Puppet::Util.uri_unescape(uri.path.sub(%r{^/}, ''))
196
196
  end
197
197
  end
@@ -14,7 +14,7 @@ class Puppet::Resource::Ral < Puppet::Indirector::Code
14
14
  def find(request)
15
15
  # find by name
16
16
  res = type(request).instances.find { |o| o.name == resource_name(request) }
17
- res ||= type(request).new(:name => resource_name(request), :audit => type(request).properties.collect { |s| s.name })
17
+ res ||= type(request).new(:name => resource_name(request), :audit => type(request).properties.collect(&:name))
18
18
 
19
19
  res.to_resource
20
20
  end
@@ -23,9 +23,7 @@ class Puppet::Resource::Ral < Puppet::Indirector::Code
23
23
  conditions = request.options.dup
24
24
  conditions[:name] = resource_name(request) if resource_name(request)
25
25
 
26
- type(request).instances.map do |res|
27
- res.to_resource
28
- end.find_all do |res|
26
+ type(request).instances.map(&:to_resource).find_all do |res|
29
27
  conditions.all? do |property, value|
30
28
  # even though `res` is an instance of Puppet::Resource, calling
31
29
  # `res[:name]` on it returns nil, and for some reason it is necessary
@@ -6,7 +6,7 @@ require_relative '../../../puppet/indirector/resource/validator'
6
6
  class Puppet::Resource::StoreConfigs < Puppet::Indirector::StoreConfigs
7
7
  include Puppet::Resource::Validator
8
8
 
9
- desc %q{Part of the "storeconfigs" feature. Should not be directly set by end users.}
9
+ desc 'Part of the "storeconfigs" feature. Should not be directly set by end users.'
10
10
 
11
11
  def allow_remote_requests?
12
12
  false
@@ -24,7 +24,7 @@ class Puppet::Indirector::Terminus
24
24
 
25
25
  # Convert a constant to a short name.
26
26
  def const2name(const)
27
- const.sub(/^[A-Z]/) { |i| i.downcase }.gsub(/[A-Z]/) { |i| "_#{i.downcase}" }.intern
27
+ const.sub(/^[A-Z]/, &:downcase).gsub(/[A-Z]/) { |i| "_#{i.downcase}" }.intern
28
28
  end
29
29
 
30
30
  # Look up the indirection if we were only provided a name.
@@ -57,7 +57,7 @@ class Puppet::Indirector::Terminus
57
57
  names = longname.split("::")
58
58
 
59
59
  # Convert everything to a lower-case symbol, converting camelcase to underscore word separation.
60
- name = names.pop.sub(/^[A-Z]/) { |i| i.downcase }.gsub(/[A-Z]/) { |i| "_#{i.downcase}" }.intern
60
+ name = names.pop.sub(/^[A-Z]/, &:downcase).gsub(/[A-Z]/) { |i| "_#{i.downcase}" }.intern
61
61
 
62
62
  subclass.name = name
63
63
 
@@ -75,7 +75,7 @@ class Puppet::Indirector::Terminus
75
75
  # This subclass is specifically associated with an indirection.
76
76
  raise("Invalid name #{longname}") unless names.length > 0
77
77
 
78
- processed_name = names.pop.sub(/^[A-Z]/) { |i| i.downcase }.gsub(/[A-Z]/) { |i| "_#{i.downcase}" }
78
+ processed_name = names.pop.sub(/^[A-Z]/, &:downcase).gsub(/[A-Z]/) { |i| "_#{i.downcase}" }
79
79
 
80
80
  if processed_name.empty?
81
81
  raise Puppet::DevError, _("Could not discern indirection model from class constant")
@@ -101,7 +101,7 @@ class Puppet::Indirector::Terminus
101
101
 
102
102
  # Convert a short name to a constant.
103
103
  def name2const(name)
104
- name.to_s.capitalize.sub(/_(.)/) { |_i| $1.upcase }
104
+ name.to_s.capitalize.sub(/_(.)/) { |_i| ::Regexp.last_match(1).upcase }
105
105
  end
106
106
 
107
107
  # Register a class, probably autoloaded.
@@ -11,7 +11,7 @@ class Puppet::Indirector::Yaml < Puppet::Indirector::Terminus
11
11
  return nil unless Puppet::FileSystem.exist?(file)
12
12
 
13
13
  begin
14
- return load_file(file)
14
+ load_file(file)
15
15
  rescue Puppet::Util::Yaml::YamlLoadError => detail
16
16
  raise Puppet::Error, _("Could not parse YAML data for %{indirection} %{request}: %{detail}") % { indirection: indirection.name, request: request.key, detail: detail }, detail.backtrace
17
17
  end
@@ -19,7 +19,7 @@ class Puppet::Indirector::Yaml < Puppet::Indirector::Terminus
19
19
 
20
20
  # Convert our object to YAML and store it to the disk.
21
21
  def save(request)
22
- raise ArgumentError.new(_("You can only save objects that respond to :name")) unless request.instance.respond_to?(:name)
22
+ raise ArgumentError, _("You can only save objects that respond to :name") unless request.instance.respond_to?(:name)
23
23
 
24
24
  file = path(request.key)
25
25
 
@@ -31,7 +31,7 @@ class Puppet::Indirector::Yaml < Puppet::Indirector::Terminus
31
31
  begin
32
32
  Puppet::Util::Yaml.dump(request.instance, file)
33
33
  rescue TypeError => detail
34
- Puppet.err _("Could not save %{indirection} %{request}: %{detail}") % { indirection: self.name, request: request.key, detail: detail }
34
+ Puppet.err _("Could not save %{indirection} %{request}: %{detail}") % { indirection: name, request: request.key, detail: detail }
35
35
  end
36
36
  end
37
37
 
@@ -74,7 +74,7 @@ class Puppet::InfoService::ClassInformationService
74
74
  def extract_type(structure, p)
75
75
  return structure if p.type_expr.nil?
76
76
 
77
- structure[:type] = typeexpr_to_string(p.type_expr)
77
+ structure[:type] = typeexpr_to_string(p.name, p.type_expr)
78
78
  structure
79
79
  end
80
80
 
@@ -88,13 +88,10 @@ class Puppet::InfoService::ClassInformationService
88
88
  structure
89
89
  end
90
90
 
91
- def typeexpr_to_string(type_expr)
92
- begin
93
- type_parser.interpret_any(type_expr, nil).to_s
94
- rescue Puppet::ParseError
95
- # type is to complex - contains expressions that are not literal
96
- nil
97
- end
91
+ def typeexpr_to_string(name, type_expr)
92
+ type_parser.interpret_any(type_expr, nil).to_s
93
+ rescue Puppet::ParseError => e
94
+ raise Puppet::Error, "The parameter '$#{name}' is invalid: #{e.message}", e.backtrace
98
95
  end
99
96
 
100
97
  def value_as_literal(value_expr)
@@ -10,13 +10,12 @@ class Puppet::InfoService::TaskInformationService
10
10
  env.modules.map do |mod|
11
11
  mod.tasks.map do |task|
12
12
  # If any task is malformed continue to list other tasks in module
13
- begin
14
- task.validate
15
- { :module => { :name => task.module.name }, :name => task.name, :metadata => task.metadata }
16
- rescue Puppet::Module::Task::Error => err
17
- Puppet.log_exception(err)
18
- nil
19
- end
13
+
14
+ task.validate
15
+ { :module => { :name => task.module.name }, :name => task.name, :metadata => task.metadata }
16
+ rescue Puppet::Module::Task::Error => err
17
+ Puppet.log_exception(err)
18
+ nil
20
19
  end
21
20
  end.flatten.compact
22
21
  end