puppet 5.3.7 → 5.4.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (454) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +42 -29
  3. data/README.md +8 -6
  4. data/ext/cert_inspector +2 -2
  5. data/ext/envpuppet +1 -1
  6. data/ext/gentoo/init.d/puppetmaster +4 -4
  7. data/ext/ips/puppet-agent +11 -11
  8. data/ext/ips/puppet-master +11 -11
  9. data/ext/puppet-test +1 -2
  10. data/ext/redhat/client.init +2 -2
  11. data/ext/redhat/logrotate +1 -1
  12. data/ext/solaris/smf/puppet +11 -11
  13. data/ext/solaris/smf/svc-puppetd +5 -5
  14. data/ext/solaris/smf/svc-puppetmasterd +5 -5
  15. data/ext/windows/service/daemon.rb +1 -1
  16. data/install.rb +2 -3
  17. data/lib/puppet/agent.rb +1 -1
  18. data/lib/puppet/application/cert.rb +1 -3
  19. data/lib/puppet/application/describe.rb +0 -1
  20. data/lib/puppet/application/device.rb +12 -99
  21. data/lib/puppet/application/filebucket.rb +32 -11
  22. data/lib/puppet/application/lookup.rb +1 -11
  23. data/lib/puppet/application/script.rb +261 -0
  24. data/lib/puppet/configurer.rb +3 -4
  25. data/lib/puppet/configurer/plugin_handler.rb +26 -9
  26. data/lib/puppet/context.rb +1 -1
  27. data/lib/puppet/datatypes.rb +213 -0
  28. data/lib/puppet/datatypes/error.rb +21 -0
  29. data/lib/puppet/datatypes/impl/error.rb +40 -0
  30. data/lib/puppet/defaults.rb +51 -20
  31. data/lib/puppet/environments.rb +17 -0
  32. data/lib/puppet/error.rb +17 -0
  33. data/lib/puppet/etc.rb +2 -2
  34. data/lib/puppet/external/pson/pure/generator.rb +1 -1
  35. data/lib/puppet/external/pson/pure/parser.rb +1 -1
  36. data/lib/puppet/face/config.rb +45 -0
  37. data/lib/puppet/face/epp.rb +3 -3
  38. data/lib/puppet/face/help/action.erb +3 -0
  39. data/lib/puppet/face/module/build.rb +1 -0
  40. data/lib/puppet/face/module/generate.rb +5 -0
  41. data/lib/puppet/face/module/install.rb +1 -0
  42. data/lib/puppet/face/module/search.rb +6 -2
  43. data/lib/puppet/face/module/uninstall.rb +1 -0
  44. data/lib/puppet/face/module/upgrade.rb +1 -0
  45. data/lib/puppet/face/parser.rb +0 -1
  46. data/lib/puppet/face/plugin.rb +1 -3
  47. data/lib/puppet/feature/base.rb +1 -1
  48. data/lib/puppet/feature/bolt.rb +3 -0
  49. data/lib/puppet/file_bucket/dipper.rb +1 -2
  50. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  51. data/lib/puppet/file_system/uniquefile.rb +2 -2
  52. data/lib/puppet/forge.rb +6 -0
  53. data/lib/puppet/functions.rb +70 -88
  54. data/lib/puppet/functions/all.rb +6 -2
  55. data/lib/puppet/functions/annotate.rb +1 -1
  56. data/lib/puppet/functions/any.rb +7 -3
  57. data/lib/puppet/functions/contain.rb +6 -0
  58. data/lib/puppet/functions/convert_to.rb +32 -0
  59. data/lib/puppet/functions/defined.rb +0 -3
  60. data/lib/puppet/functions/each.rb +10 -6
  61. data/lib/puppet/functions/filter.rb +16 -10
  62. data/lib/puppet/functions/find_file.rb +0 -1
  63. data/lib/puppet/functions/include.rb +6 -0
  64. data/lib/puppet/functions/map.rb +12 -9
  65. data/lib/puppet/functions/module_directory.rb +41 -0
  66. data/lib/puppet/functions/new.rb +1 -4
  67. data/lib/puppet/functions/regsubst.rb +1 -1
  68. data/lib/puppet/functions/require.rb +6 -0
  69. data/lib/puppet/generate/type.rb +1 -1
  70. data/lib/puppet/gettext/config.rb +2 -2
  71. data/lib/puppet/gettext/stubs.rb +1 -1
  72. data/lib/puppet/indirector/catalog/compiler.rb +0 -1
  73. data/lib/puppet/indirector/file_bucket_file/file.rb +6 -2
  74. data/lib/puppet/indirector/file_server.rb +1 -1
  75. data/lib/puppet/indirector/node/ldap.rb +19 -3
  76. data/lib/puppet/indirector/request.rb +10 -6
  77. data/lib/puppet/indirector/rest.rb +11 -12
  78. data/lib/puppet/info_service/class_information_service.rb +1 -1
  79. data/lib/puppet/interface/action.rb +11 -0
  80. data/lib/puppet/interface/action_builder.rb +8 -0
  81. data/lib/puppet/interface/option_manager.rb +1 -1
  82. data/lib/puppet/loaders.rb +2 -0
  83. data/lib/puppet/module.rb +6 -2
  84. data/lib/puppet/module_tool/applications/builder.rb +4 -0
  85. data/lib/puppet/module_tool/applications/installer.rb +3 -0
  86. data/lib/puppet/module_tool/applications/uninstaller.rb +3 -0
  87. data/lib/puppet/module_tool/applications/unpacker.rb +1 -1
  88. data/lib/puppet/module_tool/applications/upgrader.rb +3 -0
  89. data/lib/puppet/module_tool/installed_modules.rb +1 -1
  90. data/lib/puppet/module_tool/metadata.rb +0 -1
  91. data/lib/puppet/network/authstore.rb +1 -1
  92. data/lib/puppet/network/http/api/indirected_routes.rb +1 -1
  93. data/lib/puppet/network/http/connection.rb +1 -9
  94. data/lib/puppet/network/http/factory.rb +0 -3
  95. data/lib/puppet/network/http/webrick.rb +1 -0
  96. data/lib/puppet/network/rights.rb +1 -1
  97. data/lib/puppet/node.rb +53 -0
  98. data/lib/puppet/node/environment.rb +1 -1
  99. data/lib/puppet/parameter/boolean.rb +1 -1
  100. data/lib/puppet/parser.rb +1 -0
  101. data/lib/puppet/parser/abstract_compiler.rb +36 -0
  102. data/lib/puppet/parser/ast/branch.rb +1 -1
  103. data/lib/puppet/parser/ast/pops_bridge.rb +8 -52
  104. data/lib/puppet/parser/compiler.rb +4 -54
  105. data/lib/puppet/parser/functions.rb +0 -1
  106. data/lib/puppet/parser/functions/create_resources.rb +6 -0
  107. data/lib/puppet/parser/functions/fqdn_rand.rb +6 -2
  108. data/lib/puppet/parser/functions/inline_template.rb +6 -0
  109. data/lib/puppet/parser/functions/new.rb +47 -32
  110. data/lib/puppet/parser/functions/realize.rb +6 -0
  111. data/lib/puppet/parser/functions/return.rb +1 -22
  112. data/lib/puppet/parser/functions/reverse_each.rb +1 -1
  113. data/lib/puppet/parser/functions/scanf.rb +1 -1
  114. data/lib/puppet/parser/functions/sha256.rb +5 -0
  115. data/lib/puppet/parser/functions/tag.rb +6 -0
  116. data/lib/puppet/parser/functions/tagged.rb +6 -0
  117. data/lib/puppet/parser/functions/template.rb +5 -0
  118. data/lib/puppet/parser/scope.rb +28 -4
  119. data/lib/puppet/parser/script_compiler.rb +118 -0
  120. data/lib/puppet/parser/type_loader.rb +1 -1
  121. data/lib/puppet/pops.rb +1 -1
  122. data/lib/puppet/pops/evaluator/access_operator.rb +38 -4
  123. data/lib/puppet/pops/evaluator/closure.rb +12 -4
  124. data/lib/puppet/pops/evaluator/compare_operator.rb +4 -4
  125. data/lib/puppet/pops/evaluator/epp_evaluator.rb +13 -0
  126. data/lib/puppet/pops/evaluator/evaluator_impl.rb +38 -10
  127. data/lib/puppet/pops/evaluator/literal_evaluator.rb +1 -1
  128. data/lib/puppet/pops/evaluator/runtime3_converter.rb +1 -1
  129. data/lib/puppet/pops/evaluator/runtime3_support.rb +2 -3
  130. data/lib/puppet/pops/functions/dispatch.rb +6 -5
  131. data/lib/puppet/pops/functions/function.rb +2 -2
  132. data/lib/puppet/pops/issues.rb +34 -2
  133. data/lib/puppet/pops/loader/base_loader.rb +10 -0
  134. data/lib/puppet/pops/loader/dependency_loader.rb +7 -0
  135. data/lib/puppet/pops/loader/loader.rb +21 -2
  136. data/lib/puppet/pops/loader/loader_paths.rb +180 -30
  137. data/lib/puppet/pops/loader/module_loaders.rb +202 -33
  138. data/lib/puppet/pops/loader/puppet_plan_instantiator.rb +84 -0
  139. data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +9 -9
  140. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +40 -0
  141. data/lib/puppet/pops/loader/runtime3_type_loader.rb +6 -1
  142. data/lib/puppet/pops/loader/static_loader.rb +23 -8
  143. data/lib/puppet/pops/loader/task_instantiator.rb +69 -0
  144. data/lib/puppet/pops/loader/type_definition_instantiator.rb +4 -0
  145. data/lib/puppet/pops/loaders.rb +122 -11
  146. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  147. data/lib/puppet/pops/lookup/interpolation.rb +1 -1
  148. data/lib/puppet/pops/lookup/lookup_adapter.rb +0 -1
  149. data/lib/puppet/pops/model/ast.pp +3 -0
  150. data/lib/puppet/pops/model/ast.rb +34 -1
  151. data/lib/puppet/pops/model/factory.rb +30 -3
  152. data/lib/puppet/pops/model/model_label_provider.rb +1 -0
  153. data/lib/puppet/pops/model/model_tree_dumper.rb +12 -1
  154. data/lib/puppet/pops/model/tree_dumper.rb +1 -1
  155. data/lib/puppet/pops/parser/code_merger.rb +2 -2
  156. data/lib/puppet/pops/parser/egrammar.ra +44 -15
  157. data/lib/puppet/pops/parser/eparser.rb +1687 -1571
  158. data/lib/puppet/pops/parser/epp_support.rb +1 -3
  159. data/lib/puppet/pops/parser/evaluating_parser.rb +1 -1
  160. data/lib/puppet/pops/parser/interpolation_support.rb +2 -2
  161. data/lib/puppet/pops/parser/lexer2.rb +4 -4
  162. data/lib/puppet/pops/parser/lexer_support.rb +2 -2
  163. data/lib/puppet/pops/parser/locatable.rb +1 -1
  164. data/lib/puppet/pops/parser/locator.rb +7 -13
  165. data/lib/puppet/pops/parser/parser_support.rb +3 -3
  166. data/lib/puppet/pops/parser/slurp_support.rb +0 -3
  167. data/lib/puppet/pops/pcore.rb +45 -0
  168. data/lib/puppet/pops/resource/param.rb +1 -1
  169. data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
  170. data/lib/puppet/pops/serialization/abstract_reader.rb +4 -0
  171. data/lib/puppet/pops/serialization/abstract_writer.rb +6 -0
  172. data/lib/puppet/pops/serialization/extension.rb +1 -0
  173. data/lib/puppet/pops/serialization/from_data_converter.rb +64 -10
  174. data/lib/puppet/pops/serialization/json_path.rb +2 -1
  175. data/lib/puppet/pops/serialization/object.rb +3 -4
  176. data/lib/puppet/pops/serialization/serializer.rb +2 -1
  177. data/lib/puppet/pops/serialization/to_data_converter.rb +7 -3
  178. data/lib/puppet/pops/time/timespan.rb +1 -1
  179. data/lib/puppet/pops/types/iterable.rb +38 -9
  180. data/lib/puppet/pops/types/p_init_type.rb +1 -1
  181. data/lib/puppet/pops/types/p_meta_type.rb +4 -0
  182. data/lib/puppet/pops/types/p_object_type.rb +146 -14
  183. data/lib/puppet/pops/types/p_object_type_extension.rb +218 -0
  184. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +0 -1
  185. data/lib/puppet/pops/types/p_sem_ver_type.rb +10 -2
  186. data/lib/puppet/pops/types/p_type_set_type.rb +0 -1
  187. data/lib/puppet/pops/types/p_uri_type.rb +190 -0
  188. data/lib/puppet/pops/types/puppet_object.rb +15 -1
  189. data/lib/puppet/pops/types/ruby_generator.rb +46 -54
  190. data/lib/puppet/pops/types/string_converter.rb +22 -1
  191. data/lib/puppet/pops/types/type_acceptor.rb +1 -1
  192. data/lib/puppet/pops/types/type_calculator.rb +13 -4
  193. data/lib/puppet/pops/types/type_factory.rb +29 -5
  194. data/lib/puppet/pops/types/type_formatter.rb +67 -4
  195. data/lib/puppet/pops/types/type_parser.rb +92 -4
  196. data/lib/puppet/pops/types/type_with_members.rb +43 -0
  197. data/lib/puppet/pops/types/types.rb +212 -80
  198. data/lib/puppet/pops/validation/checker4_0.rb +10 -6
  199. data/lib/puppet/pops/validation/tasks_checker.rb +60 -0
  200. data/lib/puppet/pops/validation/validator_factory_4_0.rb +6 -1
  201. data/lib/puppet/property.rb +1 -1
  202. data/lib/puppet/provider.rb +18 -8
  203. data/lib/puppet/provider/augeas/augeas.rb +3 -4
  204. data/lib/puppet/provider/exec.rb +0 -2
  205. data/lib/puppet/provider/group/groupadd.rb +25 -1
  206. data/lib/puppet/provider/group/windows_adsi.rb +7 -4
  207. data/lib/puppet/provider/mount.rb +25 -8
  208. data/lib/puppet/provider/nameservice.rb +9 -4
  209. data/lib/puppet/provider/nameservice/directoryservice.rb +3 -3
  210. data/lib/puppet/provider/nameservice/objectadd.rb +13 -24
  211. data/lib/puppet/provider/nameservice/pw.rb +14 -14
  212. data/lib/puppet/provider/package/appdmg.rb +0 -1
  213. data/lib/puppet/provider/package/apple.rb +0 -1
  214. data/lib/puppet/provider/package/gem.rb +2 -2
  215. data/lib/puppet/provider/package/macports.rb +2 -2
  216. data/lib/puppet/provider/package/pkg.rb +3 -0
  217. data/lib/puppet/provider/package/pkgdmg.rb +0 -1
  218. data/lib/puppet/provider/package/portage.rb +0 -1
  219. data/lib/puppet/provider/package/yum.rb +23 -8
  220. data/lib/puppet/provider/package/zypper.rb +2 -2
  221. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +2 -2
  222. data/lib/puppet/provider/service/init.rb +1 -0
  223. data/lib/puppet/provider/service/launchd.rb +6 -7
  224. data/lib/puppet/provider/service/redhat.rb +3 -2
  225. data/lib/puppet/provider/service/systemd.rb +2 -2
  226. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +1 -1
  227. data/lib/puppet/provider/user/aix.rb +3 -2
  228. data/lib/puppet/provider/user/openbsd.rb +1 -1
  229. data/lib/puppet/provider/user/pw.rb +1 -1
  230. data/lib/puppet/provider/user/user_role_add.rb +7 -1
  231. data/lib/puppet/provider/user/useradd.rb +36 -6
  232. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  233. data/lib/puppet/provider/yumrepo/inifile.rb +2 -4
  234. data/lib/puppet/provider/zfs/zfs.rb +23 -3
  235. data/lib/puppet/provider/zpool/zpool.rb +1 -1
  236. data/lib/puppet/reference/configuration.rb +0 -2
  237. data/lib/puppet/reference/type.rb +0 -1
  238. data/lib/puppet/resource.rb +1 -2
  239. data/lib/puppet/resource/catalog.rb +1 -1
  240. data/lib/puppet/resource/status.rb +0 -1
  241. data/lib/puppet/resource/type.rb +4 -4
  242. data/lib/puppet/resource/type_collection.rb +1 -1
  243. data/lib/puppet/settings/base_setting.rb +1 -1
  244. data/lib/puppet/settings/environment_conf.rb +0 -1
  245. data/lib/puppet/settings/ini_file.rb +66 -12
  246. data/lib/puppet/ssl/certificate_authority.rb +1 -1
  247. data/lib/puppet/ssl/certificate_request.rb +2 -2
  248. data/lib/puppet/ssl/certificate_revocation_list.rb +2 -1
  249. data/lib/puppet/ssl/certificate_signer.rb +11 -0
  250. data/lib/puppet/ssl/host.rb +2 -2
  251. data/lib/puppet/syntax_checkers/base64.rb +1 -1
  252. data/lib/puppet/transaction.rb +37 -14
  253. data/lib/puppet/transaction/report.rb +3 -1
  254. data/lib/puppet/type.rb +17 -4
  255. data/lib/puppet/type/cron.rb +1 -1
  256. data/lib/puppet/type/exec.rb +5 -4
  257. data/lib/puppet/type/file.rb +3 -3
  258. data/lib/puppet/type/file/checksum.rb +7 -1
  259. data/lib/puppet/type/file/checksum_value.rb +4 -3
  260. data/lib/puppet/type/group.rb +3 -0
  261. data/lib/puppet/type/k5login.rb +101 -0
  262. data/lib/puppet/type/macauthorization.rb +1 -1
  263. data/lib/puppet/type/mount.rb +6 -2
  264. data/lib/puppet/type/tidy.rb +6 -4
  265. data/lib/puppet/type/user.rb +26 -39
  266. data/lib/puppet/type/yumrepo.rb +9 -0
  267. data/lib/puppet/type/zfs.rb +4 -0
  268. data/lib/puppet/util.rb +8 -15
  269. data/lib/puppet/util/character_encoding.rb +2 -2
  270. data/lib/puppet/util/checksums.rb +82 -1
  271. data/lib/puppet/util/errors.rb +0 -2
  272. data/lib/puppet/util/filetype.rb +2 -2
  273. data/lib/puppet/util/json_lockfile.rb +1 -1
  274. data/lib/puppet/util/log.rb +1 -1
  275. data/lib/puppet/util/log/destinations.rb +10 -1
  276. data/lib/puppet/util/monkey_patches.rb +1 -1
  277. data/lib/puppet/util/network_device/cisco/device.rb +5 -5
  278. data/lib/puppet/util/network_device/config.rb +2 -3
  279. data/lib/puppet/util/platform.rb +13 -0
  280. data/lib/puppet/util/plist.rb +4 -4
  281. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +2 -2
  282. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  283. data/lib/puppet/util/reference.rb +8 -1
  284. data/lib/puppet/util/windows/adsi.rb +18 -15
  285. data/lib/puppet/util/windows/principal.rb +6 -7
  286. data/lib/puppet/util/windows/process.rb +1 -1
  287. data/lib/puppet/util/windows/registry.rb +2 -2
  288. data/lib/puppet/util/windows/sid.rb +7 -62
  289. data/lib/puppet/vendor/deep_merge/README.md +2 -2
  290. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +18 -18
  291. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +2 -2
  292. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +5 -5
  293. data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +1 -1
  294. data/lib/puppet/version.rb +1 -1
  295. data/lib/puppet_pal.rb +874 -0
  296. data/locales/ja/puppet.po +140 -163
  297. data/locales/puppet.pot +940 -597
  298. data/man/man5/puppet.conf.5 +16 -91
  299. data/man/man8/puppet-agent.8 +2 -6
  300. data/man/man8/puppet-apply.8 +2 -2
  301. data/man/man8/puppet-ca.8 +1 -1
  302. data/man/man8/puppet-catalog.8 +1 -1
  303. data/man/man8/puppet-cert.8 +1 -1
  304. data/man/man8/puppet-certificate.8 +1 -1
  305. data/man/man8/puppet-certificate_request.8 +1 -1
  306. data/man/man8/puppet-certificate_revocation_list.8 +1 -1
  307. data/man/man8/puppet-config.8 +1 -1
  308. data/man/man8/puppet-describe.8 +1 -1
  309. data/man/man8/puppet-device.8 +11 -33
  310. data/man/man8/puppet-doc.8 +1 -1
  311. data/man/man8/puppet-epp.8 +1 -1
  312. data/man/man8/puppet-facts.8 +1 -1
  313. data/man/man8/puppet-filebucket.8 +4 -22
  314. data/man/man8/puppet-generate.8 +1 -1
  315. data/man/man8/puppet-help.8 +1 -1
  316. data/man/man8/puppet-key.8 +1 -1
  317. data/man/man8/puppet-lookup.8 +1 -1
  318. data/man/man8/puppet-man.8 +1 -1
  319. data/man/man8/puppet-master.8 +1 -1
  320. data/man/man8/puppet-module.8 +2 -11
  321. data/man/man8/puppet-node.8 +1 -1
  322. data/man/man8/puppet-parser.8 +1 -1
  323. data/man/man8/puppet-plugin.8 +1 -1
  324. data/man/man8/puppet-report.8 +1 -1
  325. data/man/man8/puppet-resource.8 +1 -1
  326. data/man/man8/puppet-status.8 +1 -1
  327. data/man/man8/puppet.8 +2 -2
  328. data/spec/integration/application/lookup_spec.rb +0 -21
  329. data/spec/integration/parser/compiler_spec.rb +18 -0
  330. data/spec/integration/parser/script_compiler_spec.rb +113 -0
  331. data/spec/integration/provider/mount_spec.rb +2 -0
  332. data/spec/integration/type/file_spec.rb +11 -3
  333. data/spec/integration/util/windows/adsi_spec.rb +1 -86
  334. data/spec/integration/util/windows/principal_spec.rb +1 -10
  335. data/spec/shared_contexts/checksum.rb +4 -1
  336. data/spec/shared_contexts/digests.rb +46 -1
  337. data/spec/shared_contexts/types_setup.rb +8 -3
  338. data/spec/unit/agent_spec.rb +2 -2
  339. data/spec/unit/application/cert_spec.rb +5 -17
  340. data/spec/unit/application/device_spec.rb +2 -96
  341. data/spec/unit/application/filebucket_spec.rb +18 -4
  342. data/spec/unit/configurer/plugin_handler_spec.rb +5 -32
  343. data/spec/unit/configurer_spec.rb +3 -3
  344. data/spec/unit/datatypes_spec.rb +304 -0
  345. data/spec/unit/defaults_spec.rb +41 -20
  346. data/spec/unit/face/config_spec.rb +46 -1
  347. data/spec/unit/face/epp_face_spec.rb +7 -3
  348. data/spec/unit/face/module/search_spec.rb +11 -0
  349. data/spec/unit/face/parser_spec.rb +2 -2
  350. data/spec/unit/file_bucket/dipper_spec.rb +12 -1
  351. data/spec/unit/forge/module_release_spec.rb +70 -0
  352. data/spec/unit/functions/break_spec.rb +34 -2
  353. data/spec/unit/functions/contain_spec.rb +1 -0
  354. data/spec/unit/functions/convert_to_spec.rb +22 -0
  355. data/spec/unit/functions/epp_spec.rb +5 -0
  356. data/spec/unit/functions/include_spec.rb +15 -0
  357. data/spec/unit/functions/module_directory_spec.rb +43 -0
  358. data/spec/unit/functions/new_spec.rb +14 -14
  359. data/spec/unit/functions/require_spec.rb +2 -0
  360. data/spec/unit/functions/shared.rb +12 -0
  361. data/spec/unit/functions/step_spec.rb +1 -1
  362. data/spec/unit/functions4_spec.rb +49 -4
  363. data/spec/unit/indirector/catalog/compiler_spec.rb +3 -3
  364. data/spec/unit/indirector/file_bucket_file/file_spec.rb +148 -94
  365. data/spec/unit/indirector/node/ldap_spec.rb +15 -12
  366. data/spec/unit/indirector/rest_spec.rb +0 -43
  367. data/spec/unit/interface/action_spec.rb +33 -0
  368. data/spec/unit/module_tool/applications/builder_spec.rb +7 -0
  369. data/spec/unit/module_tool/applications/installer_spec.rb +8 -0
  370. data/spec/unit/module_tool/applications/uninstaller_spec.rb +8 -0
  371. data/spec/unit/module_tool/applications/upgrader_spec.rb +6 -0
  372. data/spec/unit/network/http/connection_spec.rb +1 -1
  373. data/spec/unit/network/http/factory_spec.rb +28 -35
  374. data/spec/unit/parser/compiler_spec.rb +0 -8
  375. data/spec/unit/parser/environment_compiler_spec.rb +36 -0
  376. data/spec/unit/parser/functions/create_resources_spec.rb +9 -0
  377. data/spec/unit/parser/functions/inline_template_spec.rb +7 -0
  378. data/spec/unit/parser/functions/realize_spec.rb +9 -0
  379. data/spec/unit/parser/functions/tag_spec.rb +7 -0
  380. data/spec/unit/parser/functions/tagged_spec.rb +25 -0
  381. data/spec/unit/parser/functions/template_spec.rb +8 -0
  382. data/spec/unit/parser/scope_spec.rb +19 -0
  383. data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -1
  384. data/spec/unit/pops/loaders/loader_spec.rb +516 -0
  385. data/spec/unit/pops/loaders/loaders_spec.rb +11 -0
  386. data/spec/unit/pops/loaders/module_loaders_spec.rb +43 -0
  387. data/spec/unit/pops/loaders/static_loader_spec.rb +15 -7
  388. data/spec/unit/pops/model/model_spec.rb +5 -0
  389. data/spec/unit/pops/parser/lexer2_spec.rb +15 -0
  390. data/spec/unit/pops/parser/locator_spec.rb +20 -0
  391. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +33 -0
  392. data/spec/unit/pops/parser/parse_calls_spec.rb +28 -0
  393. data/spec/unit/pops/parser/parse_conditionals_spec.rb +12 -0
  394. data/spec/unit/pops/parser/parse_plan_spec.rb +48 -0
  395. data/spec/unit/pops/serialization/packer_spec.rb +8 -0
  396. data/spec/unit/pops/serialization/serialization_spec.rb +30 -0
  397. data/spec/unit/pops/serialization/to_from_hr_spec.rb +31 -0
  398. data/spec/unit/pops/types/error_spec.rb +207 -0
  399. data/spec/unit/pops/types/p_init_type_spec.rb +98 -0
  400. data/spec/unit/pops/types/p_object_type_spec.rb +275 -10
  401. data/spec/unit/pops/types/p_uri_type_spec.rb +191 -0
  402. data/spec/unit/pops/types/ruby_generator_spec.rb +82 -44
  403. data/spec/unit/pops/types/task_spec.rb +353 -0
  404. data/spec/unit/pops/types/type_calculator_spec.rb +76 -5
  405. data/spec/unit/pops/types/type_formatter_spec.rb +31 -13
  406. data/spec/unit/pops/types/type_parser_spec.rb +13 -1
  407. data/spec/unit/pops/types/types_spec.rb +60 -0
  408. data/spec/unit/pops/validator/validator_spec.rb +76 -0
  409. data/spec/unit/provider/group/groupadd_spec.rb +77 -1
  410. data/spec/unit/provider/group/pw_spec.rb +4 -4
  411. data/spec/unit/provider/group/windows_adsi_spec.rb +22 -79
  412. data/spec/unit/provider/mount_spec.rb +18 -5
  413. data/spec/unit/provider/nameservice_spec.rb +5 -5
  414. data/spec/unit/provider/package/dnf_spec.rb +2 -2
  415. data/spec/unit/provider/package/gem_spec.rb +1 -1
  416. data/spec/unit/provider/package/pkg_spec.rb +3 -0
  417. data/spec/unit/provider/package/yum_spec.rb +40 -0
  418. data/spec/unit/provider/service/launchd_spec.rb +2 -1
  419. data/spec/unit/provider/service/redhat_spec.rb +5 -0
  420. data/spec/unit/provider/service/systemd_spec.rb +1 -1
  421. data/spec/unit/provider/user/hpux_spec.rb +2 -2
  422. data/spec/unit/provider/user/openbsd_spec.rb +2 -2
  423. data/spec/unit/provider/user/pw_spec.rb +14 -14
  424. data/spec/unit/provider/user/user_role_add_spec.rb +19 -2
  425. data/spec/unit/provider/user/useradd_spec.rb +188 -22
  426. data/spec/unit/provider/user/windows_adsi_spec.rb +4 -4
  427. data/spec/unit/provider/zfs/zfs_spec.rb +55 -1
  428. data/spec/unit/provider_spec.rb +48 -0
  429. data/spec/unit/puppet_pal_2pec.rb +1005 -0
  430. data/spec/unit/puppet_pal_spec.rb +11 -0
  431. data/spec/unit/settings/ini_file_spec.rb +313 -2
  432. data/spec/unit/ssl/certificate_request_spec.rb +42 -1
  433. data/spec/unit/ssl/certificate_revocation_list_spec.rb +2 -1
  434. data/spec/unit/transaction/report_spec.rb +1 -0
  435. data/spec/unit/transaction_spec.rb +112 -21
  436. data/spec/unit/type/file/checksum_spec.rb +20 -0
  437. data/spec/unit/type/file_spec.rb +8 -0
  438. data/spec/unit/type/group_spec.rb +8 -0
  439. data/spec/unit/type/k5login_spec.rb +22 -1
  440. data/spec/unit/type/scheduled_task_spec.rb +15 -0
  441. data/spec/unit/type/user_spec.rb +11 -1
  442. data/spec/unit/type/yumrepo_spec.rb +5 -0
  443. data/spec/unit/util/checksums_spec.rb +3 -3
  444. data/spec/unit/util/log/destinations_spec.rb +14 -0
  445. data/spec/unit/util/network_device/cisco/device_spec.rb +1 -1
  446. data/spec/unit/util/plist_spec.rb +3 -3
  447. data/spec/unit/util/windows/adsi_spec.rb +27 -31
  448. data/spec/unit/util/windows/sid_spec.rb +15 -86
  449. data/spec/unit/util_spec.rb +17 -3
  450. data/tasks/manpages.rake +1 -1
  451. metadata +216 -178
  452. data/lib/puppet/bindings.rb +0 -148
  453. data/lib/puppet/configurer/downloader_factory.rb +0 -44
  454. data/spec/unit/configurer/downloader_factory_spec.rb +0 -129
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2a89923499069bb0d0ebffd3adfc7454c6c87a26
4
- data.tar.gz: 61aecec7d0f54c192990f44a690c70406c9a78d5
3
+ metadata.gz: bbcab5f5cb4399541643f5eed9ca003120fb707b
4
+ data.tar.gz: fe7a7969462ef7ad3d248565e3e82b0832575a69
5
5
  SHA512:
6
- metadata.gz: 84514f060de77aa28cd938719358857343ced288425f384e8692344574bc1af16790f0861b3e4209872eb7165ba39869038f683a47b0574dbd30bf4d5c86d8e3
7
- data.tar.gz: 901d30f458df772d33b4a22a557729b6bb14a6042a24942d7c68563c5fac9d9ccf8f869434ec7efd809674082b0a44340d1f498422f2e9c1d5f7c47baf573f3d
6
+ metadata.gz: 59d5e430fcd6c54af6edcf3ea9118b1ed06ac993556b1a203be500a1448667f838479e7c614375033dbbf0eef986ce02cc89df1779c9834e80422657e9889bd8
7
+ data.tar.gz: 0ae09468a1d6783a3a4932d318319ecfbf651816c30c451edaa2f7c5175c1beea514a50b45832d488f95877d56099eb38bb370730248ebcb169f243a3ebfafb2
@@ -27,13 +27,13 @@ the [puppet-dev mailing list](https://groups.google.com/forum/#!forum/puppet-dev
27
27
 
28
28
  ## Getting Started
29
29
 
30
- * Make sure you have a [Jira account](https://tickets.puppetlabs.com)
31
- * Make sure you have a [GitHub account](https://github.com/signup/free)
30
+ * Make sure you have a [Jira account](https://tickets.puppetlabs.com).
31
+ * Make sure you have a [GitHub account](https://github.com/signup/free).
32
32
  * Submit a Jira ticket for your issue if one does not already exist.
33
- * Clearly describe the issue including steps to reproduce when it is a bug
33
+ * Clearly describe the issue including steps to reproduce when it is a bug.
34
34
  * Make sure you fill in the earliest version that you know has the issue.
35
35
  * A ticket is not necessary for [trivial changes](https://docs.puppet.com/community/trivial_patch_exemption.html)
36
- * Fork the repository on GitHub
36
+ * Fork the repository on GitHub.
37
37
 
38
38
  ## Making Changes
39
39
 
@@ -41,27 +41,29 @@ the [puppet-dev mailing list](https://groups.google.com/forum/#!forum/puppet-dev
41
41
  * This is usually the master branch.
42
42
  * Only target release branches if you are certain your fix must be on that
43
43
  branch.
44
- * To quickly create a topic branch based on master; `git checkout -b
44
+ * To quickly create a topic branch based on master, run `git checkout -b
45
45
  fix/master/my_contribution master`. Please avoid working directly on the
46
46
  `master` branch.
47
47
  * Make commits of logical and atomic units.
48
48
  * Check for unnecessary whitespace with `git diff --check` before committing.
49
- * Make sure your commit messages are in the proper format.
50
-
51
- ````
52
- (PUP-1234) Make the example in CONTRIBUTING imperative and concrete
53
-
54
- Without this patch applied the example commit message in the CONTRIBUTING
55
- document is not a concrete example. This is a problem because the
56
- contributor is left to imagine what the commit message should look like
57
- based on a description rather than an example. This patch fixes the
58
- problem by making the example concrete and imperative.
59
-
60
- The first line is a real life imperative statement with a ticket number
61
- from our issue tracker. The body describes the behavior without the patch,
62
- why this is a problem, and how the patch fixes the problem when applied.
63
- ````
64
-
49
+ * Make sure your commit messages are in the proper format. If the commit
50
+ addresses an issue filed in the
51
+ [Puppet Jira project](https://tickets.puppetlabs.com/browse/PUP), start
52
+ the first line of the commit with the issue number in parentheses.
53
+
54
+ ```
55
+ (PUP-1234) Make the example in CONTRIBUTING imperative and concrete
56
+
57
+ Without this patch applied the example commit message in the CONTRIBUTING
58
+ document is not a concrete example. This is a problem because the
59
+ contributor is left to imagine what the commit message should look like
60
+ based on a description rather than an example. This patch fixes the
61
+ problem by making the example concrete and imperative.
62
+
63
+ The first line is a real-life imperative statement with a ticket number
64
+ from our issue tracker. The body describes the behavior without the patch,
65
+ why this is a problem, and how the patch fixes the problem when applied.
66
+ ```
65
67
  * Make sure you have added the necessary tests for your changes.
66
68
  * Run _all_ the tests to assure nothing else was accidentally broken. First
67
69
  install all the test dependencies with `bundle install --path .bundle`. Then
@@ -77,9 +79,10 @@ wrapped in the `_()` translation function, so they can be extracted into files
77
79
  for the translators.
78
80
 
79
81
  When adding user-facing strings to your work, follow these guidelines:
82
+
80
83
  * Use full sentences. Strings built up out of concatenated bits are hard to translate.
81
84
  * Use string formatting instead of interpolation. Use the hash format and give good names to the placeholder values that can be used by translators to understand the meaning of the formatted values.
82
- Ex. `_('Creating new user %{name}.') % { name: user.name }`
85
+ For example: `_('Creating new user %{name}.') % { name: user.name }`
83
86
  * Use `n_()` for pluralization. (see gettext gem docs linked above for details)
84
87
 
85
88
  It is the responsibility of contributors and code reviewers to ensure that all
@@ -92,25 +95,33 @@ ticket in Jira. In this case, it is appropriate to start the first line of a
92
95
  commit with one of `(docs)`, `(maint)`, or `(packaging)` instead of a ticket
93
96
  number.
94
97
 
95
- ````
96
- (docs) Add documentation commit example to CONTRIBUTING
98
+ If a Jira ticket exists for the documentation commit, you can include it
99
+ after the `(docs)` token.
100
+
101
+ ```
102
+ (docs)(DOCUMENT-000) Add docs commit example to CONTRIBUTING
97
103
 
98
104
  There is no example for contributing a documentation commit
99
105
  to the Puppet repository. This is a problem because the contributor
100
106
  is left to assume how a commit of this nature may appear.
101
107
 
102
- The first line is a real life imperative statement with '(doc)' in
103
- place of what would have been the ticket number in a
108
+ The first line is a real-life imperative statement with '(docs)' in
109
+ place of what would have been the PUP project ticket number in a
104
110
  non-documentation related commit. The body describes the nature of
105
111
  the new documentation or comments added.
106
- ````
112
+ ```
113
+
114
+ For commits that address trivial repository maintenance tasks or packaging
115
+ issues, start the first line of the commit with `(maint)` or `(packaging)`,
116
+ respectively.
107
117
 
108
118
  ## Submitting Changes
109
119
 
110
120
  * Sign the [Contributor License Agreement](http://links.puppet.com/cla).
111
121
  * Push your changes to a topic branch in your fork of the repository.
112
122
  * Submit a pull request to the repository in the puppetlabs organization.
113
- * Update your Jira ticket to mark that you have submitted code and are ready for it to be reviewed (Status: Ready for Merge).
123
+ * Update your Jira ticket to mark that you have submitted code and are ready
124
+ for it to be reviewed (Status: Ready for Merge).
114
125
  * Include a link to the pull request in the ticket.
115
126
  * The core team looks at Pull Requests on a regular basis in a weekly triage
116
127
  meeting that we hold in a public Google Hangout. The hangout is announced in
@@ -122,6 +133,7 @@ number.
122
133
  weeks we may close the pull request if it isn't showing any activity.
123
134
 
124
135
  ## Revert Policy
136
+
125
137
  By running tests in advance and by engaging with peer review for prospective
126
138
  changes, your contributions have a high probability of becoming long lived
127
139
  parts of the the project. After being merged, the code will run through a
@@ -142,10 +154,11 @@ ticket. This test(s) should be used to check future submissions of the code to
142
154
  ensure the issue has been resolved.
143
155
 
144
156
  ### Summary
157
+
145
158
  * Changes resulting in test pipeline failures will be reverted if they cannot
146
159
  be resolved within one business day.
147
160
 
148
- # Additional Resources
161
+ ## Additional Resources
149
162
 
150
163
  * [Puppet community guidelines](https://docs.puppet.com/community/community_guidelines.html)
151
164
  * [Bug tracker (Jira)](https://tickets.puppetlabs.com)
data/README.md CHANGED
@@ -1,8 +1,10 @@
1
1
  Puppet
2
2
  ======
3
3
 
4
- [![Build Status](https://travis-ci.org/puppetlabs/puppet.png?branch=master)](https://travis-ci.org/puppetlabs/puppet)
5
- [![Inline docs](https://inch-ci.org/github/puppetlabs/puppet.png)](https://inch-ci.org/github/puppetlabs/puppet)
4
+ [![Travis Status](https://travis-ci.org/puppetlabs/puppet.svg?branch=master)](https://travis-ci.org/puppetlabs/puppet)
5
+ [![Appveyor Status](https://ci.appveyor.com/api/projects/status/cvhpypd4504sevqq/branch/master?svg=true)](https://ci.appveyor.com/project/puppetlabs/puppet/branch/master)
6
+ [![Gem Version](https://badge.fury.io/rb/puppet.svg)](https://badge.fury.io/rb/puppet)
7
+ [![Inline docs](https://inch-ci.org/github/puppetlabs/puppet.svg)](https://inch-ci.org/github/puppetlabs/puppet)
6
8
 
7
9
  Puppet, an automated administrative engine for your Linux, Unix, and Windows systems, performs
8
10
  administrative tasks (such as adding users, installing packages, and updating server
@@ -16,7 +18,7 @@ Documentation for Puppet and related projects can be found online at the
16
18
 
17
19
  HTTP API
18
20
  --------
19
- [HTTP API Index](https://puppet.com/docs/puppet/5.3/http_api/http_api_index.html)
21
+ [HTTP API Index](https://puppet.com/docs/puppet/5.4/http_api/http_api_index.html)
20
22
 
21
23
  Installation
22
24
  ------------
@@ -26,7 +28,7 @@ which also includes orchestration features, a web console, and professional supp
26
28
  [The PE documentation is available here.](https://puppet.com/docs/pe/latest)
27
29
 
28
30
  To install an open source release of Puppet,
29
- [see the installation guide on the docs site.](http://puppet.com/docs/puppet/5.3/install_pre.html)
31
+ [see the installation guide on the docs site.](http://puppet.com/docs/puppet/5.4/install_pre.html)
30
32
 
31
33
  If you need to run Puppet from source as a tester or developer,
32
34
  [see the running from source guide on the docs site.](https://docs.puppet.com/puppet/3.8/from_source.html)
@@ -53,10 +55,10 @@ Support
53
55
 
54
56
  Please log tickets and issues at our [JIRA tracker](https://tickets.puppetlabs.com). A [mailing
55
57
  list](https://groups.google.com/forum/?fromgroups#!forum/puppet-users) is
56
- available for asking questions and getting help from others. In addition there
58
+ available for asking questions and getting help from others. In addition, there
57
59
  is an active #puppet channel on Freenode.
58
60
 
59
- We use semantic version numbers for our releases, and recommend that users stay
61
+ We use semantic version numbers for our releases and recommend that users stay
60
62
  as up-to-date as possible by upgrading to patch releases and minor releases as
61
63
  they become available.
62
64
 
@@ -97,7 +97,7 @@ class X509Collector
97
97
  next unless public_key_info = extract_public_key_info(path, meaning)
98
98
  public_key, priority, name = public_key_info
99
99
  pem = public_key.to_s
100
- existing_priority, existing_name, existing_public_key = key_data[pem]
100
+ existing_priority, _, _ = key_data[pem]
101
101
  next if existing_priority and existing_priority < priority
102
102
  key_data[pem] = priority, name, public_key
103
103
  rescue
@@ -106,7 +106,7 @@ class X509Collector
106
106
  end
107
107
  name_to_key_hash = {}
108
108
  key_data.each do |pem, data|
109
- priority, name, public_key = data
109
+ _, name, public_key = data
110
110
  if name_to_key_hash[name]
111
111
  suffix_num = 2
112
112
  while name_to_key_hash[name + " (#{suffix_num})"]
@@ -48,7 +48,7 @@ will taint the development version
48
48
 
49
49
  The following enviornment variables configure the behavior of envpuppet
50
50
 
51
- ENVPUPPET_BASEDIR=${HOME}/src
51
+ ENVPUPPET_BASEDIR="${HOME}/src"
52
52
  the base directory where puppet, facter, etc... live.
53
53
 
54
54
  ENVPUPPET_BLEEDING=true Enables bleeding edge prototypes like
@@ -36,7 +36,7 @@ start() {
36
36
  ebegin "Starting puppetmaster"
37
37
  start-stop-daemon --start --quiet --exec /usr/bin/ruby /usr/bin/puppetmasterd \
38
38
  -- ${options}
39
- eend $? "Failed to start puppetmaster"
39
+ eend "$?" "Failed to start puppetmaster"
40
40
  }
41
41
 
42
42
  stop() {
@@ -44,8 +44,8 @@ stop() {
44
44
  start-stop-daemon --stop --quiet \
45
45
  --pidfile ${PUPPETMASTER_PID_DIR}/puppetmasterd.pid
46
46
  local ret=$?
47
- eend ${ret} "Failed to stop puppetmaster"
48
- rm -f ${PUPPETMASTER_PID_DIR}/puppetmasterd.pid
49
- return ${ret}
47
+ eend "${ret}" "Failed to stop puppetmaster"
48
+ rm -f "${PUPPETMASTER_PID_DIR}/puppetmasterd.pid"
49
+ return "${ret}"
50
50
  }
51
51
 
@@ -2,16 +2,16 @@
2
2
 
3
3
  . /lib/svc/share/smf_include.sh
4
4
 
5
- [[ -z "${SMF_FMRI}" ]] && exit $SMF_EXIT_ERR
5
+ [[ -z "${SMF_FMRI}" ]] && exit "$SMF_EXIT_ERR"
6
6
 
7
7
  typeset -r CONF_FILE=/etc/puppet/puppet.conf
8
- [[ ! -f "${CONF_FILE}" ]] && exit $SMF_EXIT_ERR_CONFIG
8
+ [[ ! -f "${CONF_FILE}" ]] && exit "$SMF_EXIT_ERR_CONFIG"
9
9
 
10
10
  typeset -r PUPPET=/usr/bin/puppet
11
11
 
12
12
  case "$1" in
13
13
  start)
14
- exec $PUPPET agent
14
+ exec "$PUPPET" agent
15
15
  ;;
16
16
 
17
17
  stop)
@@ -23,22 +23,22 @@ stop)
23
23
  # continues until all processes are killed.
24
24
  # svcs -p <fmri> lists all processes in the contract.
25
25
  # http://bnsmb.de/solaris/My_Little_SMF_FAQ.html
26
- ctid=`svcprop -p restarter/contract $SMF_FMRI`
26
+ ctid=`svcprop -p restarter/contract "$SMF_FMRI"`
27
27
  if [ -n "$ctid" ]; then
28
- smf_kill_contract $ctid TERM 1 5
28
+ smf_kill_contract "$ctid" TERM 1 5
29
29
  ret=$?
30
- [ $ret -eq 1 ] && exit $SMF_EXIT_ERR_FATAL
30
+ [ "$ret" -eq 1 ] && exit "$SMF_EXIT_ERR_FATAL"
31
31
 
32
- if [ $ret -eq 2 ] ; then
33
- smf_kill_contract $ctid KILL 1
34
- [ $? -ne 0 ] && exit $SMF_EXIT_ERR_FATAL
32
+ if [ "$ret" -eq 2 ] ; then
33
+ smf_kill_contract "$ctid" KILL 1
34
+ [ $? -ne 0 ] && exit "$SMF_EXIT_ERR_FATAL"
35
35
  fi
36
36
  fi
37
37
  ;;
38
38
  *)
39
39
  echo "Usage: $0 {start|stop}";
40
- exit $SMF_EXIT_ERR_FATAL
40
+ exit "$SMF_EXIT_ERR_FATAL"
41
41
  ;;
42
42
  esac
43
- exit $SMF_EXIT_OK
43
+ exit "$SMF_EXIT_OK"
44
44
 
@@ -2,15 +2,15 @@
2
2
 
3
3
  . /lib/svc/share/smf_include.sh
4
4
 
5
- [[ -z "${SMF_FMRI}" ]] && exit $SMF_EXIT_ERR
5
+ [[ -z "${SMF_FMRI}" ]] && exit "$SMF_EXIT_ERR"
6
6
 
7
7
  typeset -r CONF_FILE=/etc/puppet/puppet.conf
8
- [[ ! -f ${CONF_FILE} ]] && exit $SMF_EXIT_ERR_CONFIG
8
+ [[ ! -f "${CONF_FILE}" ]] && exit "$SMF_EXIT_ERR_CONFIG"
9
9
  typeset -r PUPPET=/usr/bin/puppet
10
10
 
11
11
  case "$1" in
12
12
  start)
13
- exec $PUPPET master --daemonize
13
+ exec "$PUPPET" master --daemonize
14
14
  ;;
15
15
 
16
16
  stop)
@@ -23,22 +23,22 @@ stop)
23
23
  # svcs -p <fmri> lists all processes in the contract.
24
24
  # http://bnsmb.de/solaris/My_Little_SMF_FAQ.html
25
25
 
26
- ctid=`svcprop -p restarter/contract $SMF_FMRI`
26
+ ctid=`svcprop -p restarter/contract "$SMF_FMRI"`
27
27
  if [ -n "$ctid" ]; then
28
- smf_kill_contract $ctid TERM 1 5
28
+ smf_kill_contract "$ctid" TERM 1 5
29
29
  ret=$?
30
- [ $ret -eq 1 ] && exit $SMF_EXIT_ERR_FATAL
30
+ [ "$ret" -eq 1 ] && exit "$SMF_EXIT_ERR_FATAL"
31
31
 
32
- if [ $ret -eq 2 ] ; then
33
- smf_kill_contract $ctid KILL 1
34
- [ $? -ne 0 ] && exit $SMF_EXIT_ERR_FATAL
32
+ if [ "$ret" -eq 2 ] ; then
33
+ smf_kill_contract "$ctid" KILL 1
34
+ [ $? -ne 0 ] && exit "$SMF_EXIT_ERR_FATAL"
35
35
  fi
36
36
  fi
37
37
  ;;
38
38
  *)
39
39
  echo "Usage: $0 {start|stop}";
40
- exit $SMF_EXIT_ERR_FATAL
40
+ exit "$SMF_EXIT_ERR_FATAL"
41
41
  ;;
42
42
  esac
43
- exit $SMF_EXIT_OK
43
+ exit "$SMF_EXIT_OK"
44
44
 
@@ -382,7 +382,6 @@ $args = {}
382
382
  $options = {:repeat => 1, :fork => 0, :pause => false, :nodes => []}
383
383
 
384
384
  begin
385
- explicit_waitforcert = false
386
385
  result.each { |opt,arg|
387
386
  case opt
388
387
  # First check to see if the argument is a valid setting;
@@ -397,7 +396,7 @@ begin
397
396
  when "--fork"
398
397
  begin
399
398
  $options[:fork] = Integer(arg)
400
- rescue => detail
399
+ rescue
401
400
  $stderr.puts "The argument to 'fork' must be an integer"
402
401
  exit(14)
403
402
  end
@@ -16,9 +16,9 @@
16
16
  [ -f /etc/sysconfig/puppet ] && . /etc/sysconfig/puppet
17
17
  lockfile=/var/lock/subsys/puppet
18
18
  piddir=/var/run/puppetlabs
19
- pidfile=${piddir}/agent.pid
19
+ pidfile="${piddir}/agent.pid"
20
20
  puppetd=/opt/puppetlabs/puppet/bin/puppet
21
- pid=$(cat $pidfile 2> /dev/null)
21
+ pid=$(cat "$pidfile" 2> /dev/null)
22
22
  RETVAL=0
23
23
 
24
24
  PUPPET_OPTS="agent "
@@ -15,7 +15,7 @@
15
15
  nocreate
16
16
  sharedscripts
17
17
  postrotate
18
- ([ -x /etc/init.d/puppet ] && /etc/init.d/puppet reload > /dev/null 2>&1) ||
18
+ ([ -x /etc/init.d/puppet ] && /etc/init.d/puppet rotate > /dev/null 2>&1) ||
19
19
  ([ -x /usr/bin/systemctl ] && /usr/bin/systemctl kill -s USR2 puppet.service > /dev/null 2>&1) || true
20
20
  endscript
21
21
  }
@@ -2,16 +2,16 @@
2
2
 
3
3
  . /lib/svc/share/smf_include.sh
4
4
 
5
- [ -z "${SMF_FMRI}" ] && exit $SMF_EXIT_ERR
5
+ [ -z "${SMF_FMRI}" ] && exit "$SMF_EXIT_ERR"
6
6
 
7
7
  CONF_FILE=/etc/puppetlabs/puppet/puppet.conf
8
- [ ! -f "${CONF_FILE}" ] && exit $SMF_EXIT_ERR_CONFIG
8
+ [ ! -f "${CONF_FILE}" ] && exit "$SMF_EXIT_ERR_CONFIG"
9
9
 
10
10
  PUPPET=/opt/puppetlabs/bin/puppet
11
11
 
12
12
  case "$1" in
13
13
  start)
14
- exec $PUPPET agent
14
+ exec "$PUPPET" agent
15
15
  ;;
16
16
 
17
17
  stop)
@@ -23,22 +23,22 @@ stop)
23
23
  # continues until all processes are killed.
24
24
  # svcs -p <fmri> lists all processes in the contract.
25
25
  # http://bnsmb.de/solaris/My_Little_SMF_FAQ.html
26
- ctid=`svcprop -p restarter/contract $SMF_FMRI`
26
+ ctid=`svcprop -p restarter/contract "$SMF_FMRI"`
27
27
  if [ -n "$ctid" ]; then
28
- smf_kill_contract $ctid TERM 1 30
28
+ smf_kill_contract "$ctid" TERM 1 30
29
29
  ret=$?
30
- [ $ret -eq 1 ] && exit $SMF_EXIT_ERR_FATAL
30
+ [ "$ret" -eq 1 ] && exit "$SMF_EXIT_ERR_FATAL"
31
31
 
32
- if [ $ret -eq 2 ] ; then
33
- smf_kill_contract $ctid KILL 1
34
- [ $? -ne 0 ] && exit $SMF_EXIT_ERR_FATAL
32
+ if [ "$ret" -eq 2 ] ; then
33
+ smf_kill_contract "$ctid" KILL 1
34
+ [ $? -ne 0 ] && exit "$SMF_EXIT_ERR_FATAL"
35
35
  fi
36
36
  fi
37
37
  ;;
38
38
  *)
39
39
  echo "Usage: $0 {start|stop}";
40
- exit $SMF_EXIT_ERR_FATAL
40
+ exit "$SMF_EXIT_ERR_FATAL"
41
41
  ;;
42
42
  esac
43
- exit $SMF_EXIT_OK
43
+ exit "$SMF_EXIT_OK"
44
44
 
@@ -28,14 +28,14 @@ start)
28
28
  ;;
29
29
  stop)
30
30
  printf "Stopping Puppet client services:"
31
- kill `cat $pidfile`
31
+ kill `cat "$pidfile"`
32
32
 
33
33
  printf " puppetd"
34
34
  echo ""
35
35
  ;;
36
36
  restart)
37
37
  printf "Restarting Puppet client services:"
38
- kill -HUP `cat $pidfile`
38
+ kill -HUP `cat "$pidfile"`
39
39
 
40
40
  printf " puppetd"
41
41
  echo ""
@@ -43,14 +43,14 @@ restart)
43
43
  reload)
44
44
  printf "Reloading Puppet client services:"
45
45
 
46
- kill -HUP `cat $pidfile`
46
+ kill -HUP `cat "$pidfile"`
47
47
 
48
48
  printf " puppetd"
49
49
  echo ""
50
50
  ;;
51
51
  status)
52
- if [ -f $pidfile ]; then
53
- pid=`cat $pidfile`
52
+ if [ -f "$pidfile" ]; then
53
+ pid=`cat "$pidfile"`
54
54
  curpid=`pgrep puppetd`
55
55
  if [ "$pid" -eq "$curpid" ]; then
56
56
  exit 0