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
@@ -84,7 +84,7 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
84
84
  #
85
85
  # @api private
86
86
  def self.launchd_overrides
87
- if self.get_os_version < 14
87
+ if get_os_version < 14
88
88
  "/var/db/launchd.db/com.apple.launchd/overrides.plist"
89
89
  else
90
90
  "/var/db/com.apple.xpc.launchd/disabled.plist"
@@ -107,8 +107,8 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
107
107
  # containing the name, provider, path, and status of each service on the
108
108
  # system.
109
109
  def self.instances
110
- jobs = self.jobsearch
111
- @job_list ||= self.job_list
110
+ jobs = jobsearch
111
+ @job_list ||= job_list
112
112
  jobs.keys.collect do |job|
113
113
  job_status = @job_list.has_key?(job) ? :running : :stopped
114
114
  new(:name => job, :provider => :launchd, :path => jobs[job], :status => job_status)
@@ -135,7 +135,7 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
135
135
  #
136
136
  # @api private
137
137
  def self.make_label_to_path_map(refresh = false)
138
- return @label_to_path_map if @label_to_path_map and not refresh
138
+ return @label_to_path_map if @label_to_path_map and !refresh
139
139
 
140
140
  @label_to_path_map = {}
141
141
  launchd_paths.each do |path|
@@ -165,12 +165,12 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
165
165
 
166
166
  if label
167
167
  if by_label.has_key? label
168
- return { label => by_label[label] }
168
+ { label => by_label[label] }
169
169
  else
170
170
  # try refreshing the map, in case a plist has been added in the interim
171
171
  by_label = make_label_to_path_map(true)
172
172
  if by_label.has_key? label
173
- return { label => by_label[label] }
173
+ { label => by_label[label] }
174
174
  else
175
175
  raise Puppet::Error, "Unable to find launchd plist for job: #{label}"
176
176
  end
@@ -187,13 +187,13 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
187
187
  @job_list = Hash.new
188
188
  begin
189
189
  output = launchctl :list
190
- raise Puppet::Error.new("launchctl list failed to return any data.") if output.nil?
190
+ raise Puppet::Error, "launchctl list failed to return any data." if output.nil?
191
191
 
192
192
  output.split("\n").each do |line|
193
193
  @job_list[line.split(/\s/).last] = :running
194
194
  end
195
- rescue Puppet::ExecutionFailure
196
- raise Puppet::Error.new("Unable to determine status of #{resource[:name]}", $!)
195
+ rescue Puppet::ExecutionFailure => e
196
+ raise Puppet::Error.new("Unable to determine status of #{resource[:name]}", e)
197
197
  end
198
198
  @job_list
199
199
  end
@@ -212,7 +212,7 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
212
212
  Puppet.debug(_("Reading overrides plist, attempt %{i}") % { i: i }) if i > 1
213
213
  overrides = read_plist(launchd_overrides)
214
214
  break unless overrides.nil?
215
- raise Puppet::Error.new(_('Unable to read overrides plist, too many attempts')) if i == 20
215
+ raise Puppet::Error, _('Unable to read overrides plist, too many attempts') if i == 20
216
216
 
217
217
  Puppet.info(_('Overrides file could not be read, trying again.'))
218
218
  Kernel.sleep(0.1)
@@ -239,7 +239,7 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
239
239
  if FileTest.file?(job_path)
240
240
  job_plist = self.class.read_plist(job_path)
241
241
  else
242
- raise Puppet::Error.new("Unable to parse launchd plist at path: #{job_path}")
242
+ raise Puppet::Error, "Unable to parse launchd plist at path: #{job_path}"
243
243
  end
244
244
  [job_path, job_plist]
245
245
  end
@@ -248,7 +248,7 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
248
248
  # status mechanism and fall back to the base provider status method.
249
249
  def status
250
250
  if @resource && ((@resource[:hasstatus] == :false) || (@resource[:status]))
251
- return super
251
+ super
252
252
  elsif @property_hash[:status].nil?
253
253
  # property_hash was flushed so the service changed status
254
254
  service_name = @resource[:name]
@@ -281,17 +281,17 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
281
281
  # always add -w so it always starts the job, it is a noop if it is not needed, this means we do
282
282
  # not have to rescan all launchd plists.
283
283
  cmds << "-w"
