puppet 8.5.1-x64-mingw32 → 8.6.0-x64-mingw32

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 (542) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +23 -20
  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/relationship_operator.rb +2 -2
  216. data/lib/puppet/pops/evaluator/runtime3_converter.rb +3 -3
  217. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  218. data/lib/puppet/pops/functions/dispatcher.rb +3 -3
  219. data/lib/puppet/pops/functions/function.rb +14 -16
  220. data/lib/puppet/pops/issue_reporter.rb +2 -2
  221. data/lib/puppet/pops/label_provider.rb +2 -2
  222. data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
  223. data/lib/puppet/pops/loader/loader.rb +4 -4
  224. data/lib/puppet/pops/loader/loader_paths.rb +3 -3
  225. data/lib/puppet/pops/loader/module_loaders.rb +11 -11
  226. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
  227. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  228. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +5 -1
  229. data/lib/puppet/pops/loader/static_loader.rb +3 -3
  230. data/lib/puppet/pops/loaders.rb +3 -3
  231. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  232. data/lib/puppet/pops/lookup/explainer.rb +2 -2
  233. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  234. data/lib/puppet/pops/lookup/hiera_config.rb +15 -11
  235. data/lib/puppet/pops/lookup/interpolation.rb +3 -3
  236. data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
  237. data/lib/puppet/pops/lookup/location_resolver.rb +1 -1
  238. data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -7
  239. data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
  240. data/lib/puppet/pops/merge_strategy.rb +6 -6
  241. data/lib/puppet/pops/migration/migration_checker.rb +1 -1
  242. data/lib/puppet/pops/model/ast_transformer.rb +9 -11
  243. data/lib/puppet/pops/model/factory.rb +4 -5
  244. data/lib/puppet/pops/parser/epp_parser.rb +2 -2
  245. data/lib/puppet/pops/parser/epp_support.rb +1 -1
  246. data/lib/puppet/pops/parser/evaluating_parser.rb +2 -2
  247. data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
  248. data/lib/puppet/pops/parser/interpolation_support.rb +3 -3
  249. data/lib/puppet/pops/parser/lexer2.rb +20 -12
  250. data/lib/puppet/pops/parser/lexer_support.rb +1 -1
  251. data/lib/puppet/pops/parser/locator.rb +4 -4
  252. data/lib/puppet/pops/parser/parser_support.rb +12 -14
  253. data/lib/puppet/pops/parser/pn_parser.rb +3 -3
  254. data/lib/puppet/pops/parser/slurp_support.rb +8 -8
  255. data/lib/puppet/pops/patterns.rb +12 -12
  256. data/lib/puppet/pops/pcore.rb +1 -1
  257. data/lib/puppet/pops/pn.rb +2 -2
  258. data/lib/puppet/pops/puppet_stack.rb +1 -1
  259. data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
  260. data/lib/puppet/pops/serialization/abstract_reader.rb +2 -2
  261. data/lib/puppet/pops/serialization/abstract_writer.rb +3 -3
  262. data/lib/puppet/pops/time/timestamp.rb +1 -1
  263. data/lib/puppet/pops/types/class_loader.rb +4 -6
  264. data/lib/puppet/pops/types/iterable.rb +1 -1
  265. data/lib/puppet/pops/types/p_binary_type.rb +1 -1
  266. data/lib/puppet/pops/types/p_init_type.rb +1 -1
  267. data/lib/puppet/pops/types/p_object_type.rb +5 -5
  268. data/lib/puppet/pops/types/p_object_type_extension.rb +4 -6
  269. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +1 -1
  270. data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
  271. data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
  272. data/lib/puppet/pops/types/p_type_set_type.rb +10 -10
  273. data/lib/puppet/pops/types/p_uri_type.rb +4 -4
  274. data/lib/puppet/pops/types/recursion_guard.rb +4 -4
  275. data/lib/puppet/pops/types/ruby_generator.rb +2 -2
  276. data/lib/puppet/pops/types/string_converter.rb +12 -8
  277. data/lib/puppet/pops/types/tree_iterators.rb +4 -6
  278. data/lib/puppet/pops/types/type_calculator.rb +10 -10
  279. data/lib/puppet/pops/types/type_factory.rb +7 -3
  280. data/lib/puppet/pops/types/type_formatter.rb +22 -24
  281. data/lib/puppet/pops/types/type_mismatch_describer.rb +24 -24
  282. data/lib/puppet/pops/types/types.rb +28 -24
  283. data/lib/puppet/pops/utils.rb +38 -42
  284. data/lib/puppet/pops/validation/checker4_0.rb +10 -10
  285. data/lib/puppet/pops/validation/tasks_checker.rb +1 -1
  286. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -1
  287. data/lib/puppet/pops/validation.rb +4 -4
  288. data/lib/puppet/pops/visitor.rb +2 -2
  289. data/lib/puppet/property/ensure.rb +12 -14
  290. data/lib/puppet/property/keyvalue.rb +4 -4
  291. data/lib/puppet/property/list.rb +4 -4
  292. data/lib/puppet/property/ordered_list.rb +1 -1
  293. data/lib/puppet/property.rb +31 -33
  294. data/lib/puppet/provider/exec.rb +2 -2
  295. data/lib/puppet/provider/file/posix.rb +19 -17
  296. data/lib/puppet/provider/file/windows.rb +13 -19
  297. data/lib/puppet/provider/group/directoryservice.rb +3 -2
  298. data/lib/puppet/provider/group/groupadd.rb +4 -4
  299. data/lib/puppet/provider/group/windows_adsi.rb +2 -2
  300. data/lib/puppet/provider/nameservice/directoryservice.rb +29 -29
  301. data/lib/puppet/provider/nameservice/objectadd.rb +2 -4
  302. data/lib/puppet/provider/nameservice/pw.rb +1 -2
  303. data/lib/puppet/provider/nameservice.rb +8 -8
  304. data/lib/puppet/provider/package/aix.rb +19 -19
  305. data/lib/puppet/provider/package/appdmg.rb +2 -2
  306. data/lib/puppet/provider/package/apple.rb +1 -1
  307. data/lib/puppet/provider/package/apt.rb +18 -18
  308. data/lib/puppet/provider/package/aptitude.rb +1 -3
  309. data/lib/puppet/provider/package/aptrpm.rb +9 -9
  310. data/lib/puppet/provider/package/blastwave.rb +10 -14
  311. data/lib/puppet/provider/package/dnfmodule.rb +3 -3
  312. data/lib/puppet/provider/package/dpkg.rb +11 -13
  313. data/lib/puppet/provider/package/fink.rb +14 -14
  314. data/lib/puppet/provider/package/freebsd.rb +1 -1
  315. data/lib/puppet/provider/package/gem.rb +12 -14
  316. data/lib/puppet/provider/package/macports.rb +2 -2
  317. data/lib/puppet/provider/package/nim.rb +10 -10
  318. data/lib/puppet/provider/package/openbsd.rb +22 -22
  319. data/lib/puppet/provider/package/opkg.rb +6 -6
  320. data/lib/puppet/provider/package/pacman.rb +35 -29
  321. data/lib/puppet/provider/package/pip.rb +25 -24
  322. data/lib/puppet/provider/package/pkg.rb +15 -15
  323. data/lib/puppet/provider/package/pkgdmg.rb +10 -10
  324. data/lib/puppet/provider/package/pkgin.rb +2 -2
  325. data/lib/puppet/provider/package/pkgng.rb +5 -5
  326. data/lib/puppet/provider/package/pkgutil.rb +17 -21
  327. data/lib/puppet/provider/package/portage.rb +59 -61
  328. data/lib/puppet/provider/package/ports.rb +12 -11
  329. data/lib/puppet/provider/package/portupgrade.rb +35 -35
  330. data/lib/puppet/provider/package/puppetserver_gem.rb +10 -9
  331. data/lib/puppet/provider/package/rpm.rb +26 -26
  332. data/lib/puppet/provider/package/rug.rb +7 -9
  333. data/lib/puppet/provider/package/sun.rb +4 -4
  334. data/lib/puppet/provider/package/up2date.rb +5 -7
  335. data/lib/puppet/provider/package/urpmi.rb +6 -6
  336. data/lib/puppet/provider/package/windows/exe_package.rb +7 -7
  337. data/lib/puppet/provider/package/windows/msi_package.rb +3 -3
  338. data/lib/puppet/provider/package/windows/package.rb +2 -2
  339. data/lib/puppet/provider/package/windows.rb +3 -5
  340. data/lib/puppet/provider/package/yum.rb +33 -37
  341. data/lib/puppet/provider/package/zypper.rb +12 -14
  342. data/lib/puppet/provider/package.rb +1 -1
  343. data/lib/puppet/provider/package_targetable.rb +1 -1
  344. data/lib/puppet/provider/parsedfile.rb +9 -9
  345. data/lib/puppet/provider/service/base.rb +16 -21
  346. data/lib/puppet/provider/service/bsd.rb +4 -4
  347. data/lib/puppet/provider/service/daemontools.rb +31 -31
  348. data/lib/puppet/provider/service/debian.rb +6 -6
  349. data/lib/puppet/provider/service/freebsd.rb +36 -36
  350. data/lib/puppet/provider/service/gentoo.rb +6 -6
  351. data/lib/puppet/provider/service/init.rb +19 -19
  352. data/lib/puppet/provider/service/launchd.rb +22 -22
  353. data/lib/puppet/provider/service/openbsd.rb +10 -10
  354. data/lib/puppet/provider/service/openrc.rb +1 -1
  355. data/lib/puppet/provider/service/openwrt.rb +3 -3
  356. data/lib/puppet/provider/service/rcng.rb +3 -3
  357. data/lib/puppet/provider/service/redhat.rb +4 -4
  358. data/lib/puppet/provider/service/runit.rb +6 -6
  359. data/lib/puppet/provider/service/service.rb +5 -7
  360. data/lib/puppet/provider/service/smf.rb +28 -27
  361. data/lib/puppet/provider/service/src.rb +7 -7
  362. data/lib/puppet/provider/service/systemd.rb +31 -37
  363. data/lib/puppet/provider/service/upstart.rb +17 -17
  364. data/lib/puppet/provider/service/windows.rb +7 -7
  365. data/lib/puppet/provider/user/aix.rb +4 -2
  366. data/lib/puppet/provider/user/directoryservice.rb +34 -36
  367. data/lib/puppet/provider/user/hpux.rb +10 -14
  368. data/lib/puppet/provider/user/pw.rb +1 -1
  369. data/lib/puppet/provider/user/user_role_add.rb +16 -18
  370. data/lib/puppet/provider/user/useradd.rb +7 -7
  371. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  372. data/lib/puppet/provider.rb +8 -8
  373. data/lib/puppet/reference/indirection.rb +3 -0
  374. data/lib/puppet/reference/metaparameter.rb +1 -1
  375. data/lib/puppet/reference/providers.rb +3 -3
  376. data/lib/puppet/reference/type.rb +1 -1
  377. data/lib/puppet/relationship.rb +4 -5
  378. data/lib/puppet/reports/http.rb +1 -1
  379. data/lib/puppet/reports/log.rb +2 -2
  380. data/lib/puppet/reports/store.rb +4 -4
  381. data/lib/puppet/reports.rb +2 -2
  382. data/lib/puppet/resource/catalog.rb +16 -16
  383. data/lib/puppet/resource/status.rb +3 -3
  384. data/lib/puppet/resource/type.rb +8 -8
  385. data/lib/puppet/resource/type_collection.rb +1 -1
  386. data/lib/puppet/resource.rb +41 -41
  387. data/lib/puppet/scheduler/scheduler.rb +1 -1
  388. data/lib/puppet/settings/alias_setting.rb +3 -5
  389. data/lib/puppet/settings/base_setting.rb +11 -11
  390. data/lib/puppet/settings/boolean_setting.rb +2 -2
  391. data/lib/puppet/settings/config_file.rb +5 -4
  392. data/lib/puppet/settings/duration_setting.rb +2 -2
  393. data/lib/puppet/settings/environment_conf.rb +3 -3
  394. data/lib/puppet/settings/file_or_directory_setting.rb +2 -2
  395. data/lib/puppet/settings/file_setting.rb +11 -11
  396. data/lib/puppet/settings/ini_file.rb +3 -3
  397. data/lib/puppet/settings/port_setting.rb +1 -1
  398. data/lib/puppet/settings/priority_setting.rb +2 -2
  399. data/lib/puppet/settings/ttl_setting.rb +2 -2
  400. data/lib/puppet/settings/value_translator.rb +8 -8
  401. data/lib/puppet/settings.rb +65 -70
  402. data/lib/puppet/ssl/base.rb +2 -4
  403. data/lib/puppet/ssl/certificate_request.rb +18 -22
  404. data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
  405. data/lib/puppet/ssl/oids.rb +2 -2
  406. data/lib/puppet/ssl/openssl_loader.rb +4 -4
  407. data/lib/puppet/syntax_checkers/base64.rb +3 -3
  408. data/lib/puppet/syntax_checkers/epp.rb +3 -3
  409. data/lib/puppet/syntax_checkers/json.rb +3 -3
  410. data/lib/puppet/syntax_checkers/pp.rb +3 -3
  411. data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
  412. data/lib/puppet/transaction/event.rb +2 -2
  413. data/lib/puppet/transaction/event_manager.rb +5 -5
  414. data/lib/puppet/transaction/persistence.rb +12 -14
  415. data/lib/puppet/transaction/report.rb +4 -4
  416. data/lib/puppet/transaction/resource_harness.rb +2 -2
  417. data/lib/puppet/transaction.rb +14 -18
  418. data/lib/puppet/type/component.rb +3 -3
  419. data/lib/puppet/type/exec.rb +43 -45
  420. data/lib/puppet/type/file/checksum_value.rb +1 -1
  421. data/lib/puppet/type/file/content.rb +6 -6
  422. data/lib/puppet/type/file/ctime.rb +2 -2
  423. data/lib/puppet/type/file/data_sync.rb +3 -3
  424. data/lib/puppet/type/file/ensure.rb +16 -15
  425. data/lib/puppet/type/file/mode.rb +9 -9
  426. data/lib/puppet/type/file/mtime.rb +2 -2
  427. data/lib/puppet/type/file/selcontext.rb +14 -14
  428. data/lib/puppet/type/file/source.rb +19 -21
  429. data/lib/puppet/type/file/target.rb +11 -11
  430. data/lib/puppet/type/file.rb +21 -21
  431. data/lib/puppet/type/filebucket.rb +3 -3
  432. data/lib/puppet/type/group.rb +3 -3
  433. data/lib/puppet/type/notify.rb +2 -2
  434. data/lib/puppet/type/package.rb +4 -4
  435. data/lib/puppet/type/resources.rb +6 -6
  436. data/lib/puppet/type/schedule.rb +9 -9
  437. data/lib/puppet/type/service.rb +6 -8
  438. data/lib/puppet/type/tidy.rb +22 -24
  439. data/lib/puppet/type/user.rb +13 -13
  440. data/lib/puppet/type.rb +76 -88
  441. data/lib/puppet/util/at_fork/solaris.rb +33 -37
  442. data/lib/puppet/util/autoload.rb +2 -2
  443. data/lib/puppet/util/backups.rb +9 -9
  444. data/lib/puppet/util/character_encoding.rb +7 -6
  445. data/lib/puppet/util/checksums.rb +2 -2
  446. data/lib/puppet/util/classgen.rb +8 -8
  447. data/lib/puppet/util/colors.rb +1 -1
  448. data/lib/puppet/util/command_line/puppet_option_parser.rb +1 -1
  449. data/lib/puppet/util/command_line/trollop.rb +42 -46
  450. data/lib/puppet/util/command_line.rb +2 -2
  451. data/lib/puppet/util/constant_inflector.rb +2 -2
  452. data/lib/puppet/util/diff.rb +19 -21
  453. data/lib/puppet/util/docs.rb +2 -2
  454. data/lib/puppet/util/errors.rb +9 -9
  455. data/lib/puppet/util/execution.rb +32 -9
  456. data/lib/puppet/util/feature.rb +1 -1
  457. data/lib/puppet/util/fileparsing.rb +12 -16
  458. data/lib/puppet/util/filetype.rb +36 -40
  459. data/lib/puppet/util/inifile.rb +6 -12
  460. data/lib/puppet/util/ldap/connection.rb +1 -1
  461. data/lib/puppet/util/ldap/manager.rb +10 -12
  462. data/lib/puppet/util/lockfile.rb +6 -8
  463. data/lib/puppet/util/log/destination.rb +2 -2
  464. data/lib/puppet/util/log/destinations.rb +4 -4
  465. data/lib/puppet/util/log.rb +12 -9
  466. data/lib/puppet/util/logging.rb +11 -11
  467. data/lib/puppet/util/metric.rb +3 -3
  468. data/lib/puppet/util/monkey_patches.rb +5 -7
  469. data/lib/puppet/util/network_device/config.rb +3 -3
  470. data/lib/puppet/util/package/version/debian.rb +27 -28
  471. data/lib/puppet/util/package/version/pip.rb +5 -5
  472. data/lib/puppet/util/package/version/range/eq.rb +1 -1
  473. data/lib/puppet/util/package/version/rpm.rb +1 -1
  474. data/lib/puppet/util/package.rb +2 -2
  475. data/lib/puppet/util/pidlock.rb +2 -2
  476. data/lib/puppet/util/platform.rb +1 -1
  477. data/lib/puppet/util/plist.rb +8 -10
  478. data/lib/puppet/util/posix.rb +17 -17
  479. data/lib/puppet/util/profiler/aggregate.rb +1 -1
  480. data/lib/puppet/util/provider_features.rb +3 -3
  481. data/lib/puppet/util/rdoc/code_objects.rb +3 -3
  482. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +63 -64
  483. data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +23 -23
  484. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +12 -12
  485. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  486. data/lib/puppet/util/rdoc/parser.rb +1 -1
  487. data/lib/puppet/util/reference.rb +13 -9
  488. data/lib/puppet/util/retry_action.rb +1 -1
  489. data/lib/puppet/util/rpm_compare.rb +17 -18
  490. data/lib/puppet/util/rubygems.rb +1 -1
  491. data/lib/puppet/util/selinux.rb +7 -7
  492. data/lib/puppet/util/storage.rb +10 -12
  493. data/lib/puppet/util/suidmanager.rb +18 -19
  494. data/lib/puppet/util/symbolic_file_mode.rb +71 -75
  495. data/lib/puppet/util/tag_set.rb +2 -2
  496. data/lib/puppet/util/tagging.rb +8 -10
  497. data/lib/puppet/util/terminal.rb +4 -4
  498. data/lib/puppet/util/user_attr.rb +7 -7
  499. data/lib/puppet/util/watcher.rb +3 -5
  500. data/lib/puppet/util/windows/access_control_list.rb +1 -1
  501. data/lib/puppet/util/windows/adsi.rb +42 -42
  502. data/lib/puppet/util/windows/daemon.rb +64 -68
  503. data/lib/puppet/util/windows/error.rb +2 -2
  504. data/lib/puppet/util/windows/file.rb +18 -25
  505. data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
  506. data/lib/puppet/util/windows/principal.rb +8 -8
  507. data/lib/puppet/util/windows/process.rb +16 -28
  508. data/lib/puppet/util/windows/registry.rb +16 -15
  509. data/lib/puppet/util/windows/root_certs.rb +2 -2
  510. data/lib/puppet/util/windows/security.rb +31 -31
  511. data/lib/puppet/util/windows/service.rb +11 -11
  512. data/lib/puppet/util/windows/sid.rb +8 -8
  513. data/lib/puppet/util/windows/user.rb +18 -20
  514. data/lib/puppet/util/yaml.rb +1 -1
  515. data/lib/puppet/util.rb +55 -46
  516. data/lib/puppet/version.rb +2 -2
  517. data/lib/puppet/x509/pem_store.rb +1 -1
  518. data/lib/puppet.rb +3 -3
  519. data/man/man5/puppet.conf.5 +10 -2
  520. data/man/man8/puppet-agent.8 +1 -1
  521. data/man/man8/puppet-apply.8 +1 -1
  522. data/man/man8/puppet-catalog.8 +1 -1
  523. data/man/man8/puppet-config.8 +1 -1
  524. data/man/man8/puppet-describe.8 +1 -1
  525. data/man/man8/puppet-device.8 +1 -1
  526. data/man/man8/puppet-doc.8 +1 -1
  527. data/man/man8/puppet-epp.8 +1 -1
  528. data/man/man8/puppet-facts.8 +1 -1
  529. data/man/man8/puppet-filebucket.8 +1 -1
  530. data/man/man8/puppet-generate.8 +1 -1
  531. data/man/man8/puppet-help.8 +1 -1
  532. data/man/man8/puppet-lookup.8 +1 -1
  533. data/man/man8/puppet-module.8 +1 -1
  534. data/man/man8/puppet-node.8 +1 -1
  535. data/man/man8/puppet-parser.8 +1 -1
  536. data/man/man8/puppet-plugin.8 +1 -1
  537. data/man/man8/puppet-report.8 +1 -1
  538. data/man/man8/puppet-resource.8 +5 -1
  539. data/man/man8/puppet-script.8 +1 -1
  540. data/man/man8/puppet-ssl.8 +1 -1
  541. data/man/man8/puppet.8 +2 -2
  542. metadata +2 -2
