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
@@ -203,21 +203,19 @@ class Puppet::Property < Puppet::Parameter
203
203
  # @raise [Puppet::DevError] if there were issues formatting the message
204
204
  #
205
205
  def change_to_s(current_value, newvalue)
206
- begin
207
- if current_value == :absent
208
- return "defined '#{name}' as #{should_to_s(newvalue)}"
209
- elsif newvalue == :absent or newvalue == [:absent]
210
- return "undefined '#{name}' from #{is_to_s(current_value)}"
211
- else
212
- return "#{name} changed #{is_to_s(current_value)} to #{should_to_s(newvalue)}"
213
- end
214
- rescue Puppet::Error
215
- raise
216
- rescue => detail
217
- message = _("Could not convert change '%{name}' to string: %{detail}") % { name: name, detail: detail }
218
- Puppet.log_exception(detail, message)
219
- raise Puppet::DevError, message, detail.backtrace
206
+ if current_value == :absent
207
+ "defined '#{name}' as #{should_to_s(newvalue)}"
208
+ elsif newvalue == :absent or newvalue == [:absent]
209
+ "undefined '#{name}' from #{is_to_s(current_value)}"
210
+ else
211
+ "#{name} changed #{is_to_s(current_value)} to #{should_to_s(newvalue)}"
220
212
  end
213
+ rescue Puppet::Error
214
+ raise
215
+ rescue => detail
216
+ message = _("Could not convert change '%{name}' to string: %{detail}") % { name: name, detail: detail }
217
+ Puppet.log_exception(detail, message)
218
+ raise Puppet::DevError, message, detail.backtrace
221
219
  end
222
220
 
223
221
  # Produces the name of the event to use to describe a change of this property's value.
@@ -227,17 +225,17 @@ class Puppet::Property < Puppet::Parameter
227
225
  # @return [String] the name of the event that describes the change
228
226
  #
229
227
  def event_name
230
- value = self.should
228
+ value = should
231
229
 
232
230
  event_name = self.class.value_option(value, :event) and return event_name
233
231
 
234
232
  name == :ensure or return (name.to_s + "_changed").to_sym
235
233
 
236
- return (resource.type.to_s + case value
237
- when :present; "_created"
238
- when :absent; "_removed"
239
- else "_changed"
240
- end).to_sym
234
+ (resource.type.to_s + case value
235
+ when :present; "_created"
236
+ when :absent; "_removed"
237
+ else "_changed"
238
+ end).to_sym
241
239
  end
242
240
 
243
241
  # Produces an event describing a change of this property.
@@ -308,7 +306,7 @@ class Puppet::Property < Puppet::Parameter
308
306
  # @api public
309
307
  #
310
308
  def insync?(is)
311
- self.devfail "#{self.class.name}'s should is not array" unless @should.is_a?(Array)
309
+ devfail "#{self.class.name}'s should is not array" unless @should.is_a?(Array)
312
310
 
313
311
  # an empty array is analogous to no should values
314
312
  return true if @should.empty?
@@ -333,14 +331,14 @@ class Puppet::Property < Puppet::Parameter
333
331
  #
334
332
  # This does mean that property equality is not commutative, and will not
335
333
  # work unless the `is` value is carefully arranged to match the should.
336
- return (is == @should or is == @should.map(&:to_s))
334
+ (is == @should or is == @should.map(&:to_s))
337
335
 
338
336
  # When we stop being idiots about this, and actually have meaningful
339
337
  # semantics, this version is the thing we actually want to do.
340
338
  #
341
339
  # return is.zip(@should).all? {|a, b| property_matches?(a, b) }
342
340
  else
343
- return @should.any? { |want| property_matches?(is, want) }
341
+ @should.any? { |want| property_matches?(is, want) }
344
342
  end
345
343
  end
346
344
 
@@ -371,7 +369,7 @@ class Puppet::Property < Puppet::Parameter
371
369
  # avoid it
372
370
  # TRANSLATORS 'insync_values?' should not be translated
373
371
  msg = _("Unknown failure using insync_values? on type: %{type} / property: %{name} to compare values %{should} and %{is}") %
374
- { type: self.resource.ref, name: self.name, should: should, is: is }
372
+ { type: resource.ref, name: name, should: should, is: is }
375
373
  Puppet.info(msg)
376
374
 
377
375
  # Return nil, ie. unknown
@@ -486,9 +484,9 @@ class Puppet::Property < Puppet::Parameter
486
484
  # Set a name for looking up associated options like the event.
487
485
  name = self.class.value_name(value)
488
486
  method = self.class.value_option(name, :method)
489
- if method && self.respond_to?(method)
487
+ if method && respond_to?(method)
490
488
  begin
491
- self.send(method)
489
+ send(method)
492
490
  rescue Puppet::Error
493
491
  raise
494
492
  rescue => detail
@@ -503,7 +501,7 @@ class Puppet::Property < Puppet::Parameter
503
501
  if block