284
- if self.enabled? == :false || self.status == :stopped # launchctl won't load disabled jobs
284
+ if enabled? == :false || status == :stopped # launchctl won't load disabled jobs
285
285
  did_enable_job = true
286
286
  end
287
287
  cmds << job_path
288
288
  begin
289
289
  execute(cmds)
290
- rescue Puppet::ExecutionFailure
291
- raise Puppet::Error.new("Unable to start service: #{resource[:name]} at path: #{job_path}", $!)
290
+ rescue Puppet::ExecutionFailure => e
291
+ raise Puppet::Error.new("Unable to start service: #{resource[:name]} at path: #{job_path}", e)
292
292
  end
293
293
  # As load -w clears the Disabled flag, we need to add it in after
294
- self.disable if did_enable_job and resource[:enable] == :false
294
+ disable if did_enable_job and resource[:enable] == :false
295
295
  end
296
296
 
297
297
  def stop
@@ -303,26 +303,26 @@ Puppet::Type.type(:service).provide :launchd, :parent => :base do
303
303
  did_disable_job = false
304
304
  cmds = []
305
305
  cmds << :launchctl << :unload
306
- if self.enabled? == :true # keepalive jobs can't be stopped without disabling
306
+ if enabled? == :true # keepalive jobs can't be stopped without disabling
307
307
  cmds << "-w"
308
308
  did_disable_job = true
309
309
  end
310
310
  cmds << job_path
311
311
  begin
312
312
  execute(cmds)
313
- rescue Puppet::ExecutionFailure
314
- raise Puppet::Error.new("Unable to stop service: #{resource[:name]} at path: #{job_path}", $!)
313
+ rescue Puppet::ExecutionFailure => e
314
+ raise Puppet::Error.new("Unable to stop service: #{resource[:name]} at path: #{job_path}", e)
315
315
  end
316
316
  # As unload -w sets the Disabled flag, we need to add it in after
317
- self.enable if did_disable_job and resource[:enable] == :true
317
+ enable if did_disable_job and resource[:enable] == :true
318
318
  end
319
319
 
320
320
  def restart
321
321
  Puppet.debug("A restart has been triggered for the #{resource[:name]} service")
322
322
  Puppet.debug("Stopping the #{resource[:name]} service")
323
- self.stop
323
+ stop
324
324
  Puppet.debug("Starting the #{resource[:name]} service")
325
- self.start
325
+ start
326
326
  end
327
327
 
328
328
  # launchd jobs are enabled by default. They are only disabled if the key
@@ -47,7 +47,7 @@ Puppet::Type.type(:service).provide :openbsd, :parent => :init do
47
47
  end
48
48
  instances
49
49
  rescue Puppet::ExecutionFailure
50
- return nil
50
+ nil
51
51
  end
52
52
  end
53
53
 
@@ -56,16 +56,16 @@ Puppet::Type.type(:service).provide :openbsd, :parent => :init do
56
56
  :failonfail => false, :combine => false, :squelch => false)
57
57
 
58
58
  if output.exitstatus == 1
59
- self.debug("Is disabled")
60
- return :false
59
+ debug("Is disabled")
60
+ :false
61
61
  else
62
- self.debug("Is enabled")
63
- return :true
62
+ debug("Is enabled")
63
+ :true
64
64
  end
65
65
  end
66
66
 
67
67
  def enable
68
- self.debug("Enabling")
68
+ debug("Enabling")
69
69
  rcctl(:enable, @resource[:name])
70
70
  if @resource[:flags]
71
71
  rcctl(:set, @resource[:name], :flags, @resource[:flags])
@@ -73,14 +73,14 @@ Puppet::Type.type(:service).provide :openbsd, :parent => :init do
73
73
  end
74
74
 
75
75
  def disable
76
- self.debug("Disabling")
76
+ debug("Disabling")
77
77
  rcctl(:disable, @resource[:name])
78
78
  end
79
79
 
80
80
  def running?
81
81
  output = execute([command(:rcctl), "check", @resource[:name]],
82
82
  :failonfail => false, :combine => false, :squelch => false).chomp
83
- return true if output =~ /\(ok\)/
83
+ true if output =~ /\(ok\)/
84
84
  end
85
85
 
86
86
  # Uses the wrapper to prevent failure when the service is not running;
@@ -88,12 +88,12 @@ Puppet::Type.type(:service).provide :openbsd, :parent => :init do
88
88
  def flags