@@ -11,7 +11,7 @@ Puppet::Type.type(:group).provide :groupadd, :parent => Puppet::Provider::NameSe
11
11
 
12
12
  commands :add => "groupadd", :delete => "groupdel", :modify => "groupmod"
13
13
 
14
- has_feature :system_groups unless %w{HP-UX Solaris}.include? Puppet.runtime[:facter].value('os.name')
14
+ has_feature :system_groups unless %w[HP-UX Solaris].include? Puppet.runtime[:facter].value('os.name')
15
15
 
16
16
  verify :gid, _("GID must be an integer") do |value|
17
17
  value.is_a? Integer
@@ -47,11 +47,11 @@ Puppet::Type.type(:group).provide :groupadd, :parent => Puppet::Provider::NameSe
47
47
  # because by default duplicates are allowed. This check is
48
48
  # to ensure consistent behaviour of the useradd provider when
49
49
  # using both useradd and luseradd
50
- if not @resource.allowdupe? and @resource.forcelocal?
50
+ if !@resource.allowdupe? and @resource.forcelocal?
51
51
  if @resource.should(:gid) and findgroup(:gid, @resource.should(:gid).to_s)
52
52
  raise(Puppet::Error, _("GID %{resource} already exists, use allowdupe to force group creation") % { resource: @resource.should(:gid).to_s })