504
502
  # FIXME It'd be better here to define a method, so that
505
503
  # the blocks could return values.
506
- self.instance_eval(&block)
504
+ instance_eval(&block)
507
505
  else
508
506
  call_provider(value)
509
507
  end
@@ -526,12 +524,12 @@ class Puppet::Property < Puppet::Parameter
526
524
  def should
527
525
  return nil unless defined?(@should)
528
526
 
529
- self.devfail "should for #{self.class.name} on #{resource.name} is not an array" unless @should.is_a?(Array)
527
+ devfail "should for #{self.class.name} on #{resource.name} is not an array" unless @should.is_a?(Array)
530
528
 
531
529
  if match_all?
532
- return @should.collect { |val| self.unmunge(val) }
530
+ @should.collect { |val| unmunge(val) }
533
531
  else
534
- return self.unmunge(@should[0])
532
+ unmunge(@should[0])
535
533
  end
536
534
  end
537
535
 
@@ -549,7 +547,7 @@ class Puppet::Property < Puppet::Parameter
549
547
  @shouldorig = values
550
548
 
551
549
  values.each { |val| validate(val) }
552
- @should = values.collect { |val| self.munge(val) }
550
+ @should = values.collect { |val| munge(val) }
553
551
  end
554
552
 
555
553
  # Produces a pretty printing string for the given value.
@@ -591,7 +589,7 @@ class Puppet::Property < Puppet::Parameter
591
589
  features = self.class.value_option(self.class.value_name(value), :required_features)
592
590
  if features
593
591
  features = Array(features)
594
- needed_features = features.collect { |f| f.to_s }.join(", ")
592
+ needed_features = features.collect(&:to_s).join(", ")
595
593
  unless provider.satisfies?(features)
596
594
  # TRANSLATORS 'Provider' refers to a Puppet provider class
597
595
  raise ArgumentError, _("Provider %{provider} must have features '%{needed_features}' to set '%{property}' to '%{value}'") %
@@ -602,7 +600,7 @@ class Puppet::Property < Puppet::Parameter
602
600
 
603
601
  # @return [Object, nil] Returns the wanted _(should)_ value of this property.
604
602
  def value
605
- self.should
603
+ should
606
604
  end
607
605
 
608
606
  # (see #should=)
@@ -45,7 +45,7 @@ class Puppet::Provider::Exec < Puppet::Provider
45
45
 
46
46
  checkexe(command)
47
47
 
48
- debug "Executing#{check ? " check" : ""} '#{sensitive ? '[redacted]' : command}'"
48
+ debug "Executing#{check ? ' check' : ''} '#{sensitive ? '[redacted]' : command}'"
49
49
 
50
50
  # Ruby 2.1 and later interrupt execution in a way that bypasses error
51
51
  # handling by default. Passing Timeout::Error causes an exception to be
@@ -82,7 +82,7 @@ class Puppet::Provider::Exec < Puppet::Provider
82
82
  # Return output twice as processstatus was returned before, but only exitstatus was ever called.
83
83
  # Output has the exitstatus on it so it is returned instead. This is here twice as changing this
84
84
  # would result in a change to the underlying API.
85
- return output, output
85
+ [output, output]
86
86
  end
87
87
 
88
88
  def extractexe(command)
@@ -27,15 +27,17 @@ Puppet::Type.type(:file).provide :posix do
27
27
  end
28
28
 
29
29
  if user.uid == ""
30
- return nil
30
+ nil
31
31
  else
32
- return user.name
32
+ user.name
33
33
  end
34
34
  end
35
35
 
36
36
  # Determine if the user is valid, and if so, return the UID
37
37
  def name2uid(value)
38
- Integer(value) rescue uid(value) || false
38
+ Integer(value)
39
+ rescue
40
+ uid(value) || false
39
41
  end
40
42
 
41
43
  def gid2name(id)
@@ -49,14 +51,16 @@ Puppet::Type.type(:file).provide :posix do
49
51
  end
50
52
 
51
53
  if group.gid == ""
52
- return nil
54
+ nil
53
55
  else
54
- return group.name
56
+ group.name
55
57
  end
56
58
  end
57
59
 
58
60
  def name2gid(value)
59
- Integer(value) rescue gid(value) || false
61
+ Integer(value)
62
+ rescue
63
+ gid(value) || false
60
64
  end
61
65
 
62
66
  def owner
@@ -71,7 +75,7 @@ Puppet::Type.type(:file).provide :posix do
71
75
  # large UIDs instead of negative ones. This isn't a Ruby bug,
72
76
  # it's an OS X bug, since it shows up in perl, too.
73
77
  if currentvalue > Puppet[:maximum_uid].to_i
74
- self.warning _("Apparently using negative UID (%{currentvalue}) on a platform that does not consistently handle them") % { currentvalue: currentvalue }
78
+ warning _("Apparently using negative UID (%{currentvalue}) on a platform that does not consistently handle them") % { currentvalue: currentvalue }
75
79
  currentvalue = :silly