89
89
  output = execute([command(:rcctl), "get", @resource[:name], "flags"],
90
90
  :failonfail => false, :combine => false, :squelch => false).chomp
91
- self.debug("Flags are: \"#{output}\"")
91
+ debug("Flags are: \"#{output}\"")
92
92
  output
93
93
  end
94
94
 
95
95
  def flags=(value)
96
- self.debug("Changing flags from #{flags} to #{value}")
96
+ debug("Changing flags from #{flags} to #{value}")
97
97
  rcctl(:set, @resource[:name], :flags, value)
98
98
  # If the service is already running, force a restart as the flags have been changed.
99
99
  rcctl(:restart, @resource[:name]) if running?
@@ -40,7 +40,7 @@ Puppet::Type.type(:service).provide :openrc, :parent => :base do
40
40
  when /^\S+/ # caption of a dynamic runlevel
41
41
  enabled = :false
42
42
  when self.class::STATUSLINE
43
- return enabled if @resource[:name] == $1
43
+ return enabled if @resource[:name] == Regexp.last_match(1)
44
44
  end
45
45
  end
46
46
  :false
@@ -18,16 +18,16 @@ Puppet::Type.type(:service).provide :openwrt, :parent => :init, :source => :init
18
18
  end
19
19
 
20
20
  def enable
21
- system(self.initscript, 'enable')
21
+ system(initscript, 'enable')
22
22
  end
23
23
 
24
24
  def disable
25
- system(self.initscript, 'disable')
25
+ system(initscript, 'disable')
26
26
  end
27
27
 
28
28
  def enabled?
29
29
  # We can't define the "command" for the init script, so we call system?
30
- if system(self.initscript, 'enabled') then return :true else return :false end
30
+ system(initscript, 'enabled') ? (return :true) : (return :false)
31
31
  end
32
32
 
33
33
  # Purposely leave blank so we fail back to ps based status detection
@@ -31,7 +31,7 @@ Puppet::Type.type(:service).provide :rcng, :parent => :bsd do
31
31
  # enable service by creating a service file under rc.conf.d with the
32
32
  # proper contents, or by modifying it's contents to to enable the service.
33
33
  def enable
34
- Dir.mkdir(rcconf_dir) if not Puppet::FileSystem.exist?(rcconf_dir)
34
+ Dir.mkdir(rcconf_dir) unless Puppet::FileSystem.exist?(rcconf_dir)
35
35
  rcfile = File.join(rcconf_dir, @resource[:name])
36
36
  if Puppet::FileSystem.exist?(rcfile)
37
37
  newcontents = []
@@ -41,11 +41,11 @@ Puppet::Type.type(:service).provide :rcng, :parent => :bsd do
41
41
  end
42
42
  newcontents.push(line)
43
43
  end
44
- Puppet::Util.replace_file(rcfile, 0644) do |f|
44
+ Puppet::Util.replace_file(rcfile, 0o644) do |f|
45
45
  f.puts newcontents
46
46
  end
47
47
  else
48
- Puppet::Util.replace_file(rcfile, 0644) do |f|
48
+ Puppet::Util.replace_file(rcfile, 0o644) do |f|
49
49
  f.puts "%s=${%s:=YES}\n" % [@resource[:name], @resource[:name]]
50
50
  end
51
51
  end
@@ -10,9 +10,9 @@ Puppet::Type.type(:service).provide :redhat, :parent => :init, :source => :init
10
10
 
11
11
  commands :chkconfig => "/sbin/chkconfig", :service => "/sbin/service"
12
12
 
13
- defaultfor 'os.name' => :amazon, 'os.release.major' => ["2017", "2018"]
13
+ defaultfor 'os.name' => :amazon, 'os.release.major' => %w[2017 2018]
14
14
  defaultfor 'os.name' => :redhat, 'os.release.major' => (4..6).to_a
15
- defaultfor 'os.family' => :suse, 'os.release.major' => ["10", "11"]
15
+ defaultfor 'os.family' => :suse, 'os.release.major' => %w[10 11]
16
16
 
17
17
  # Remove the symlinks
18
18
  def disable
@@ -23,7 +23,7 @@ Puppet::Type.type(:service).provide :redhat, :parent => :init, :source => :init
23
23
  # and --del removes the service from chkconfig management
24
24
  chkconfig("--level", "0123456", @resource[:name], :off)
25
25
  rescue Puppet::ExecutionFailure => detail