53
53
  end
54
- elsif @resource.allowdupe? and not @resource.forcelocal?
54
+ elsif @resource.allowdupe? and !@resource.forcelocal?
55
55
  return ["-o"]
56
56
  end
57
57
  []
@@ -144,7 +144,7 @@ Puppet::Type.type(:group).provide :groupadd, :parent => Puppet::Provider::NameSe
144
144
 
145
145
  unless @groups
146
146
  unless Puppet::FileSystem.exist?(group_file)
147
- raise Puppet::Error.new("Forcelocal set for group resource '#{resource[:name]}', but #{group_file} does not exist")
147
+ raise Puppet::Error, "Forcelocal set for group resource '#{resource[:name]}', but #{group_file} does not exist"
148
148
  end
149
149
 
150
150
  @groups = []
@@ -44,7 +44,7 @@ Puppet::Type.type(:group).provide :windows_adsi do
44
44
 
45
45
  users = users.map do |user_name|
46
46
  sid = Puppet::Util::Windows::SID.name_to_principal(user_name)
47
- if !sid
47
+ unless sid
48
48
  resource.debug("#{user_name} (unresolvable to SID)")
49
49
  next user_name
50
50
  end
@@ -57,7 +57,7 @@ Puppet::Type.type(:group).provide :windows_adsi do
57
57
  resource.debug("#{sid.domain}\\#{account} (#{sid.sid})")