76
80
  end
77
81
 
@@ -103,7 +107,7 @@ Puppet::Type.type(:file).provide :posix do
103
107
  # large GIDs instead of negative ones. This isn't a Ruby bug,
104
108
  # it's an OS X bug, since it shows up in perl, too.
105
109
  if currentvalue > Puppet[:maximum_uid].to_i
106
- self.warning _("Apparently using negative GID (%{currentvalue}) on a platform that does not consistently handle them") % { currentvalue: currentvalue }
110
+ warning _("Apparently using negative GID (%{currentvalue}) on a platform that does not consistently handle them") % { currentvalue: currentvalue }
107
111
  currentvalue = :silly
108
112
  end
109
113
 
@@ -128,19 +132,17 @@ Puppet::Type.type(:file).provide :posix do
128
132
  def mode
129
133
  stat = resource.stat
130
134
  if stat
131
- return (stat.mode & 007777).to_s(8).rjust(4, '0')
135
+ (stat.mode & 0o07777).to_s(8).rjust(4, '0')
132
136
  else
133
- return :absent
137
+ :absent
134
138
  end
135
139
  end
136
140
 
137
141
  def mode=(value)
138
- begin
139
- File.chmod(value.to_i(8), resource[:path])
140
- rescue => detail
141
- error = Puppet::Error.new(_("failed to set mode %{mode} on %{path}: %{message}") % { mode: mode, path: resource[:path], message: detail.message })
142
- error.set_backtrace detail.backtrace
143
- raise error
144
- end
142
+ File.chmod(value.to_i(8), resource[:path])
143
+ rescue => detail
144
+ error = Puppet::Error.new(_("failed to set mode %{mode} on %{path}: %{message}") % { mode: mode, path: resource[:path], message: detail.message })
145
+ error.set_backtrace detail.backtrace
146
+ raise error
145
147
  end
146
148
  end
@@ -43,11 +43,9 @@ Puppet::Type.type(:file).provide :windows do
43
43
  end
44
44
 
45
45
  def owner=(should)
46
- begin
47
- set_owner(should, resolved_path)
48
- rescue => detail
49
- raise Puppet::Error, _("Failed to set owner to '%{should}': %{detail}") % { should: should, detail: detail }, detail.backtrace
50
- end
46
+ set_owner(should, resolved_path)
47
+ rescue => detail
48
+ raise Puppet::Error, _("Failed to set owner to '%{should}': %{detail}") % { should: should, detail: detail }, detail.backtrace
51
49
  end
52
50
 
53
51
  def group
@@ -57,11 +55,9 @@ Puppet::Type.type(:file).provide :windows do
57
55
  end
58
56
 
59
57
  def group=(should)
60
- begin
61
- set_group(should, resolved_path)
62
- rescue => detail
63
- raise Puppet::Error, _("Failed to set group to '%{should}': %{detail}") % { should: should, detail: detail }, detail.backtrace
64
- end
58
+ set_group(should, resolved_path)
59
+ rescue => detail
60
+ raise Puppet::Error, _("Failed to set group to '%{should}': %{detail}") % { should: should, detail: detail }, detail.backtrace
65
61
  end
66
62
 
67
63
  def mode
@@ -74,15 +70,13 @@ Puppet::Type.type(:file).provide :windows do
74
70
  end
75
71
 
76
72
  def mode=(value)
77
- begin
78
- managing_owner = !resource[:owner].nil?
79
- managing_group = !resource[:group].nil?
80
- set_mode(value.to_i(8), resource[:path], true, managing_owner, managing_group)
81
- rescue => detail
82
- error = Puppet::Error.new(_("failed to set mode %{mode} on %{path}: %{message}") % { mode: mode, path: resource[:path], message: detail.message })
83
- error.set_backtrace detail.backtrace
84
- raise error
85
- end
73
+ managing_owner = !resource[:owner].nil?
74
+ managing_group = !resource[:group].nil?
75
+ set_mode(value.to_i(8), resource[:path], true, managing_owner, managing_group)
76
+ rescue => detail
77
+ error = Puppet::Error.new(_("failed to set mode %{mode} on %{path}: %{message}") % { mode: mode, path: resource[:path], message: detail.message })
78
+ error.set_backtrace detail.backtrace
79
+ raise error
86
80
  end
87
81
 
88
82
  def validate
@@ -14,10 +14,11 @@ Puppet::Type.type(:group).provide :directoryservice, :parent => Puppet::Provider
14
14
 
15
15
  def members_insync?(current, should)
16
16
  return false unless current
17
+
17
18
  if current == :absent
18
- return should.empty?
19
+ should.empty?
19
20
  else
20
- return current.sort.uniq == should.sort.uniq
21
+ current.sort.uniq == should.sort.uniq
21
22
  end
22
23
  end
23
24
  end
@@ -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