26
- raise Puppet::Error, "Could not disable #{self.name}: #{detail}", detail.backtrace
26
+ raise Puppet::Error, "Could not disable #{name}: #{detail}", detail.backtrace
27
27
  end
28
28
 
29
29
  def enabled?
@@ -49,7 +49,7 @@ Puppet::Type.type(:service).provide :redhat, :parent => :init, :source => :init
49
49
  chkconfig("--add", @resource[:name])
50
50
  chkconfig(@resource[:name], :on)
51
51
  rescue Puppet::ExecutionFailure => detail
52
- raise Puppet::Error, "Could not enable #{self.name}: #{detail}", detail.backtrace
52
+ raise Puppet::Error, "Could not enable #{name}: #{detail}", detail.backtrace
53
53
  end
54
54
 
55
55
  def initscript
@@ -65,7 +65,7 @@ Puppet::Type.type(:service).provide :runit, :parent => :daemontools do
65
65
 
66
66
  def status
67
67
  begin
68
- output = sv "status", self.daemon
68
+ output = sv "status", daemon
69
69
  return :running if output =~ /^run: /
70
70
  rescue Puppet::ExecutionFailure => detail
71
71
  unless detail.message =~ /(warning: |runsv not running$)/
@@ -76,7 +76,7 @@ Puppet::Type.type(:service).provide :runit, :parent => :daemontools do
76
76
  end
77
77
 
78
78
  def stop
79
- sv "stop", self.service
79
+ sv "stop", service
80
80
  end
81
81
 
82
82
  def start
@@ -86,14 +86,14 @@ Puppet::Type.type(:service).provide :runit, :parent => :daemontools do
86
86
  # runsvdir takes up to 5 seconds to recognize
87
87
  # the symlink created by this call to enable
88
88
  # TRANSLATORS 'runsvdir' is a linux service name and should not be translated
89
- Puppet.info _("Waiting 5 seconds for runsvdir to discover service %{service}") % { service: self.service }
89
+ Puppet.info _("Waiting 5 seconds for runsvdir to discover service %{service}") % { service: service }
90
90
  sleep 5
91
91
  end
92
- sv "start", self.service
92
+ sv "start", service
93
93
  end
94
94
 
95
95
  def restart
96
- sv "restart", self.service
96
+ sv "restart", service
97
97
  end
98
98
 
99
99
  # disable by removing the symlink so that runit
@@ -102,6 +102,6 @@ Puppet::Type.type(:service).provide :runit, :parent => :daemontools do
102
102
  # before a disable
103
103
  def disable
104
104
  # unlink the daemon symlink to disable it
105
- Puppet::FileSystem.unlink(self.service) if Puppet::FileSystem.symlink?(self.service)
105
+ Puppet::FileSystem.unlink(service) if Puppet::FileSystem.symlink?(service)
106
106
  end
107
107
  end
@@ -13,8 +13,8 @@ Puppet::Type.type(:service).provide :service do
13
13
  service_command(:restart)
14
14
  nil
15
15
  else
16
- self.stop
17
- self.start
16
+ stop
17
+ start
18
18
  end
19
19
  end
20
20
 
@@ -47,11 +47,9 @@ Puppet::Type.type(:service).provide :service do
47
47
  #
48
48
  # @return [Puppet::Util::Execution::ProcessOutput]
49
49
  def service_execute(type, command, fof = true, squelch = false, combine = true)
50
- begin
51
- execute(command, :failonfail => fof, :override_locale => false, :squelch => squelch, :combine => combine)
52
- rescue Puppet::ExecutionFailure => detail
53
- @resource.fail Puppet::Error, "Could not #{type} #{@resource.ref}: #{detail}", detail
54
- end
50
+ execute(command, :failonfail => fof, :override_locale => false, :squelch => squelch, :combine => combine)
51
+ rescue Puppet::ExecutionFailure => detail
52
+ @resource.fail Puppet::Error, "Could not #{type} #{@resource.ref}: #{detail}", detail
55
53
  end
56
54
 
57
55
  # Use either a specified command or the default for our provider.
@@ -63,7 +63,7 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
63
63
  end
64
64
 
65
65
  def service_exists?
66
- self.service_fmri
66
+ service_fmri
67
67
  true
68
68
  rescue Puppet::ExecutionFailure
69
69
  false
@@ -71,7 +71,7 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
71
71
 
72
72
  def setup_service