58
58
  sid.domain ? "#{sid.domain}\\#{account}" : account
59
59
  end
60
- return users.join(',')
60
+ users.join(',')
61
61
  end
62
62
 
63
63
  def member_valid?(user_name)
@@ -79,7 +79,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
79
79
  # Create a new instance of this Puppet::Type for each object present
80
80
  # on the system.
81
81
  list_all_present.collect do |name_string|
82
- self.new(single_report(name_string, *type_property_array))
82
+ new(single_report(name_string, *type_property_array))
83
83
  end
84
84
  end
85
85
 
@@ -119,7 +119,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
119
119
  attribute_hash = {}
120
120
  input_hash.each_key do |key|
121
121
  ds_attribute = key.sub("dsAttrTypeStandard:", "")
122
- next unless (ds_to_ns_attribute_map.keys.include?(ds_attribute) and type_properties.include? ds_to_ns_attribute_map[ds_attribute])
122
+ next unless ds_to_ns_attribute_map.keys.include?(ds_attribute) and type_properties.include? ds_to_ns_attribute_map[ds_attribute]
123
123
 
124
124
  ds_value = input_hash[key]
125
125
  case ds_to_ns_attribute_map[ds_attribute]
@@ -144,7 +144,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
144
144
  # stored in the user record. It is stored at a path that involves the
145
145
  # UUID of the user record for non-Mobile local accounts.
146
146
  # Mobile Accounts are out of scope for this provider for now
147
- attribute_hash[:password] = self.get_password(attribute_hash[:guid], attribute_hash[:name]) if @resource_type.validproperties.include?(:password) and Puppet.features.root?
147
+ attribute_hash[:password] = get_password(attribute_hash[:guid], attribute_hash[:name]) if @resource_type.validproperties.include?(:password) and Puppet.features.root?
148
148
  attribute_hash
149
149
  end
150
150
 
@@ -168,9 +168,9 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
168
168
  fail(_("Could not get report. command execution failed."))
169
169
  end
170
170
 
171
- dscl_plist = self.parse_dscl_plist_data(dscl_output)
171
+ dscl_plist = parse_dscl_plist_data(dscl_output)
172
172
 
173
- self.generate_attribute_hash(dscl_plist, *type_properties)
173
+ generate_attribute_hash(dscl_plist, *type_properties)
174
174
  end
175
175
 
176
176
  def self.get_exec_preamble(ds_action, resource_name = nil)
@@ -264,8 +264,8 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
264
264
  # string. The password_hash provided as a resource attribute is a
265
265
  # hex value. We need to convert the Base64 encoded string to a
266
266
  # hex value and provide it back to Puppet.
267
- password_hash = converted_hash_plist['SALTED-SHA512'].unpack("H*")[0]
268
- password_hash
267
+ converted_hash_plist['SALTED-SHA512'].unpack1("H*")
268
+
269
269
  end
270
270
  end
271
271
  end
@@ -325,7 +325,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
325
325
  else
326
326
  value = autogen(name)
327
327
  if value
328
- self.send(name.to_s + "=", value)
328
+ send(name.to_s + "=", value)
329
329
  else
330
330
  next
331
331
  end
@@ -361,7 +361,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
361
361
  # If we are meant to be authoritative for the group membership
362
362
  # then remove all existing members who haven't been specified
363
363
  # in the manifest.
364
- remove_unwanted_members(current_members, value) if @resource[:auth_membership] and not current_members.nil?
364
+ remove_unwanted_members(current_members, value) if @resource[:auth_membership] and !current_members.nil?
365
365
 
366
366
  # if they're not a member, make them one.
367
367
  add_members(current_members, value)
@@ -395,7 +395,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
395
395
  # requiring people install a UUID library that doesn't come with the system.
396
396
  # This should be revisited if Puppet starts managing UUIDs for other platform
397
397
  # user records.
398
- guid = %x{/usr/bin/uuidgen}.chomp
398
+ guid = %x(/usr/bin/uuidgen).chomp
399
399
 
400
400
  exec_arg_vector = self.class.get_exec_preamble("-create", @resource[:name])
401
401
  exec_arg_vector << ns_to_ds_attribute_map[:guid] << guid
@@ -421,7 +421,7 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
421
421
  if property == :uid and value.nil?
422
422
  value = self.class.next_system_id('uid')
423
423
  end
424
- if value != "" and not value.nil?
424
+ if value != "" and !value.nil?
425
425
  if property == :members
426
426
  add_members(nil, value)
427
427
  else
@@ -442,19 +442,19 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
442
442
 
443
443
  def remove_unwanted_members(current_members, new_members)
444
444
  current_members.each do |member|
445
- if not new_members.flatten.include?(member)
446
- cmd = [:dseditgroup, "-o", "edit", "-n", ".", "-d", member, @resource[:name]]
445
+ next if new_members.flatten.include?(member)
446
+
447
+ cmd = [:dseditgroup, "-o", "edit", "-n", ".", "-d", member, @resource[:name]]
448
+ begin
449
+ execute(cmd)
450
+ rescue Puppet::ExecutionFailure
451
+ # TODO: We're falling back to removing the member using dscl due to rdar://8481241
452
+ # This bug causes dseditgroup to fail to remove a member if that member doesn't exist
453
+ cmd = [:dscl, ".", "-delete", "/Groups/#{@resource.name}", "GroupMembership", member]
447
454
  begin
448
455
  execute(cmd)
449
- rescue Puppet::ExecutionFailure
450
- # TODO: We're falling back to removing the member using dscl due to rdar://8481241
451
- # This bug causes dseditgroup to fail to remove a member if that member doesn't exist
452
- cmd = [:dscl, ".", "-delete", "/Groups/#{@resource.name}", "GroupMembership", member]
453
- begin
454
- execute(cmd)
455
- rescue Puppet::ExecutionFailure => detail
456
- fail(_("Could not remove %{member} from group: %{resource}, %{detail}") % { member: member, resource: @resource.name, detail: detail })
457
- end
456
+ rescue Puppet::ExecutionFailure => detail
457
+ fail(_("Could not remove %{member} from group: %{resource}, %{detail}") % { member: member, resource: @resource.name, detail: detail })
458
458
  end
459
459
  end
460
460
  end
@@ -462,13 +462,13 @@ class Puppet::Provider::NameService::DirectoryService < Puppet::Provider::NameSe
462
462
 
463
463
  def add_members(current_members, new_members)
464
464
  new_members.flatten.each do |new_member|