73
73
  return unless @resource[:manifest]
74
- return if self.service_exists?
74
+ return if service_exists?
75
75
 
76
76
  Puppet.notice("Importing #{@resource[:manifest]} for #{@resource[:name]}")
77
77
  svccfg(:import, @resource[:manifest])
@@ -132,7 +132,7 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
132
132
  def enabled?
133
133
  return :false unless service_exists?
134
134
 
135
- _property, _type, value = svccfg("-s", self.service_fmri, "listprop", "general/enabled").split(' ')
135
+ _property, _type, value = svccfg("-s", service_fmri, "listprop", "general/enabled").split(' ')
136
136
  value == 'true' ? :true : :false
137
137
  end
138
138
 
@@ -142,10 +142,10 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
142
142
 
143
143
  def restartcmd
144
144
  if Puppet::Util::Package.versioncmp(Puppet.runtime[:facter].value('os.release.full'), '11.2') >= 0
145
- [command(:adm), :restart, "-s", self.service_fmri]
145
+ [command(:adm), :restart, "-s", service_fmri]
146
146
  else
147
147
  # Synchronous restart only supported in Solaris 11.2 and above
148
- [command(:adm), :restart, self.service_fmri]
148
+ [command(:adm), :restart, service_fmri]
149
149
  end
150
150
  end
151
151
 
@@ -153,7 +153,7 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
153
153
  # Gets the current and next state of the service. We have a next state because SMF
154
154
  # manages services asynchronously. If there is no 'next' state, svcs will put a '-'
155
155
  # to indicate as such.
156
- current_state, next_state = svcs("-H", "-o", "state,nstate", self.service_fmri).chomp.split(' ')
156
+ current_state, next_state = svcs("-H", "-o", "state,nstate", service_fmri).chomp.split(' ')
157
157
 