465
- if current_members.nil? or not current_members.include?(new_member)
466
- cmd = [:dseditgroup, "-o", "edit", "-n", ".", "-a", new_member, @resource[:name]]
467
- begin
468
- execute(cmd)
469
- rescue Puppet::ExecutionFailure => detail
470
- fail(_("Could not add %{new_member} to group: %{name}, %{detail}") % { new_member: new_member, name: @resource.name, detail: detail })
471
- end
465
+ next unless current_members.nil? or !current_members.include?(new_member)
466
+
467
+ cmd = [:dseditgroup, "-o", "edit", "-n", ".", "-a", new_member, @resource[:name]]
468
+ begin
469
+ execute(cmd)
470
+ rescue Puppet::ExecutionFailure => detail
471
+ fail(_("Could not add %{new_member} to group: %{name}, %{detail}") % { new_member: new_member, name: @resource.name, detail: detail })
472
472
  end
473
473
  end
474
474
  end
@@ -15,10 +15,8 @@ class Puppet::Provider::NameService
15
15
  end
16
16
 
17
17
  def posixmethod(name)
18
- name = name.intern if name.is_a? String
19
- method = self.class.option(name, :method) || name
20
-
21
- method
18
+ name = name.intern if name.is_a? String
19
+ self.class.option(name, :method) || name
22
20
  end
23
21
  end
24
22
  end
@@ -9,14 +9,13 @@ class Puppet::Provider::NameService
9
9
  end
10
10
 
11
11
  def modifycmd(param, value)
12
- cmd = [
12
+ [
13
13
  command(:pw),
14
14
  "#{@resource.class.name}mod",
15
15
  @resource[:name],
16
16
  flag(param),
17
17
  munge(param, value)
18
18
  ]
19
- cmd
20
19
  end
21
20
  end
22
21
  end
@@ -98,7 +98,7 @@ class Puppet::Provider::NameService < Puppet::Provider
98
98
  private
99
99
 
100
100
  def op(property)
101
- @ops[property.name] || ("-#{property.name}")
101
+ @ops[property.name] || "-#{property.name}"
102
102
  end
103
103
  end
104
104
 
@@ -108,15 +108,15 @@ class Puppet::Provider::NameService < Puppet::Provider
108
108
  field = field.intern
109
109
  id_generators = { :user => :uid, :group => :gid }
110
110
  if id_generators[@resource.class.name] == field
111
- return self.class.autogen_id(field, @resource.class.name)
111
+ self.class.autogen_id(field, @resource.class.name)
112
112
  else
113
113
  value = self.class.autogen_default(field)
114
114
  if value
115
- return value
115
+ value
116
116
  elsif respond_to?("autogen_#{field}")
117
- return send("autogen_#{field}")
117
+ send("autogen_#{field}")
118
118
  else
119
- return nil
119
+ nil
120
120
  end
121
121
  end
122
122
  end
@@ -142,7 +142,7 @@ class Puppet::Provider::NameService < Puppet::Provider
142
142
  # loop. Thanks, Ruby, for your awesome abstractions. --daniel 2012-03-23
143
143
  highest = []
144
144
  Puppet::Etc.send(database) { |entry| highest << entry.send(method) }
145
- highest = highest.reject { |x| x > 65000 }.max
145
+ highest = highest.reject { |x| x > 65_000 }.max
146
146
 
147
147
  @prevauto = highest || 1000
148
148
  end
@@ -160,7 +160,7 @@ class Puppet::Provider::NameService < Puppet::Provider
160
160
 
161
161
  begin
162
162
  sensitive = has_sensitive_data?
163
- execute(self.addcmd, { :failonfail => true, :combine => true, :custom_environment => @custom_environment, :sensitive => sensitive })
163
+ execute(addcmd, { :failonfail => true, :combine => true, :custom_environment => @custom_environment, :sensitive => sensitive })
164
164
  if feature?(:manages_password_age) && (cmd = passcmd)
165
165
  execute(cmd, { :failonfail => true, :combine => true, :custom_environment => @custom_environment, :sensitive => sensitive })
166
166
  end
@@ -177,7 +177,7 @@ class Puppet::Provider::NameService < Puppet::Provider
177
177
  end
178
178
 
179
179
  begin
180
- execute(self.deletecmd, { :failonfail => true, :combine => true, :custom_environment => @custom_environment })
180
+ execute(deletecmd, { :failonfail => true, :combine => true, :custom_environment => @custom_environment })
181
181
  rescue Puppet::ExecutionFailure => detail
182
182
  raise Puppet::Error, _("Could not delete %{resource} %{name}: %{detail}") % { resource: @resource.class.name, name: @resource.name, detail: detail }, detail.backtrace
183
183
  end
@@ -53,21 +53,21 @@ Puppet::Type.type(:package).provide :aix, :parent => Puppet::Provider::Package d
53
53
 
54
54
  updates = {}
55
55
  sources.each do |source|
56
- execute(self.srclistcmd(source)).each_line do |line|
57
- if line =~ /^[^#][^:]*:([^:]*):([^:]*)/
58
- current = {}
59
- current[:name] = $1
60
- current[:version] = $2
61
- current[:source] = source
56
+ execute(srclistcmd(source)).each_line do |line|
57
+ next unless line =~ /^[^#][^:]*:([^:]*):([^:]*)/
62
58
 
63
- if updates.key?(current[:name])
64
- previous = updates[current[:name]]
59
+ current = {}
60
+ current[:name] = Regexp.last_match(1)
61
+ current[:version] = Regexp.last_match(2)
62
+ current[:source] = source
65
63
 
66
- updates[current[:name]] = current unless Puppet::Util::Package.versioncmp(previous[:version], current[:version]) == 1
64
+ if updates.key?(current[:name])
65
+ previous = updates[current[:name]]
67
66
 
68
- else
69
- updates[current[:name]] = current
70
- end
67
+ updates[current[:name]] = current unless Puppet::Util::Package.versioncmp(previous[:version], current[:version]) == 1
68
+
69
+ else
70
+ updates[current[:name]] = current
71
71
  end
72
72
  end
73
73
  end
@@ -137,9 +137,9 @@ Puppet::Type.type(:package).provide :aix, :parent => Puppet::Provider::Package d
137
137
  end
138
138
 
139
139
  if hash[:pkgname]
140
- return list.shift
140
+ list.shift
141
141
  else
142
- return list
142
+ list
143
143
  end
144
144
  end
145
145
 
@@ -152,12 +152,12 @@ Puppet::Type.type(:package).provide :aix, :parent => Puppet::Provider::Package d
152
152
  def latest
153
153
  upd = latest_info
154
154
 
155
- unless upd.nil?
156
- return "#{upd[:version]}"
157
- else
155
+ if upd.nil?
158
156
  raise Puppet::DevError, _("Tried to get latest on a missing package") if properties[:ensure] == :absent
159
157
 
160
- return properties[:ensure]
158
+ properties[:ensure]
159
+ else
160
+ (upd[:version]).to_s
161
161
  end
162
162
  end
163
163
 
@@ -166,6 +166,6 @@ Puppet::Type.type(:package).provide :aix, :parent => Puppet::Provider::Package d
166
166
  end
167
167
 
168
168
  def update
169
- self.install(false)
169
+ install(false)
170
170
  end
171
171
  end
@@ -57,7 +57,7 @@ Puppet::Type.type(:package).provide(:appdmg, :parent => Puppet::Provider::Packag
57
57
  cached_source = source
58
58
  tmpdir = Dir.mktmpdir
59
59
  begin
60
- if %r{\A[A-Za-z][A-Za-z0-9+\-\.]*://} =~ cached_source
60
+ if %r{\A[A-Za-z][A-Za-z0-9+\-.]*://} =~ cached_source
61
61
  cached_source = File.join(tmpdir, name)
62
62
  begin
63
63
  curl "-o", cached_source, "-C", "-", "-L", "-s", "--url", source
@@ -85,7 +85,7 @@ Puppet::Type.type(:package).provide(:appdmg, :parent => Puppet::Provider::Packag
85
85
  installapp("#{fspath}/#{pkg}", name, source)
86
86
  end
87
87
  end
88
- Puppet.debug "Unable to find .app in .appdmg. #{name} will not be installed." if !found_app
88
+ Puppet.debug "Unable to find .app in .appdmg. #{name} will not be installed." unless found_app
89
89
  ensure
90
90
  hdiutil "eject", mounts[0]
91
91
  end
@@ -15,7 +15,7 @@ Puppet::Type.type(:package).provide :apple, :parent => Puppet::Provider::Package
15
15
 
16
16
  def self.instances
17
17
  instance_by_name.collect do |name|
18
- self.new(
18
+ new(
19
19
  :name => name,
20
20
  :provider => :apple,
21
21
  :ensure => :installed
@@ -45,7 +45,7 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
45
45
  def query
46
46
  hash = super
47
47
 
48
- if !%i(absent purged).include?(hash[:ensure]) && aptmark('showmanual', @resource[:name]).strip == @resource[:name]
48
+ if !%i[absent purged].include?(hash[:ensure]) && aptmark('showmanual', @resource[:name]).strip == @resource[:name]
49
49
  hash[:mark] = :manual
50
50
  end
51
51
 
@@ -108,7 +108,7 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
108
108
  end
109
109
  end
110
110
 
111
- return versions.sort.last if versions.any?
111
+ return versions.max if versions.any?
112
112
 
113
113
  Puppet.debug("No available version for package #{@resource[:name]} is included in range #{should_range}")
114
114
  should_range
@@ -117,7 +117,7 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
117
117
  # Install a package using 'apt-get'. This function needs to support
118
118
  # installing a specific version.
119
119
  def install
120
- self.run_preseed if @resource[:responsefile]
120
+ run_preseed if @resource[:responsefile]
121
121
  should = @resource[:ensure]
122
122
 
123
123
  if should.is_a?(String)
@@ -133,7 +133,7 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
133
133
  end
134
134
 
135
135
  checkforcdrom
136
- cmd = %w{-q -y}
136
+ cmd = %w[-q -y]
137
137
 
138
138
  config = @resource[:configfiles]
139
139
  if config
@@ -165,17 +165,17 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
165
165
  end
166
166
  # rubocop:enable Style/RedundantCondition
167
167
 
168
- self.unhold if self.properties[:mark] == :hold
168
+ unhold if properties[:mark] == :hold
169
169
  begin
170
170
  aptget(*cmd)
171
171
  ensure
172
- self.hold if @resource[:mark] == :hold
172
+ hold if @resource[:mark] == :hold
173
173
  end
174
174
 
175
175
  # If a source file was specified, we must make sure the expected version was installed from specified file
176
- if source && !%i(present installed).include?(should)
177
- is = self.query
178
- raise Puppet::Error, _("Could not find package %{name}") % { name: self.name } unless is
176
+ if source && !%i[present installed].include?(should)
177
+ is = query
178
+ raise Puppet::Error, _("Could not find package %{name}") % { name: name } unless is
179
179
 
180
180
  version = is[:ensure]
181
181
 
@@ -189,10 +189,10 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
189
189
  output = aptcache :policy, @resource[:name]
190
190
 
191
191
  if output =~ /Candidate:\s+(\S+)\s/
192
- return $1
192
+ Regexp.last_match(1)
193
193
  else
194
- self.err _("Could not find latest version")
195
- return nil
194
+ err _("Could not find latest version")
195
+ nil
196
196
  end
197
197
  end
198
198
 
@@ -202,26 +202,26 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg, :source => :dpkg do
202
202
  def run_preseed
203
203
  response = @resource[:responsefile]
204
204
  if response && Puppet::FileSystem.exist?(response)
205
- self.info(_("Preseeding %{response} to debconf-set-selections") % { response: response })
205
+ info(_("Preseeding %{response} to debconf-set-selections") % { response: response })
206
206
 
207
207
  preseed response
208
208
  else
209
- self.info _("No responsefile specified or non existent, not preseeding anything")
209
+ info _("No responsefile specified or non existent, not preseeding anything")
210
210
  end
211
211
  end
212
212
 
213
213
  def uninstall
214
- self.run_preseed if @resource[:responsefile]
214
+ run_preseed if @resource[:responsefile]
215
215
  args = ['-y', '-q']
216
- args << '--allow-change-held-packages' if self.properties[:mark] == :hold
216
+ args << '--allow-change-held-packages' if properties[:mark] == :hold
217
217
  args << :remove << @resource[:name]
218
218
  aptget(*args)
219
219
  end
220
220
 
221
221
  def purge
222
- self.run_preseed if @resource[:responsefile]
222
+ run_preseed if @resource[:responsefile]
223
223
  args = ['-y', '-q']
224
- args << '--allow-change-held-packages' if self.properties[:mark] == :hold
224
+ args << '--allow-change-held-packages' if properties[:mark] == :hold
225
225
  args << :remove << '--purge' << @resource[:name]
226
226
  aptget(*args)
227
227
  # workaround a "bug" in apt, that already removed packages are not purged
@@ -19,9 +19,7 @@ Puppet::Type.type(:package).provide :aptitude, :parent => :apt, :source => :dpkg
19
19
 
20
20
  # Yay, stupid aptitude doesn't throw an error when the package is missing.
21
21
  if args.include?(:install) and output.to_s =~ /Couldn't find any package/
22
- raise Puppet::Error.new(
23
- _("Could not find package %{name}") % { name: self.name }
24
- )
22
+ raise Puppet::Error, _("Could not find package %{name}") % { name: name }
25
23
  end
26
24
  end
27
25
 
@@ -39,7 +39,7 @@ Puppet::Type.type(:package).provide :aptrpm, :parent => :rpm, :source => :rpm do
39
39
  # Add the package version
40
40
  str += "=#{should}"
41
41
  end
42
- cmd = %w{-q -y}
42
+ cmd = %w[-q -y]
43
43
 
44
44
  cmd << 'install' << str
45
45
 
@@ -51,30 +51,30 @@ Puppet::Type.type(:package).provide :aptrpm, :parent => :rpm, :source => :rpm do
51
51
  output = aptcache :showpkg, @resource[:name]
52
52
 
53
53
  if output =~ /Versions:\s*\n((\n|.)+)^$/
54
- versions = $1
54
+ versions = Regexp.last_match(1)
55
55
  available_versions = versions.split(/\n/).filter_map { |version|
56
- if version =~ /^([^\(]+)\(/
57
- $1
56
+ if version =~ /^([^(]+)\(/
57
+ Regexp.last_match(1)
58
58
  else
59
- self.warning _("Could not match version '%{version}'") % { version: version }
59
+ warning _("Could not match version '%{version}'") % { version: version }
60
60
  nil
61
61
  end
62
62
  }.sort { |a, b| versioncmp(a, b) }
63
63
 
64
64
  if available_versions.length == 0
65
- self.debug "No latest version"
65
+ debug "No latest version"
66
66
  print output if Puppet[:debug]
67
67
  end
68
68
 
69
69
  # Get the latest and greatest version number
70
- return available_versions.pop
70
+ available_versions.pop
71
71
  else
72
- self.err _("Could not match string")
72
+ err _("Could not match string")
73
73
  end
74
74
  end
75
75
 
76
76
  def update
77
- self.install
77
+ install
78
78
  end
79
79
 
80
80
  def uninstall
@@ -50,12 +50,12 @@ Puppet::Type.type(:package).provide :blastwave, :parent => :sun, :source => :sun
50
50
  end
51
51
 
52
52
  if hash[:justme]
53
- return list[0]
53
+ list[0]
54
54
  else
55
55
  list.reject! { |h|
56
56
  h[:ensure] == :absent
57
57
  }
58
- return list
58
+ list
59
59
  end
60
60
  end
61
61
 
@@ -63,23 +63,23 @@ Puppet::Type.type(:package).provide :blastwave, :parent => :sun, :source => :sun
63
63
  def self.blastsplit(line)
64
64
  if line =~ /\s*(\S+)\s+((\[Not installed\])|(\S+))\s+(\S+)/
65
65
  hash = {}
66
- hash[:name] = $1
67
- hash[:ensure] = if $2 == "[Not installed]"
66
+ hash[:name] = Regexp.last_match(1)
67
+ hash[:ensure] = if Regexp.last_match(2) == "[Not installed]"
68
68
  :absent
69
69
  else
70
- $2
70
+ Regexp.last_match(2)
71
71
  end
72
- hash[:avail] = $5
72
+ hash[:avail] = Regexp.last_match(5)
73
73
 
74
74
  hash[:avail] = hash[:ensure] if hash[:avail] == "SAME"
75
75
 
76
76
  # Use the name method, so it works with subclasses.
77
- hash[:provider] = self.name
77
+ hash[:provider] = name
78
78
 
79
- return hash
79
+ hash
80
80
  else
81
81
  Puppet.warning _("Cannot match %{line}") % { line: line }
82
- return nil
82
+ nil
83
83
  end
84
84
  end
85
85
 
@@ -95,11 +95,7 @@ Puppet::Type.type(:package).provide :blastwave, :parent => :sun, :source => :sun
95
95
 
96
96
  def query
97
97
  hash = self.class.blastlist(:justme => @resource[:name])
98
- if hash
99
- hash
100
- else
101
- { :ensure => :absent }
102
- end
98
+ hash || { :ensure => :absent }
103
99
  end
104
100
 
105
101
  # Remove the old package, and install the new one
@@ -35,7 +35,7 @@ Puppet::Type.type(:package).provide :dnfmodule, :parent => :dnf do
35
35
 
36
36
  def self.instances
37
37
  packages = []
38
- cmd = "#{command(:dnf)} module list -d 0 -e #{error_level}"
38
+ cmd = "#{command(:dnf)} module list -y -d 0 -e #{error_level}"
39
39
  execute(cmd).each_line do |line|
40
40
  # select only lines with actual packages since DNF clutters the output
41
41
  next unless line =~ /\[[eix]\][, ]/
@@ -95,7 +95,7 @@ Puppet::Type.type(:package).provide :dnfmodule, :parent => :dnf do
95
95
  # module has no default profile and no profile was requested, so just enable the stream
96
96
  # DNF versions prior to 4.2.8 do not need this workaround
97
97
  # see https://bugzilla.redhat.com/show_bug.cgi?id=1669527
98
- if @resource[:flavor] == nil && e.message =~ /^(?:missing|broken) groups or modules: #{Regexp.quote(args)}$/
98
+ if @resource[:flavor].nil? && e.message =~ /^(?:missing|broken) groups or modules: #{Regexp.quote(args)}$/
99
99
  enable(args)
100
100
  else
101
101
  raise
@@ -113,7 +113,7 @@ Puppet::Type.type(:package).provide :dnfmodule, :parent => :dnf do
113
113
  end
114
114
  return true if pkg
115
115
  end
116
- return false
116
+ false
117
117
  end
118
118
 
119
119
  def enable(args = @resource[:name])