158
158
  {
159
159
  :current => current_state,
@@ -168,14 +168,14 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
168
168
  def wait(*desired_states)
169
169
  Timeout.timeout(60) do
170
170
  loop do
171
- states = self.service_states
171
+ states = service_states
172
172
  break if desired_states.include?(states[:current]) && states[:next].nil?
173
173
 
174
174
  Kernel.sleep(1)
175
175
  end
176
176
  end
177
177
  rescue Timeout::Error
178
- raise Puppet::Error.new("Timed out waiting for #{@resource[:name]} to transition states")
178
+ raise Puppet::Error, "Timed out waiting for #{@resource[:name]} to transition states"
179
179
  end
180
180
 
181
181
  def start
@@ -189,7 +189,7 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
189
189
  def restart
190
190
  # Wait for the service to actually start before returning.
191
191
  super
192
- self.wait('online')
192
+ wait('online')
193
193
  end
194
194
 
195
195
  def status
@@ -206,29 +206,29 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
206
206
 
207
207
  # Get the current state and the next state. If there is a next state,
208
208
  # use that for the state comparison.
209
- states = self.service_states
209
+ states = service_states
210
210
  state = states[:next] || states[:current]
211
- rescue Puppet::ExecutionFailure
211
+ rescue Puppet::ExecutionFailure => e
212
212
  # TODO (PUP-8957): Should this be set back to INFO ?
213
- debug "Could not get status on service #{self.name} #{$!}"
213
+ debug "Could not get status on service #{name} #{e}"
214
214
  return :stopped
215
215
  end
216
216
 
217
217
  case state
218
218
  when "online"
219
- return :running
219
+ :running
220
220
  when "offline", "disabled", "uninitialized"
221
- return :stopped
221
+ :stopped
222
222
  when "maintenance"
223
- return :maintenance
223
+ :maintenance
224
224
  when "degraded"
225
- return :degraded
225
+ :degraded
226
226
  when "legacy_run"
227
227
  raise Puppet::Error,
228
228
  "Cannot manage legacy services through SMF"
229
229
  else
230
230
  raise Puppet::Error,
231
- "Unmanageable state '#{state}' on service #{self.name}"
231
+ "Unmanageable state '#{state}' on service #{name}"
232
232
  end
233
233
  end
234
234
 
@@ -238,8 +238,8 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
238
238
  def maybe_clear_service_then_svcadm(cur_state, subcmd, flags)
239
239
  # If the cur_state is maint or degraded, then we need to clear the service
240
240
  # before we enable or disable it.
241
- adm('clear', self.service_fmri) if [:maintenance, :degraded].include?(cur_state)
242
- adm(subcmd, flags, self.service_fmri)
241
+ adm('clear', service_fmri) if [:maintenance, :degraded].include?(cur_state)
242
+ adm(subcmd, flags, service_fmri)
243
243
  end
244
244
 
245
245
  # The flush method is necessary for the SMF provider because syncing the enable and ensure
@@ -248,7 +248,8 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
248
248
  def flush
249
249
  # We append the "_" because ensure is a Ruby keyword, and it is good to keep property
250
250
  # variable names consistent with each other.
251
- enable_, ensure_ = @properties_to_sync[:enable], @properties_to_sync[:ensure]
251
+ enable_ = @properties_to_sync[:enable]
252
+ ensure_ = @properties_to_sync[:ensure]
252
253
 
253
254
  # All of the relevant properties are in sync., so we do not need to do
254
255
  # anything here.
@@ -258,13 +259,13 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
258
259
  # simplifies the code. For a nonexistent service, one of enable or ensure will be true
259
260
  # here (since we're syncing them), so we can fail early if setup_service fails.
260
261
  setup_service
261
- fmri = self.service_fmri
262
+ fmri = service_fmri
262
263
 
263
264
  # Useful constants for operations involving multiple states
264
- stopped = ['offline', 'disabled', 'uninitialized']
265
+ stopped = %w[offline disabled uninitialized]
265
266
 
266
267
  # Get the current state of the service.
267
- cur_state = self.status
268
+ cur_state = status
268
269
 
269
270
  if enable_.nil?
270
271
  # Only ensure needs to be syncd. The -t flag tells svcadm to temporarily
@@ -272,10 +273,10 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
272
273
  # reboot. This is exactly what we want, because we do not want to touch
273
274
  # the enable property.
274
275
  if ensure_ == :stopped
275
- self.maybe_clear_service_then_svcadm(cur_state, 'disable', '-st')
276
+ maybe_clear_service_then_svcadm(cur_state, 'disable', '-st')
276
277
  wait(*stopped)
277
278
  else # ensure == :running
278
- self.maybe_clear_service_then_svcadm(cur_state, 'enable', '-rst')
279
+ maybe_clear_service_then_svcadm(cur_state, 'enable', '-rst')
279
280
  wait('online')
280
281
  end
281
282
 
@@ -299,9 +300,9 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
299
300
  final_state = :running if final_state == :degraded
300
301
 
301
302
  if enable_
302
- self.maybe_clear_service_then_svcadm(cur_state, 'enable', '-rs')
303
+ maybe_clear_service_then_svcadm(cur_state, 'enable', '-rs')
303
304
  else
304
- self.maybe_clear_service_then_svcadm(cur_state, 'disable', '-s')
305
+ maybe_clear_service_then_svcadm(cur_state, 'disable', '-s')
305
306
  end
306
307
 
307
308
  # We're safe with 'whens' here since self.status already errors on any
@@ -79,17 +79,17 @@ Puppet::Type.type(:service).provide :src, :parent => :base do
79
79
  end
80
80
  end
81
81
  rescue Timeout::Error
82
- raise Puppet::Error.new("Timed out waiting for #{@resource[:name]} to transition states")
82
+ raise Puppet::Error, "Timed out waiting for #{@resource[:name]} to transition states"
83
83
  end
84
84
 
85
85
  def start
86
86
  super
87
- self.wait(:running)
87
+ wait(:running)
88
88
  end
89
89
 
90
90
  def stop
91
91
  super
92
- self.wait(:stopped)
92
+ wait(:stopped)
93
93
  end
94
94
 
95
95
  def restart
@@ -111,8 +111,8 @@ Puppet::Type.type(:service).provide :src, :parent => :base do
111
111
  if do_refresh == :true
112
112
  execute([command(:refresh), "-s", @resource[:name]])
113
113
  else
114
- self.stop
115
- self.start
114
+ stop
115
+ start
116
116
  end
117
117
  return :true
118
118
  rescue Puppet::ExecutionFailure => detail
@@ -141,7 +141,7 @@ Puppet::Type.type(:service).provide :src, :parent => :base do
141
141
  return state
142
142
  end
143
143
  rescue Puppet::ExecutionFailure => detail
144
- self.debug(detail.message)
145
- return :stopped
144
+ debug(detail.message)
145
+ :stopped
146
146
  end
147
147
  end