puppet 5.0.0 → 6.0.0

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 (1440) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.md +52 -42
  3. data/Gemfile +48 -81
  4. data/Gemfile.lock +156 -0
  5. data/MAINTAINERS +0 -19
  6. data/README.md +19 -17
  7. data/Rakefile +47 -36
  8. data/conf/auth.conf +7 -2
  9. data/conf/environment.conf +1 -1
  10. data/conf/fileserver.conf +1 -1
  11. data/conf/puppet.conf +4 -4
  12. data/ext/README.environment +1 -1
  13. data/ext/build_defaults.yaml +0 -2
  14. data/ext/cert_inspector +2 -2
  15. data/ext/debian/copyright +2 -24
  16. data/ext/debian/puppetmaster.README.debian +2 -2
  17. data/ext/envpuppet +1 -1
  18. data/ext/gentoo/init.d/puppetmaster +4 -4
  19. data/ext/hiera/hiera.yaml +1 -1
  20. data/ext/ips/puppet-agent +11 -11
  21. data/ext/ips/puppet-master +11 -11
  22. data/ext/project_data.yaml +9 -8
  23. data/ext/puppet-test +5 -5
  24. data/ext/redhat/client.init +2 -2
  25. data/ext/redhat/logrotate +1 -1
  26. data/ext/redhat/puppet.spec.erb +0 -4
  27. data/ext/regexp_nodes/regexp_nodes.rb +15 -16
  28. data/ext/solaris/smf/puppet +11 -11
  29. data/ext/solaris/smf/svc-puppetd +5 -5
  30. data/ext/solaris/smf/svc-puppetmasterd +5 -5
  31. data/ext/upload_facts.rb +2 -2
  32. data/ext/windows/service/daemon.rb +1 -1
  33. data/install.rb +2 -3
  34. data/lib/hiera/puppet_function.rb +5 -2
  35. data/lib/hiera/scope.rb +24 -2
  36. data/lib/hiera_puppet.rb +3 -3
  37. data/lib/puppet/agent/locker.rb +6 -5
  38. data/lib/puppet/agent.rb +24 -3
  39. data/lib/puppet/application/agent.rb +19 -14
  40. data/lib/puppet/application/apply.rb +30 -17
  41. data/lib/puppet/application/cert.rb +30 -174
  42. data/lib/puppet/application/config.rb +1 -0
  43. data/lib/puppet/application/describe.rb +6 -3
  44. data/lib/puppet/application/device.rb +165 -60
  45. data/lib/puppet/application/doc.rb +10 -4
  46. data/lib/puppet/application/face_base.rb +1 -1
  47. data/lib/puppet/application/facts.rb +5 -0
  48. data/lib/puppet/application/filebucket.rb +60 -18
  49. data/lib/puppet/application/help.rb +1 -0
  50. data/lib/puppet/application/lookup.rb +23 -11
  51. data/lib/puppet/application/resource.rb +8 -4
  52. data/lib/puppet/application/script.rb +261 -0
  53. data/lib/puppet/application/ssl.rb +133 -0
  54. data/lib/puppet/application.rb +42 -11
  55. data/lib/puppet/application_support.rb +7 -3
  56. data/lib/puppet/configurer/downloader.rb +1 -1
  57. data/lib/puppet/configurer/fact_handler.rb +5 -1
  58. data/lib/puppet/configurer/plugin_handler.rb +32 -9
  59. data/lib/puppet/configurer.rb +114 -76
  60. data/lib/puppet/confine.rb +4 -1
  61. data/lib/puppet/context.rb +1 -1
  62. data/lib/puppet/daemon.rb +3 -3
  63. data/lib/puppet/datatypes/error.rb +21 -0
  64. data/lib/puppet/datatypes/impl/error.rb +40 -0
  65. data/lib/puppet/datatypes.rb +213 -0
  66. data/lib/puppet/defaults.rb +279 -209
  67. data/lib/puppet/environments.rb +24 -11
  68. data/lib/puppet/error.rb +35 -18
  69. data/lib/puppet/etc.rb +6 -7
  70. data/lib/puppet/external/dot.rb +23 -24
  71. data/lib/puppet/external/pson/common.rb +2 -2
  72. data/lib/puppet/external/pson/pure/generator.rb +1 -1
  73. data/lib/puppet/external/pson/pure/parser.rb +1 -1
  74. data/lib/puppet/face/catalog.rb +2 -2
  75. data/lib/puppet/face/config.rb +157 -11
  76. data/lib/puppet/face/epp.rb +66 -37
  77. data/lib/puppet/face/facts.rb +49 -0
  78. data/lib/puppet/face/help/action.erb +4 -1
  79. data/lib/puppet/face/help/face.erb +1 -1
  80. data/lib/puppet/face/help/global.erb +2 -2
  81. data/lib/puppet/face/help/man.erb +1 -1
  82. data/lib/puppet/face/help.rb +78 -64
  83. data/lib/puppet/face/man.rb +56 -12
  84. data/lib/puppet/face/module/build.rb +5 -54
  85. data/lib/puppet/face/module/generate.rb +6 -243
  86. data/lib/puppet/face/module/install.rb +1 -4
  87. data/lib/puppet/face/module/list.rb +6 -22
  88. data/lib/puppet/face/module/search.rb +7 -3
  89. data/lib/puppet/face/module/uninstall.rb +15 -7
  90. data/lib/puppet/face/module/upgrade.rb +1 -4
  91. data/lib/puppet/face/node/clean.rb +14 -10
  92. data/lib/puppet/face/node.rb +1 -0
  93. data/lib/puppet/face/parser.rb +30 -4
  94. data/lib/puppet/face/plugin.rb +1 -3
  95. data/lib/puppet/face/status.rb +3 -2
  96. data/lib/puppet/feature/base.rb +8 -27
  97. data/lib/puppet/feature/bolt.rb +3 -0
  98. data/lib/puppet/feature/eventlog.rb +1 -1
  99. data/lib/puppet/file_bucket/dipper.rb +1 -2
  100. data/lib/puppet/file_bucket/file.rb +0 -2
  101. data/lib/puppet/file_serving/base.rb +18 -17
  102. data/lib/puppet/file_serving/configuration/parser.rb +25 -9
  103. data/lib/puppet/file_serving/configuration.rb +6 -0
  104. data/lib/puppet/file_serving/fileset.rb +1 -1
  105. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  106. data/lib/puppet/file_serving/metadata.rb +4 -3
  107. data/lib/puppet/file_serving/mount/locales.rb +35 -0
  108. data/lib/puppet/file_serving/mount/tasks.rb +21 -0
  109. data/lib/puppet/file_system/uniquefile.rb +2 -2
  110. data/lib/puppet/forge/errors.rb +27 -25
  111. data/lib/puppet/forge/repository.rb +1 -1
  112. data/lib/puppet/forge.rb +22 -9
  113. data/lib/puppet/functions/abs.rb +61 -0
  114. data/lib/puppet/functions/alert.rb +1 -1
  115. data/lib/puppet/functions/all.rb +104 -0
  116. data/lib/puppet/functions/annotate.rb +11 -11
  117. data/lib/puppet/functions/any.rb +109 -0
  118. data/lib/puppet/functions/assert_type.rb +7 -7
  119. data/lib/puppet/functions/binary_file.rb +15 -2
  120. data/lib/puppet/functions/break.rb +34 -9
  121. data/lib/puppet/functions/call.rb +41 -4
  122. data/lib/puppet/functions/camelcase.rb +62 -0
  123. data/lib/puppet/functions/capitalize.rb +61 -0
  124. data/lib/puppet/functions/ceiling.rb +37 -0
  125. data/lib/puppet/functions/chomp.rb +57 -0
  126. data/lib/puppet/functions/chop.rb +67 -0
  127. data/lib/puppet/functions/compare.rb +125 -0
  128. data/lib/puppet/functions/contain.rb +25 -3
  129. data/lib/puppet/functions/convert_to.rb +34 -0
  130. data/lib/puppet/functions/crit.rb +1 -1
  131. data/lib/puppet/functions/debug.rb +1 -1
  132. data/lib/puppet/functions/defined.rb +14 -15
  133. data/lib/puppet/functions/dig.rb +47 -3
  134. data/lib/puppet/functions/downcase.rb +89 -0
  135. data/lib/puppet/functions/each.rb +30 -20
  136. data/lib/puppet/functions/emerg.rb +1 -1
  137. data/lib/puppet/functions/empty.rb +77 -0
  138. data/lib/puppet/functions/epp.rb +3 -0
  139. data/lib/puppet/functions/err.rb +1 -1
  140. data/lib/puppet/functions/eyaml_lookup_key.rb +11 -8
  141. data/lib/puppet/functions/filter.rb +30 -23
  142. data/lib/puppet/functions/find_file.rb +15 -2
  143. data/lib/puppet/functions/flatten.rb +64 -0
  144. data/lib/puppet/functions/floor.rb +37 -0
  145. data/lib/puppet/functions/get.rb +150 -0
  146. data/lib/puppet/functions/getvar.rb +87 -0
  147. data/lib/puppet/functions/hiera.rb +11 -11
  148. data/lib/puppet/functions/hiera_array.rb +11 -11
  149. data/lib/puppet/functions/hiera_hash.rb +12 -12
  150. data/lib/puppet/functions/hiera_include.rb +15 -15
  151. data/lib/puppet/functions/hocon_data.rb +1 -1
  152. data/lib/puppet/functions/include.rb +34 -2
  153. data/lib/puppet/functions/info.rb +1 -1
  154. data/lib/puppet/functions/inline_epp.rb +2 -2
  155. data/lib/puppet/functions/join.rb +56 -0
  156. data/lib/puppet/functions/json_data.rb +3 -3
  157. data/lib/puppet/functions/keys.rb +25 -0
  158. data/lib/puppet/functions/length.rb +44 -0
  159. data/lib/puppet/functions/lest.rb +39 -1
  160. data/lib/puppet/functions/lookup.rb +7 -5
  161. data/lib/puppet/functions/lstrip.rb +58 -0
  162. data/lib/puppet/functions/map.rb +34 -20
  163. data/lib/puppet/functions/match.rb +17 -6
  164. data/lib/puppet/functions/max.rb +183 -0
  165. data/lib/puppet/functions/min.rb +182 -0
  166. data/lib/puppet/functions/module_directory.rb +41 -0
  167. data/lib/puppet/functions/new.rb +982 -7
  168. data/lib/puppet/functions/next.rb +2 -9
  169. data/lib/puppet/functions/notice.rb +1 -1
  170. data/lib/puppet/functions/reduce.rb +36 -5
  171. data/lib/puppet/functions/regsubst.rb +10 -4
  172. data/lib/puppet/functions/require.rb +42 -2
  173. data/lib/puppet/functions/return.rb +2 -9
  174. data/lib/puppet/functions/reverse_each.rb +71 -2
  175. data/lib/puppet/functions/round.rb +24 -0
  176. data/lib/puppet/functions/rstrip.rb +58 -0
  177. data/lib/puppet/functions/size.rb +15 -0
  178. data/lib/puppet/functions/slice.rb +25 -12
  179. data/lib/puppet/functions/sort.rb +74 -0
  180. data/lib/puppet/functions/split.rb +12 -10
  181. data/lib/puppet/functions/step.rb +73 -1
  182. data/lib/puppet/functions/strftime.rb +178 -10
  183. data/lib/puppet/functions/strip.rb +58 -0
  184. data/lib/puppet/functions/then.rb +65 -2
  185. data/lib/puppet/functions/tree_each.rb +200 -0
  186. data/lib/puppet/functions/type.rb +42 -1
  187. data/lib/puppet/functions/unique.rb +13 -13
  188. data/lib/puppet/functions/unwrap.rb +8 -4
  189. data/lib/puppet/functions/upcase.rb +89 -0
  190. data/lib/puppet/functions/values.rb +25 -0
  191. data/lib/puppet/functions/versioncmp.rb +1 -1
  192. data/lib/puppet/functions/warning.rb +1 -1
  193. data/lib/puppet/functions/with.rb +9 -7
  194. data/lib/puppet/functions/yaml_data.rb +8 -7
  195. data/lib/puppet/functions.rb +212 -95
  196. data/lib/puppet/generate/models/type/property.rb +1 -1
  197. data/lib/puppet/generate/type.rb +1 -1
  198. data/lib/puppet/gettext/config.rb +275 -0
  199. data/lib/puppet/gettext/module_translations.rb +42 -0
  200. data/lib/puppet/gettext/stubs.rb +11 -0
  201. data/lib/puppet/graph/relationship_graph.rb +7 -1
  202. data/lib/puppet/graph/simple_graph.rb +12 -8
  203. data/lib/puppet/graph.rb +0 -2
  204. data/lib/puppet/indirector/catalog/compiler.rb +48 -16
  205. data/lib/puppet/indirector/catalog/json.rb +14 -3
  206. data/lib/puppet/indirector/catalog/yaml.rb +0 -16
  207. data/lib/puppet/indirector/certificate/file.rb +0 -1
  208. data/lib/puppet/indirector/exec.rb +1 -1
  209. data/lib/puppet/indirector/facts/facter.rb +4 -6
  210. data/lib/puppet/indirector/facts/network_device.rb +2 -2
  211. data/lib/puppet/indirector/facts/rest.rb +21 -0
  212. data/lib/puppet/indirector/facts/yaml.rb +4 -6
  213. data/lib/puppet/indirector/file_bucket_file/file.rb +11 -4
  214. data/lib/puppet/indirector/file_content/http.rb +3 -1
  215. data/lib/puppet/indirector/file_server.rb +1 -1
  216. data/lib/puppet/indirector/indirection.rb +28 -24
  217. data/lib/puppet/indirector/key/file.rb +1 -6
  218. data/lib/puppet/indirector/node/exec.rb +2 -4
  219. data/lib/puppet/indirector/node/yaml.rb +0 -6
  220. data/lib/puppet/indirector/request.rb +19 -15
  221. data/lib/puppet/indirector/rest.rb +21 -68
  222. data/lib/puppet/indirector/ssl_file.rb +5 -46
  223. data/lib/puppet/indirector/terminus.rb +4 -4
  224. data/lib/puppet/indirector/yaml.rb +4 -4
  225. data/lib/puppet/info_service/class_information_service.rb +1 -1
  226. data/lib/puppet/info_service/task_information_service.rb +36 -0
  227. data/lib/puppet/info_service.rb +10 -0
  228. data/lib/puppet/interface/action.rb +54 -29
  229. data/lib/puppet/interface/action_builder.rb +22 -5
  230. data/lib/puppet/interface/action_manager.rb +1 -1
  231. data/lib/puppet/interface/documentation.rb +21 -10
  232. data/lib/puppet/interface/face_collection.rb +7 -3
  233. data/lib/puppet/interface/option.rb +36 -15
  234. data/lib/puppet/interface/option_builder.rb +23 -9
  235. data/lib/puppet/interface/option_manager.rb +9 -4
  236. data/lib/puppet/interface.rb +3 -2
  237. data/lib/puppet/loaders.rb +3 -0
  238. data/lib/puppet/metatype/manager.rb +9 -7
  239. data/lib/puppet/module/task.rb +267 -0
  240. data/lib/puppet/module.rb +70 -14
  241. data/lib/puppet/module_tool/applications/application.rb +5 -5
  242. data/lib/puppet/module_tool/applications/checksummer.rb +3 -3
  243. data/lib/puppet/module_tool/applications/installer.rb +9 -7
  244. data/lib/puppet/module_tool/applications/uninstaller.rb +4 -2
  245. data/lib/puppet/module_tool/applications/unpacker.rb +4 -4
  246. data/lib/puppet/module_tool/applications/upgrader.rb +8 -6
  247. data/lib/puppet/module_tool/applications.rb +0 -1
  248. data/lib/puppet/module_tool/dependency.rb +1 -1
  249. data/lib/puppet/module_tool/errors/installer.rb +18 -20
  250. data/lib/puppet/module_tool/errors/shared.rb +20 -15
  251. data/lib/puppet/module_tool/errors/uninstaller.rb +1 -0
  252. data/lib/puppet/module_tool/errors/upgrader.rb +1 -1
  253. data/lib/puppet/module_tool/installed_modules.rb +3 -3
  254. data/lib/puppet/module_tool/local_tarball.rb +3 -3
  255. data/lib/puppet/module_tool/metadata.rb +3 -5
  256. data/lib/puppet/module_tool/shared_behaviors.rb +2 -2
  257. data/lib/puppet/module_tool/tar/mini.rb +57 -4
  258. data/lib/puppet/module_tool.rb +2 -5
  259. data/lib/puppet/network/auth_config_parser.rb +18 -13
  260. data/lib/puppet/network/authconfig.rb +1 -14
  261. data/lib/puppet/network/authstore.rb +3 -3
  262. data/lib/puppet/network/client_request.rb +1 -1
  263. data/lib/puppet/network/format.rb +3 -3
  264. data/lib/puppet/network/format_support.rb +14 -9
  265. data/lib/puppet/network/formats.rb +98 -9
  266. data/lib/puppet/network/http/api/indirected_routes.rb +11 -3
  267. data/lib/puppet/network/http/api/indirection_type.rb +1 -1
  268. data/lib/puppet/network/http/api/master/v3/environment.rb +7 -4
  269. data/lib/puppet/network/http/api/master/v3/environments.rb +2 -2
  270. data/lib/puppet/network/http/api.rb +1 -10
  271. data/lib/puppet/network/http/compression.rb +1 -1
  272. data/lib/puppet/network/http/connection.rb +105 -25
  273. data/lib/puppet/network/http/error.rb +10 -10
  274. data/lib/puppet/network/http/factory.rb +8 -0
  275. data/lib/puppet/network/http/handler.rb +59 -27
  276. data/lib/puppet/network/http.rb +0 -2
  277. data/lib/puppet/network/resolver.rb +139 -67
  278. data/lib/puppet/network/rights.rb +1 -1
  279. data/lib/puppet/node/environment.rb +23 -20
  280. data/lib/puppet/node/facts.rb +20 -1
  281. data/lib/puppet/node.rb +80 -8
  282. data/lib/puppet/parameter/boolean.rb +1 -1
  283. data/lib/puppet/parameter/value_collection.rb +9 -9
  284. data/lib/puppet/parameter.rb +15 -10
  285. data/lib/puppet/parser/abstract_compiler.rb +36 -0
  286. data/lib/puppet/parser/ast/branch.rb +4 -4
  287. data/lib/puppet/parser/ast/leaf.rb +7 -2
  288. data/lib/puppet/parser/ast/node.rb +2 -2
  289. data/lib/puppet/parser/ast/pops_bridge.rb +26 -52
  290. data/lib/puppet/parser/ast.rb +4 -8
  291. data/lib/puppet/parser/catalog_compiler.rb +32 -0
  292. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +1 -1
  293. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +9 -2
  294. data/lib/puppet/parser/compiler.rb +29 -61
  295. data/lib/puppet/parser/functions/assert_type.rb +4 -4
  296. data/lib/puppet/parser/functions/binary_file.rb +1 -1
  297. data/lib/puppet/parser/functions/break.rb +1 -1
  298. data/lib/puppet/parser/functions/create_resources.rb +7 -7
  299. data/lib/puppet/parser/functions/defined.rb +1 -1
  300. data/lib/puppet/parser/functions/dig.rb +12 -3
  301. data/lib/puppet/parser/functions/each.rb +3 -3
  302. data/lib/puppet/parser/functions/epp.rb +4 -1
  303. data/lib/puppet/parser/functions/filter.rb +3 -3
  304. data/lib/puppet/parser/functions/find_file.rb +1 -1
  305. data/lib/puppet/parser/functions/fqdn_rand.rb +16 -1
  306. data/lib/puppet/parser/functions/generate.rb +3 -5
  307. data/lib/puppet/parser/functions/hiera.rb +4 -4
  308. data/lib/puppet/parser/functions/hiera_array.rb +5 -5
  309. data/lib/puppet/parser/functions/hiera_hash.rb +6 -6
  310. data/lib/puppet/parser/functions/hiera_include.rb +10 -11
  311. data/lib/puppet/parser/functions/inline_epp.rb +1 -1
  312. data/lib/puppet/parser/functions/inline_template.rb +8 -3
  313. data/lib/puppet/parser/functions/lest.rb +2 -2
  314. data/lib/puppet/parser/functions/lookup.rb +1 -1
  315. data/lib/puppet/parser/functions/map.rb +2 -2
  316. data/lib/puppet/parser/functions/match.rb +1 -1
  317. data/lib/puppet/parser/functions/new.rb +106 -54
  318. data/lib/puppet/parser/functions/next.rb +1 -1
  319. data/lib/puppet/parser/functions/realize.rb +6 -0
  320. data/lib/puppet/parser/functions/reduce.rb +33 -2
  321. data/lib/puppet/parser/functions/return.rb +23 -2
  322. data/lib/puppet/parser/functions/reverse_each.rb +3 -3
  323. data/lib/puppet/parser/functions/scanf.rb +1 -1
  324. data/lib/puppet/parser/functions/sha256.rb +5 -0
  325. data/lib/puppet/parser/functions/slice.rb +1 -1
  326. data/lib/puppet/parser/functions/sprintf.rb +28 -3
  327. data/lib/puppet/parser/functions/step.rb +2 -2
  328. data/lib/puppet/parser/functions/strftime.rb +1 -1
  329. data/lib/puppet/parser/functions/tag.rb +6 -0
  330. data/lib/puppet/parser/functions/tagged.rb +6 -3
  331. data/lib/puppet/parser/functions/template.rb +11 -2
  332. data/lib/puppet/parser/functions/then.rb +2 -2
  333. data/lib/puppet/parser/functions/type.rb +1 -1
  334. data/lib/puppet/parser/functions/with.rb +5 -5
  335. data/lib/puppet/parser/functions.rb +40 -7
  336. data/lib/puppet/parser/parser_factory.rb +1 -1
  337. data/lib/puppet/parser/relationship.rb +2 -2
  338. data/lib/puppet/parser/resource/param.rb +12 -5
  339. data/lib/puppet/parser/resource.rb +39 -12
  340. data/lib/puppet/parser/scope.rb +55 -24
  341. data/lib/puppet/parser/script_compiler.rb +123 -0
  342. data/lib/puppet/parser/templatewrapper.rb +4 -3
  343. data/lib/puppet/parser/type_loader.rb +12 -12
  344. data/lib/puppet/parser.rb +1 -0
  345. data/lib/puppet/pops/adapters.rb +14 -0
  346. data/lib/puppet/pops/evaluator/access_operator.rb +49 -8
  347. data/lib/puppet/pops/evaluator/closure.rb +12 -4
  348. data/lib/puppet/pops/evaluator/collector_transformer.rb +4 -3
  349. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +1 -1
  350. data/lib/puppet/pops/evaluator/compare_operator.rb +7 -5
  351. data/lib/puppet/pops/evaluator/deferred_resolver.rb +127 -0
  352. data/lib/puppet/pops/evaluator/epp_evaluator.rb +36 -10
  353. data/lib/puppet/pops/evaluator/evaluator_impl.rb +61 -17
  354. data/lib/puppet/pops/evaluator/external_syntax_support.rb +1 -1
  355. data/lib/puppet/pops/evaluator/literal_evaluator.rb +1 -1
  356. data/lib/puppet/pops/evaluator/relationship_operator.rb +1 -1
  357. data/lib/puppet/pops/evaluator/runtime3_converter.rb +29 -8
  358. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +4 -4
  359. data/lib/puppet/pops/evaluator/runtime3_support.rb +17 -20
  360. data/lib/puppet/pops/functions/dispatch.rb +13 -6
  361. data/lib/puppet/pops/functions/function.rb +10 -4
  362. data/lib/puppet/pops/issue_reporter.rb +25 -3
  363. data/lib/puppet/pops/issues.rb +82 -15
  364. data/lib/puppet/pops/label_provider.rb +1 -1
  365. data/lib/puppet/pops/loader/base_loader.rb +10 -0
  366. data/lib/puppet/pops/loader/dependency_loader.rb +7 -0
  367. data/lib/puppet/pops/loader/loader.rb +22 -3
  368. data/lib/puppet/pops/loader/loader_paths.rb +183 -31
  369. data/lib/puppet/pops/loader/module_loaders.rb +239 -41
  370. data/lib/puppet/pops/loader/puppet_plan_instantiator.rb +84 -0
  371. data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +10 -10
  372. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +39 -0
  373. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -2
  374. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +54 -0
  375. data/lib/puppet/pops/loader/runtime3_type_loader.rb +6 -1
  376. data/lib/puppet/pops/loader/static_loader.rb +23 -45
  377. data/lib/puppet/pops/loader/task_instantiator.rb +97 -0
  378. data/lib/puppet/pops/loader/type_definition_instantiator.rb +8 -1
  379. data/lib/puppet/pops/loaders.rb +158 -45
  380. data/lib/puppet/pops/lookup/context.rb +1 -1
  381. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
  382. data/lib/puppet/pops/lookup/explainer.rb +2 -1
  383. data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
  384. data/lib/puppet/pops/lookup/hiera_config.rb +4 -4
  385. data/lib/puppet/pops/lookup/interpolation.rb +1 -1
  386. data/lib/puppet/pops/lookup/lookup_adapter.rb +61 -12
  387. data/lib/puppet/pops/merge_strategy.rb +7 -4
  388. data/lib/puppet/pops/migration/migration_checker.rb +8 -8
  389. data/lib/puppet/pops/model/ast.pp +19 -0
  390. data/lib/puppet/pops/model/ast.rb +567 -436
  391. data/lib/puppet/pops/model/ast_transformer.rb +1 -1
  392. data/lib/puppet/pops/model/factory.rb +232 -147
  393. data/lib/puppet/pops/model/model_label_provider.rb +9 -1
  394. data/lib/puppet/pops/model/model_tree_dumper.rb +17 -2
  395. data/lib/puppet/pops/model/pn_transformer.rb +400 -0
  396. data/lib/puppet/pops/model/tree_dumper.rb +1 -1
  397. data/lib/puppet/pops/parser/code_merger.rb +2 -2
  398. data/lib/puppet/pops/parser/egrammar.ra +85 -24
  399. data/lib/puppet/pops/parser/eparser.rb +1791 -1578
  400. data/lib/puppet/pops/parser/epp_parser.rb +1 -1
  401. data/lib/puppet/pops/parser/epp_support.rb +7 -5
  402. data/lib/puppet/pops/parser/evaluating_parser.rb +1 -1
  403. data/lib/puppet/pops/parser/heredoc_support.rb +2 -2
  404. data/lib/puppet/pops/parser/interpolation_support.rb +2 -2
  405. data/lib/puppet/pops/parser/lexer2.rb +5 -5
  406. data/lib/puppet/pops/parser/lexer_support.rb +5 -4
  407. data/lib/puppet/pops/parser/locatable.rb +1 -1
  408. data/lib/puppet/pops/parser/locator.rb +7 -15
  409. data/lib/puppet/pops/parser/parser_support.rb +3 -3
  410. data/lib/puppet/pops/parser/pn_parser.rb +316 -0
  411. data/lib/puppet/pops/parser/slurp_support.rb +0 -3
  412. data/lib/puppet/pops/patterns.rb +2 -1
  413. data/lib/puppet/pops/pcore.rb +67 -12
  414. data/lib/puppet/pops/pn.rb +236 -0
  415. data/lib/puppet/pops/puppet_stack.rb +15 -1
  416. data/lib/puppet/pops/resource/param.rb +2 -2
  417. data/lib/puppet/pops/resource/resource_type_impl.rb +4 -4
  418. data/lib/puppet/pops/serialization/abstract_reader.rb +4 -0
  419. data/lib/puppet/pops/serialization/abstract_writer.rb +8 -1
  420. data/lib/puppet/pops/serialization/extension.rb +1 -0
  421. data/lib/puppet/pops/serialization/from_data_converter.rb +69 -26
  422. data/lib/puppet/pops/serialization/json.rb +7 -7
  423. data/lib/puppet/pops/serialization/json_path.rb +3 -2
  424. data/lib/puppet/pops/serialization/object.rb +3 -4
  425. data/lib/puppet/pops/serialization/serializer.rb +2 -1
  426. data/lib/puppet/pops/serialization/to_data_converter.rb +27 -14
  427. data/lib/puppet/pops/serialization/to_stringified_converter.rb +226 -0
  428. data/lib/puppet/pops/serialization.rb +3 -2
  429. data/lib/puppet/pops/time/timespan.rb +1 -1
  430. data/lib/puppet/pops/time/timestamp.rb +31 -19
  431. data/lib/puppet/pops/types/annotatable.rb +2 -2
  432. data/lib/puppet/pops/types/annotation.rb +8 -8
  433. data/lib/puppet/pops/types/class_loader.rb +9 -6
  434. data/lib/puppet/pops/types/implementation_registry.rb +29 -36
  435. data/lib/puppet/pops/types/iterable.rb +42 -11
  436. data/lib/puppet/pops/types/p_binary_type.rb +12 -6
  437. data/lib/puppet/pops/types/p_init_type.rb +238 -0
  438. data/lib/puppet/pops/types/p_meta_type.rb +18 -11
  439. data/lib/puppet/pops/types/p_object_type.rb +240 -48
  440. data/lib/puppet/pops/types/p_object_type_extension.rb +218 -0
  441. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +5 -6
  442. data/lib/puppet/pops/types/p_sem_ver_type.rb +12 -4
  443. data/lib/puppet/pops/types/p_sensitive_type.rb +2 -2
  444. data/lib/puppet/pops/types/p_timespan_type.rb +9 -9
  445. data/lib/puppet/pops/types/p_timestamp_type.rb +7 -3
  446. data/lib/puppet/pops/types/p_type_set_type.rb +33 -10
  447. data/lib/puppet/pops/types/p_uri_type.rb +190 -0
  448. data/lib/puppet/pops/types/puppet_object.rb +16 -2
  449. data/lib/puppet/pops/types/ruby_generator.rb +111 -78
  450. data/lib/puppet/pops/types/ruby_method.rb +2 -2
  451. data/lib/puppet/pops/types/string_converter.rb +38 -14
  452. data/lib/puppet/pops/types/tree_iterators.rb +254 -0
  453. data/lib/puppet/pops/types/type_acceptor.rb +1 -1
  454. data/lib/puppet/pops/types/type_calculator.rb +31 -20
  455. data/lib/puppet/pops/types/type_factory.rb +82 -17
  456. data/lib/puppet/pops/types/type_formatter.rb +77 -9
  457. data/lib/puppet/pops/types/type_mismatch_describer.rb +106 -137
  458. data/lib/puppet/pops/types/type_parser.rb +130 -24
  459. data/lib/puppet/pops/types/type_set_reference.rb +2 -2
  460. data/lib/puppet/pops/types/type_with_members.rb +43 -0
  461. data/lib/puppet/pops/types/types.rb +456 -219
  462. data/lib/puppet/pops/utils.rb +2 -2
  463. data/lib/puppet/pops/validation/checker4_0.rb +145 -8
  464. data/lib/puppet/pops/validation/tasks_checker.rb +101 -0
  465. data/lib/puppet/pops/validation/validator_factory_4_0.rb +13 -8
  466. data/lib/puppet/pops/validation.rb +14 -12
  467. data/lib/puppet/pops.rb +2 -1
  468. data/lib/puppet/property/ensure.rb +2 -2
  469. data/lib/puppet/property/keyvalue.rb +70 -8
  470. data/lib/puppet/property.rb +15 -7
  471. data/lib/puppet/provider/aix_object.rb +483 -0
  472. data/lib/puppet/provider/exec.rb +0 -2
  473. data/lib/puppet/provider/file/windows.rb +1 -1
  474. data/lib/puppet/provider/group/aix.rb +51 -110
  475. data/lib/puppet/provider/group/groupadd.rb +27 -1
  476. data/lib/puppet/provider/group/windows_adsi.rb +4 -7
  477. data/lib/puppet/provider/ldap.rb +2 -2
  478. data/lib/puppet/provider/nameservice/directoryservice.rb +7 -6
  479. data/lib/puppet/provider/nameservice/objectadd.rb +13 -24
  480. data/lib/puppet/provider/nameservice/pw.rb +14 -14
  481. data/lib/puppet/provider/nameservice.rb +20 -10
  482. data/lib/puppet/provider/package/aix.rb +5 -5
  483. data/lib/puppet/provider/package/appdmg.rb +0 -1
  484. data/lib/puppet/provider/package/apple.rb +0 -1
  485. data/lib/puppet/provider/package/dnf.rb +2 -1
  486. data/lib/puppet/provider/package/gem.rb +13 -12
  487. data/lib/puppet/provider/package/macports.rb +2 -2
  488. data/lib/puppet/provider/package/nim.rb +7 -8
  489. data/lib/puppet/provider/package/opkg.rb +1 -1
  490. data/lib/puppet/provider/package/pacman.rb +4 -4
  491. data/lib/puppet/provider/package/pip.rb +15 -6
  492. data/lib/puppet/provider/package/pkg.rb +12 -6
  493. data/lib/puppet/provider/package/pkgdmg.rb +3 -4
  494. data/lib/puppet/provider/package/pkgutil.rb +5 -5
  495. data/lib/puppet/provider/package/portage.rb +9 -10
  496. data/lib/puppet/provider/package/puppet_gem.rb +1 -1
  497. data/lib/puppet/provider/package/rpm.rb +1 -1
  498. data/lib/puppet/provider/package/windows/package.rb +1 -1
  499. data/lib/puppet/provider/package/yum.rb +34 -10
  500. data/lib/puppet/provider/package/zypper.rb +5 -5
  501. data/lib/puppet/provider/parsedfile.rb +4 -4
  502. data/lib/puppet/provider/service/base.rb +23 -10
  503. data/lib/puppet/provider/service/debian.rb +1 -0
  504. data/lib/puppet/provider/service/init.rb +2 -1
  505. data/lib/puppet/provider/service/launchd.rb +7 -8
  506. data/lib/puppet/provider/service/redhat.rb +3 -2
  507. data/lib/puppet/provider/service/runit.rb +2 -1
  508. data/lib/puppet/provider/service/smf.rb +5 -3
  509. data/lib/puppet/provider/service/systemd.rb +6 -3
  510. data/lib/puppet/provider/service/upstart.rb +11 -1
  511. data/lib/puppet/provider/service/windows.rb +37 -40
  512. data/lib/puppet/provider/user/aix.rb +143 -247
  513. data/lib/puppet/provider/user/openbsd.rb +3 -2
  514. data/lib/puppet/provider/user/pw.rb +1 -1
  515. data/lib/puppet/provider/user/user_role_add.rb +7 -1
  516. data/lib/puppet/provider/user/useradd.rb +40 -6
  517. data/lib/puppet/provider/user/windows_adsi.rb +1 -1
  518. data/lib/puppet/provider.rb +34 -13
  519. data/lib/puppet/reference/configuration.rb +12 -2
  520. data/lib/puppet/reference/providers.rb +1 -1
  521. data/lib/puppet/reference/report.rb +1 -1
  522. data/lib/puppet/reference/type.rb +11 -12
  523. data/lib/puppet/relationship.rb +2 -1
  524. data/lib/puppet/reports/http.rb +4 -2
  525. data/lib/puppet/reports/store.rb +1 -1
  526. data/lib/puppet/reports.rb +2 -2
  527. data/lib/puppet/resource/capability_finder.rb +49 -27
  528. data/lib/puppet/resource/catalog.rb +42 -34
  529. data/lib/puppet/resource/status.rb +11 -3
  530. data/lib/puppet/resource/type.rb +16 -12
  531. data/lib/puppet/resource/type_collection.rb +2 -2
  532. data/lib/puppet/resource.rb +30 -12
  533. data/lib/puppet/rest/client.rb +83 -0
  534. data/lib/puppet/rest/errors.rb +14 -0
  535. data/lib/puppet/rest/response.rb +34 -0
  536. data/lib/puppet/rest/route.rb +84 -0
  537. data/lib/puppet/rest/routes.rb +154 -0
  538. data/lib/puppet/rest/ssl_context.rb +13 -0
  539. data/lib/puppet/settings/base_setting.rb +29 -9
  540. data/lib/puppet/settings/certificate_revocation_setting.rb +21 -0
  541. data/lib/puppet/settings/config_file.rb +16 -7
  542. data/lib/puppet/settings/environment_conf.rb +29 -11
  543. data/lib/puppet/settings/file_setting.rb +1 -1
  544. data/lib/puppet/settings/ini_file.rb +66 -12
  545. data/lib/puppet/settings/ttl_setting.rb +5 -0
  546. data/lib/puppet/settings.rb +68 -38
  547. data/lib/puppet/ssl/base.rb +10 -13
  548. data/lib/puppet/ssl/certificate.rb +6 -2
  549. data/lib/puppet/ssl/certificate_request.rb +19 -21
  550. data/lib/puppet/ssl/certificate_request_attributes.rb +1 -1
  551. data/lib/puppet/ssl/certificate_signer.rb +11 -0
  552. data/lib/puppet/ssl/host.rb +413 -174
  553. data/lib/puppet/ssl/key.rb +1 -5
  554. data/lib/puppet/ssl/oids.rb +10 -4
  555. data/lib/puppet/ssl/validator/default_validator.rb +33 -19
  556. data/lib/puppet/ssl.rb +0 -1
  557. data/lib/puppet/syntax_checkers/base64.rb +6 -7
  558. data/lib/puppet/syntax_checkers/json.rb +1 -1
  559. data/lib/puppet/test/test_helper.rb +2 -3
  560. data/lib/puppet/transaction/additional_resource_generator.rb +2 -2
  561. data/lib/puppet/transaction/event.rb +38 -15
  562. data/lib/puppet/transaction/event_manager.rb +3 -1
  563. data/lib/puppet/transaction/persistence.rb +17 -2
  564. data/lib/puppet/transaction/report.rb +33 -16
  565. data/lib/puppet/transaction.rb +43 -16
  566. data/lib/puppet/type/exec.rb +23 -20
  567. data/lib/puppet/type/file/checksum.rb +7 -1
  568. data/lib/puppet/type/file/checksum_value.rb +4 -3
  569. data/lib/puppet/type/file/content.rb +17 -5
  570. data/lib/puppet/type/file/data_sync.rb +2 -1
  571. data/lib/puppet/type/file/ensure.rb +1 -1
  572. data/lib/puppet/type/file/mode.rb +1 -1
  573. data/lib/puppet/type/file/source.rb +21 -8
  574. data/lib/puppet/type/file.rb +36 -25
  575. data/lib/puppet/type/group.rb +7 -6
  576. data/lib/puppet/type/notify.rb +1 -1
  577. data/lib/puppet/type/package.rb +5 -8
  578. data/lib/puppet/type/resources.rb +1 -1
  579. data/lib/puppet/type/schedule.rb +73 -112
  580. data/lib/puppet/type/service.rb +3 -6
  581. data/lib/puppet/type/stage.rb +1 -1
  582. data/lib/puppet/type/tidy.rb +21 -8
  583. data/lib/puppet/type/user.rb +98 -50
  584. data/lib/puppet/type.rb +76 -67
  585. data/lib/puppet/util/at_fork/solaris.rb +6 -4
  586. data/lib/puppet/util/autoload.rb +62 -54
  587. data/lib/puppet/util/backups.rb +1 -1
  588. data/lib/puppet/util/character_encoding.rb +2 -24
  589. data/lib/puppet/util/checksums.rb +82 -3
  590. data/lib/puppet/util/classgen.rb +0 -6
  591. data/lib/puppet/util/command_line/trollop.rb +6 -5
  592. data/lib/puppet/util/command_line.rb +5 -1
  593. data/lib/puppet/util/connection.rb +74 -0
  594. data/lib/puppet/util/errors.rb +59 -8
  595. data/lib/puppet/util/execution.rb +70 -17
  596. data/lib/puppet/util/feature.rb +63 -41
  597. data/lib/puppet/util/fileparsing.rb +30 -10
  598. data/lib/puppet/util/filetype.rb +2 -2
  599. data/lib/puppet/util/http_proxy.rb +18 -8
  600. data/lib/puppet/util/inifile.rb +3 -4
  601. data/lib/puppet/util/instance_loader.rb +4 -24
  602. data/lib/puppet/util/json.rb +69 -0
  603. data/lib/puppet/util/json_lockfile.rb +3 -3
  604. data/lib/puppet/util/ldap/connection.rb +7 -7
  605. data/lib/puppet/util/ldap/manager.rb +6 -3
  606. data/lib/puppet/util/log/destinations.rb +13 -4
  607. data/lib/puppet/util/log.rb +30 -33
  608. data/lib/puppet/util/logging.rb +26 -29
  609. data/lib/puppet/util/monkey_patches.rb +1 -1
  610. data/lib/puppet/util/network_device/base.rb +1 -1
  611. data/lib/puppet/util/network_device/config.rb +22 -15
  612. data/lib/puppet/util/platform.rb +16 -0
  613. data/lib/puppet/util/plist.rb +7 -5
  614. data/lib/puppet/util/posix.rb +1 -1
  615. data/lib/puppet/util/provider_features.rb +3 -6
  616. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +3 -3
  617. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
  618. data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
  619. data/lib/puppet/util/rdoc.rb +1 -1
  620. data/lib/puppet/util/reference.rb +8 -15
  621. data/lib/puppet/util/rubygems.rb +1 -13
  622. data/lib/puppet/util/run_mode.rb +1 -1
  623. data/lib/puppet/util/selinux.rb +1 -1
  624. data/lib/puppet/util/ssl.rb +40 -1
  625. data/lib/puppet/util/storage.rb +3 -3
  626. data/lib/puppet/util/suidmanager.rb +8 -5
  627. data/lib/puppet/util/tag_set.rb +1 -1
  628. data/lib/puppet/util/tagging.rb +18 -5
  629. data/lib/puppet/util/warnings.rb +0 -2
  630. data/lib/puppet/util/windows/adsi.rb +160 -214
  631. data/lib/puppet/util/windows/api_types.rb +9 -5
  632. data/lib/puppet/util/windows/com.rb +2 -1
  633. data/lib/puppet/util/windows/eventlog.rb +10 -5
  634. data/lib/puppet/util/windows/file.rb +113 -12
  635. data/lib/puppet/util/windows/principal.rb +7 -6
  636. data/lib/puppet/util/windows/process.rb +10 -2
  637. data/lib/puppet/util/windows/registry.rb +2 -2
  638. data/lib/puppet/util/windows/security.rb +26 -14
  639. data/lib/puppet/util/windows/service.rb +770 -0
  640. data/lib/puppet/util/windows/sid.rb +60 -9
  641. data/lib/puppet/util/windows.rb +19 -2
  642. data/lib/puppet/util/yaml.rb +41 -5
  643. data/lib/puppet/util.rb +50 -50
  644. data/lib/puppet/vendor/deep_merge/README.md +2 -2
  645. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +18 -18
  646. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +1 -1
  647. data/lib/puppet/version.rb +1 -1
  648. data/lib/puppet.rb +12 -68
  649. data/lib/puppet_pal.rb +1102 -0
  650. data/locales/en/puppet.po +19 -0
  651. data/locales/ja/puppet.po +11128 -0
  652. data/locales/puppet.pot +3723 -2251
  653. data/man/man5/puppet.conf.5 +342 -187
  654. data/man/man8/puppet-agent.8 +36 -10
  655. data/man/man8/puppet-apply.8 +21 -6
  656. data/man/man8/puppet-catalog.8 +12 -15
  657. data/man/man8/puppet-config.8 +40 -6
  658. data/man/man8/puppet-describe.8 +3 -3
  659. data/man/man8/puppet-device.8 +48 -14
  660. data/man/man8/puppet-doc.8 +5 -5
  661. data/man/man8/puppet-epp.8 +49 -21
  662. data/man/man8/puppet-facts.8 +58 -9
  663. data/man/man8/puppet-filebucket.8 +76 -10
  664. data/man/man8/puppet-generate.8 +84 -0
  665. data/man/man8/puppet-help.8 +4 -4
  666. data/man/man8/puppet-key.8 +11 -17
  667. data/man/man8/puppet-lookup.8 +104 -0
  668. data/man/man8/puppet-man.8 +13 -7
  669. data/man/man8/puppet-module.8 +29 -98
  670. data/man/man8/puppet-node.8 +12 -15
  671. data/man/man8/puppet-parser.8 +34 -11
  672. data/man/man8/puppet-plugin.8 +4 -4
  673. data/man/man8/puppet-report.8 +9 -9
  674. data/man/man8/puppet-resource.8 +4 -8
  675. data/man/man8/puppet-script.8 +67 -0
  676. data/man/man8/puppet-ssl.8 +28 -0
  677. data/man/man8/puppet-status.8 +9 -9
  678. data/man/man8/puppet.8 +21 -3
  679. data/spec/fixtures/unit/application/environments/production/data/common.yaml +2 -0
  680. data/spec/fixtures/unit/functions/hiera/hiera/backend/hieraspec_backend.rb +22 -0
  681. data/spec/fixtures/unit/functions/lookup/hiera/backend/custom_backend.rb +18 -0
  682. data/spec/fixtures/unit/functions/lookup/hiera/backend/other_backend.rb +7 -0
  683. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet_x/awesome2/echo_scheme_handler.rb +1 -1
  684. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +6 -6
  685. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_input.out +1 -0
  686. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_output.out +1 -0
  687. data/spec/fixtures/unit/provider/package/pkgng/pkg.info +0 -1
  688. data/spec/fixtures/unit/provider/package/yum/yum-check-update-plugin-output.txt +36 -0
  689. data/spec/fixtures/unit/provider/package/yum/yum-check-update-simple.txt +1 -0
  690. data/spec/fixtures/unit/provider/service/base/ps_ef.mixed_encoding +3 -0
  691. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +32 -0
  692. data/spec/integration/agent/logging_spec.rb +4 -2
  693. data/spec/integration/application/apply_spec.rb +33 -26
  694. data/spec/integration/application/lookup_spec.rb +21 -0
  695. data/spec/integration/configurer_spec.rb +2 -5
  696. data/spec/integration/data_binding_spec.rb +1 -0
  697. data/spec/integration/defaults_spec.rb +5 -10
  698. data/spec/integration/faces/config_spec.rb +16 -4
  699. data/spec/integration/faces/plugin_spec.rb +3 -0
  700. data/spec/integration/file_bucket/file_spec.rb +20 -22
  701. data/spec/integration/file_system/uniquefile_spec.rb +26 -29
  702. data/spec/integration/indirector/facts/facter_spec.rb +4 -14
  703. data/spec/integration/indirector/file_content/file_server_spec.rb +17 -0
  704. data/spec/integration/indirector/file_metadata/file_server_spec.rb +10 -0
  705. data/spec/integration/network/authconfig_spec.rb +2 -2
  706. data/spec/integration/network/http/api/indirected_routes_spec.rb +9 -38
  707. data/spec/integration/node/environment_spec.rb +1 -1
  708. data/spec/integration/node_spec.rb +0 -4
  709. data/spec/integration/parser/catalog_spec.rb +10 -6
  710. data/spec/integration/parser/collection_spec.rb +42 -3
  711. data/spec/integration/parser/compiler_spec.rb +43 -24
  712. data/spec/integration/parser/pcore_resource_spec.rb +3 -3
  713. data/spec/integration/parser/scope_spec.rb +18 -5
  714. data/spec/integration/parser/script_compiler_spec.rb +113 -0
  715. data/spec/integration/provider/service/init_spec.rb +4 -2
  716. data/spec/integration/provider/service/systemd_spec.rb +8 -4
  717. data/spec/integration/provider/service/windows_spec.rb +5 -3
  718. data/spec/integration/reference/providers_spec.rb +6 -0
  719. data/spec/integration/ssl/certificate_request_spec.rb +0 -2
  720. data/spec/integration/ssl/host_spec.rb +16 -24
  721. data/spec/integration/ssl/key_spec.rb +3 -3
  722. data/spec/integration/test/test_helper_spec.rb +32 -32
  723. data/spec/integration/transaction/report_spec.rb +11 -6
  724. data/spec/integration/type/exec_spec.rb +1 -1
  725. data/spec/integration/type/file_spec.rb +72 -18
  726. data/spec/integration/type/package_spec.rb +1 -1
  727. data/spec/integration/type_spec.rb +1 -2
  728. data/spec/integration/util/autoload_spec.rb +9 -6
  729. data/spec/integration/util/execution_spec.rb +13 -5
  730. data/spec/integration/util/rdoc/parser_spec.rb +13 -23
  731. data/spec/integration/util/settings_spec.rb +2 -1
  732. data/spec/integration/util/windows/adsi_spec.rb +89 -4
  733. data/spec/integration/util/windows/principal_spec.rb +12 -3
  734. data/spec/integration/util/windows/process_spec.rb +48 -3
  735. data/spec/integration/util/windows/registry_spec.rb +1 -1
  736. data/spec/integration/util/windows/security_spec.rb +98 -8
  737. data/spec/integration/util/windows/user_spec.rb +1 -1
  738. data/spec/integration/util_spec.rb +3 -3
  739. data/spec/lib/matchers/json.rb +27 -32
  740. data/{lib/puppet/ssl → spec/lib/puppet}/certificate_factory.rb +5 -6
  741. data/spec/lib/puppet/test_ca.rb +109 -0
  742. data/spec/lib/puppet_spec/compiler.rb +27 -0
  743. data/spec/lib/puppet_spec/files.rb +28 -23
  744. data/spec/lib/puppet_spec/language.rb +34 -35
  745. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +2 -2
  746. data/spec/lib/puppet_spec/modules.rb +20 -0
  747. data/spec/lib/puppet_spec/ssl.rb +265 -0
  748. data/spec/lib/puppet_spec/validators.rb +37 -0
  749. data/spec/shared_behaviours/file_server_terminus.rb +0 -2
  750. data/spec/shared_behaviours/file_serving_model.rb +0 -19
  751. data/spec/shared_behaviours/path_parameters.rb +1 -1
  752. data/spec/shared_behaviours/things_that_declare_options.rb +2 -2
  753. data/spec/shared_contexts/checksum.rb +4 -1
  754. data/spec/shared_contexts/digests.rb +46 -1
  755. data/spec/shared_contexts/types_setup.rb +66 -7
  756. data/spec/shared_examples/rhel_package_provider.rb +2 -2
  757. data/spec/spec_helper.rb +7 -14
  758. data/spec/unit/agent_spec.rb +48 -4
  759. data/spec/unit/application/agent_spec.rb +5 -20
  760. data/spec/unit/application/apply_spec.rb +4 -12
  761. data/spec/unit/application/config_spec.rb +4 -0
  762. data/spec/unit/application/device_spec.rb +141 -10
  763. data/spec/unit/application/face_base_spec.rb +2 -2
  764. data/spec/unit/application/filebucket_spec.rb +18 -4
  765. data/spec/unit/application/lookup_spec.rb +46 -9
  766. data/spec/unit/application/ssl_spec.rb +322 -0
  767. data/spec/unit/application_spec.rb +46 -4
  768. data/spec/unit/capability_spec.rb +11 -9
  769. data/spec/unit/{ssl/certificate_factory_spec.rb → certificate_factory_spec.rb} +9 -18
  770. data/spec/unit/configurer/downloader_spec.rb +6 -1
  771. data/spec/unit/configurer/plugin_handler_spec.rb +46 -18
  772. data/spec/unit/configurer_spec.rb +90 -33
  773. data/spec/unit/confine_spec.rb +16 -0
  774. data/spec/unit/context/trusted_information_spec.rb +3 -2
  775. data/spec/unit/daemon_spec.rb +3 -2
  776. data/spec/unit/data_providers/hiera_data_provider_spec.rb +4 -4
  777. data/spec/unit/datatypes_spec.rb +353 -0
  778. data/spec/unit/defaults_spec.rb +108 -6
  779. data/spec/unit/environments_spec.rb +62 -0
  780. data/spec/unit/etc_spec.rb +1 -1
  781. data/spec/unit/face/config_spec.rb +185 -21
  782. data/spec/unit/face/epp_face_spec.rb +70 -6
  783. data/spec/unit/face/facts_spec.rb +53 -0
  784. data/spec/unit/face/help_spec.rb +64 -70
  785. data/spec/unit/face/man_spec.rb +26 -0
  786. data/spec/unit/face/module/list_spec.rb +0 -61
  787. data/spec/unit/face/module/search_spec.rb +12 -1
  788. data/spec/unit/face/node_spec.rb +9 -32
  789. data/spec/unit/face/parser_spec.rb +80 -2
  790. data/spec/unit/face/plugin_spec.rb +50 -4
  791. data/spec/unit/file_bucket/dipper_spec.rb +29 -13
  792. data/spec/unit/file_serving/base_spec.rb +6 -9
  793. data/spec/unit/file_serving/configuration/parser_spec.rb +2 -2
  794. data/spec/unit/file_serving/configuration_spec.rb +14 -4
  795. data/spec/unit/file_serving/content_spec.rb +0 -1
  796. data/spec/unit/file_serving/fileset_spec.rb +0 -1
  797. data/spec/unit/file_serving/metadata_spec.rb +4 -5
  798. data/spec/unit/file_serving/mount/locales_spec.rb +73 -0
  799. data/spec/unit/file_serving/mount/modules_spec.rb +1 -1
  800. data/spec/unit/file_serving/mount/tasks_spec.rb +72 -0
  801. data/spec/unit/file_serving/terminus_selector_spec.rb +0 -2
  802. data/spec/unit/file_system/path_pattern_spec.rb +1 -1
  803. data/spec/unit/file_system/uniquefile_spec.rb +2 -2
  804. data/spec/unit/file_system_spec.rb +7 -4
  805. data/spec/unit/forge/forge_spec.rb +2 -2
  806. data/spec/unit/forge/module_release_spec.rb +70 -0
  807. data/spec/unit/forge_spec.rb +106 -2
  808. data/spec/unit/functions/abs_spec.rb +70 -0
  809. data/spec/unit/functions/all_spec.rb +97 -0
  810. data/spec/unit/functions/any_spec.rb +109 -0
  811. data/spec/unit/functions/assert_type_spec.rb +1 -1
  812. data/spec/unit/functions/break_spec.rb +144 -54
  813. data/spec/unit/functions/call_spec.rb +59 -5
  814. data/spec/unit/functions/camelcase_spec.rb +34 -0
  815. data/spec/unit/functions/capitalize_spec.rb +34 -0
  816. data/spec/unit/functions/ceiling_spec.rb +65 -0
  817. data/spec/unit/functions/chomp_spec.rb +46 -0
  818. data/spec/unit/functions/chop_spec.rb +38 -0
  819. data/spec/unit/functions/compare_spec.rb +147 -0
  820. data/spec/unit/functions/contain_spec.rb +1 -0
  821. data/spec/unit/functions/convert_to_spec.rb +25 -0
  822. data/spec/unit/functions/defined_spec.rb +2 -2
  823. data/spec/unit/functions/downcase_spec.rb +34 -0
  824. data/spec/unit/functions/empty_spec.rb +77 -0
  825. data/spec/unit/functions/epp_spec.rb +21 -3
  826. data/spec/unit/functions/filter_spec.rb +4 -4
  827. data/spec/unit/functions/flatten_spec.rb +31 -0
  828. data/spec/unit/functions/floor_spec.rb +65 -0
  829. data/spec/unit/functions/get_spec.rb +135 -0
  830. data/spec/unit/functions/getvar_spec.rb +121 -0
  831. data/spec/unit/functions/hiera_spec.rb +19 -49
  832. data/spec/unit/functions/include_spec.rb +16 -1
  833. data/spec/unit/functions/inline_epp_spec.rb +1 -1
  834. data/spec/unit/functions/join_spec.rb +33 -0
  835. data/spec/unit/functions/keys_spec.rb +31 -0
  836. data/spec/unit/functions/length_spec.rb +50 -0
  837. data/spec/unit/functions/lookup_fixture_spec.rb +1 -1
  838. data/spec/unit/functions/lookup_spec.rb +198 -80
  839. data/spec/unit/functions/lstrip_spec.rb +30 -0
  840. data/spec/unit/functions/match_spec.rb +21 -4
  841. data/spec/unit/functions/max_spec.rb +129 -0
  842. data/spec/unit/functions/min_spec.rb +129 -0
  843. data/spec/unit/functions/module_directory_spec.rb +43 -0
  844. data/spec/unit/functions/new_spec.rb +81 -14
  845. data/spec/unit/functions/next_spec.rb +1 -1
  846. data/spec/unit/functions/regsubst_spec.rb +4 -5
  847. data/spec/unit/functions/require_spec.rb +2 -0
  848. data/spec/unit/functions/return_spec.rb +2 -2
  849. data/spec/unit/functions/round_spec.rb +41 -0
  850. data/spec/unit/functions/rstrip_spec.rb +30 -0
  851. data/spec/unit/functions/shared.rb +12 -0
  852. data/spec/unit/functions/size_spec.rb +50 -0
  853. data/spec/unit/functions/sort_spec.rb +79 -0
  854. data/spec/unit/functions/split_spec.rb +3 -4
  855. data/spec/unit/functions/step_spec.rb +1 -1
  856. data/spec/unit/functions/strftime_spec.rb +2 -2
  857. data/spec/unit/functions/strip_spec.rb +30 -0
  858. data/spec/unit/functions/tree_each_spec.rb +493 -0
  859. data/spec/unit/functions/upcase_spec.rb +34 -0
  860. data/spec/unit/functions/values_spec.rb +30 -0
  861. data/spec/unit/functions/versioncmp_spec.rb +3 -4
  862. data/spec/unit/functions4_spec.rb +146 -76
  863. data/spec/unit/gettext/config_spec.rb +144 -0
  864. data/spec/unit/gettext/module_loading_spec.rb +53 -0
  865. data/spec/unit/graph/relationship_graph_spec.rb +15 -0
  866. data/spec/unit/graph/simple_graph_spec.rb +43 -3
  867. data/spec/unit/indirector/catalog/compiler_spec.rb +3 -18
  868. data/spec/unit/indirector/certificate/file_spec.rb +0 -8
  869. data/spec/unit/indirector/direct_file_server_spec.rb +44 -46
  870. data/spec/unit/indirector/exec_spec.rb +29 -23
  871. data/spec/unit/indirector/facts/rest_spec.rb +45 -0
  872. data/spec/unit/indirector/facts/yaml_spec.rb +95 -78
  873. data/spec/unit/indirector/file_bucket_file/file_spec.rb +156 -99
  874. data/spec/unit/indirector/file_server_spec.rb +122 -116
  875. data/spec/unit/indirector/indirection_spec.rb +25 -10
  876. data/spec/unit/indirector/json_spec.rb +0 -11
  877. data/spec/unit/indirector/key/file_spec.rb +0 -17
  878. data/spec/unit/indirector/node/exec_spec.rb +43 -22
  879. data/spec/unit/indirector/request_spec.rb +47 -6
  880. data/spec/unit/indirector/resource/ral_spec.rb +1 -0
  881. data/spec/unit/indirector/rest_spec.rb +45 -2
  882. data/spec/unit/indirector/ssl_file_spec.rb +37 -59
  883. data/spec/unit/indirector/terminus_spec.rb +3 -3
  884. data/spec/unit/indirector/yaml_spec.rb +87 -64
  885. data/spec/unit/indirector_spec.rb +0 -1
  886. data/spec/unit/info_service_spec.rb +203 -3
  887. data/spec/unit/interface/action_manager_spec.rb +1 -1
  888. data/spec/unit/interface/action_spec.rb +34 -1
  889. data/spec/unit/interface_spec.rb +12 -0
  890. data/spec/unit/module_spec.rb +89 -4
  891. data/spec/unit/module_tool/applications/installer_spec.rb +10 -2
  892. data/spec/unit/module_tool/applications/uninstaller_spec.rb +8 -0
  893. data/spec/unit/module_tool/applications/unpacker_spec.rb +4 -4
  894. data/spec/unit/module_tool/applications/upgrader_spec.rb +7 -1
  895. data/spec/unit/module_tool/tar/mini_spec.rb +34 -5
  896. data/spec/unit/network/formats_spec.rb +31 -13
  897. data/spec/unit/network/http/api/indirected_routes_spec.rb +9 -5
  898. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +5 -7
  899. data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -1
  900. data/spec/unit/network/http/api_spec.rb +0 -26
  901. data/spec/unit/network/http/compression_spec.rb +6 -3
  902. data/spec/unit/network/http/connection_spec.rb +99 -47
  903. data/spec/unit/network/http/factory_spec.rb +32 -11
  904. data/spec/unit/network/http/handler_spec.rb +3 -2
  905. data/spec/unit/network/resolver_spec.rb +87 -12
  906. data/spec/unit/node/environment_spec.rb +38 -6
  907. data/spec/unit/node/facts_spec.rb +14 -1
  908. data/spec/unit/node_spec.rb +121 -23
  909. data/spec/unit/other/selinux_spec.rb +0 -71
  910. data/spec/unit/parser/ast/leaf_spec.rb +3 -4
  911. data/spec/unit/parser/compiler_spec.rb +9 -2
  912. data/spec/unit/parser/environment_compiler_spec.rb +55 -17
  913. data/spec/unit/parser/functions/create_resources_spec.rb +10 -1
  914. data/spec/unit/parser/functions/digest_spec.rb +1 -5
  915. data/spec/unit/parser/functions/fail_spec.rb +1 -5
  916. data/spec/unit/parser/functions/file_spec.rb +0 -4
  917. data/spec/unit/parser/functions/fqdn_rand_spec.rb +24 -0
  918. data/spec/unit/parser/functions/generate_spec.rb +29 -31
  919. data/spec/unit/parser/functions/inline_template_spec.rb +7 -4
  920. data/spec/unit/parser/functions/realize_spec.rb +9 -0
  921. data/spec/unit/parser/functions/regsubst_spec.rb +0 -4
  922. data/spec/unit/parser/functions/scanf_spec.rb +0 -4
  923. data/spec/unit/parser/functions/split_spec.rb +0 -4
  924. data/spec/unit/parser/functions/sprintf_spec.rb +26 -4
  925. data/spec/unit/parser/functions/tag_spec.rb +7 -4
  926. data/spec/unit/parser/functions/tagged_spec.rb +37 -0
  927. data/spec/unit/parser/functions/template_spec.rb +8 -4
  928. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -4
  929. data/spec/unit/parser/functions_spec.rb +27 -2
  930. data/spec/unit/parser/resource/param_spec.rb +2 -2
  931. data/spec/unit/parser/resource_spec.rb +0 -1
  932. data/spec/unit/parser/scope_spec.rb +23 -4
  933. data/spec/unit/parser/type_loader_spec.rb +1 -1
  934. data/spec/unit/pops/adaptable_spec.rb +0 -1
  935. data/spec/unit/pops/evaluator/access_ops_spec.rb +5 -0
  936. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +10 -0
  937. data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -1
  938. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +78 -16
  939. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +4 -8
  940. data/spec/unit/pops/factory_rspec_helper.rb +1 -1
  941. data/spec/unit/pops/factory_spec.rb +10 -6
  942. data/spec/unit/pops/issues_spec.rb +23 -8
  943. data/spec/unit/pops/loaders/dependency_loader_spec.rb +2 -2
  944. data/spec/unit/pops/loaders/loader_spec.rb +495 -0
  945. data/spec/unit/pops/loaders/loaders_spec.rb +64 -19
  946. data/spec/unit/pops/loaders/module_loaders_spec.rb +75 -0
  947. data/spec/unit/pops/loaders/static_loader_spec.rb +16 -44
  948. data/spec/unit/pops/lookup/interpolation_spec.rb +5 -0
  949. data/spec/unit/pops/lookup/lookup_spec.rb +56 -0
  950. data/spec/unit/pops/model/model_spec.rb +5 -0
  951. data/spec/unit/pops/model/pn_transformer_spec.rb +53 -0
  952. data/spec/unit/pops/parser/lexer2_spec.rb +119 -26
  953. data/spec/unit/pops/parser/locator_spec.rb +20 -0
  954. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +67 -4
  955. data/spec/unit/pops/parser/parse_calls_spec.rb +28 -0
  956. data/spec/unit/pops/parser/parse_conditionals_spec.rb +12 -0
  957. data/spec/unit/pops/parser/parse_containers_spec.rb +1 -1
  958. data/spec/unit/pops/parser/parse_functions_spec.rb +1 -1
  959. data/spec/unit/pops/parser/parse_heredoc_spec.rb +3 -3
  960. data/spec/unit/pops/parser/parse_lambda_spec.rb +1 -1
  961. data/spec/unit/pops/parser/parse_plan_spec.rb +48 -0
  962. data/spec/unit/pops/parser/parse_resource_spec.rb +35 -35
  963. data/spec/unit/pops/parser/parser_spec.rb +138 -0
  964. data/spec/unit/pops/parser/pn_parser_spec.rb +101 -0
  965. data/spec/unit/pops/pn_spec.rb +148 -0
  966. data/spec/unit/pops/puppet_stack_spec.rb +38 -9
  967. data/spec/unit/pops/serialization/packer_spec.rb +8 -0
  968. data/spec/unit/pops/serialization/serialization_spec.rb +38 -6
  969. data/spec/unit/pops/serialization/to_from_hr_spec.rb +134 -5
  970. data/spec/unit/pops/serialization/to_stringified_spec.rb +157 -0
  971. data/spec/unit/pops/types/deferred_spec.rb +87 -0
  972. data/spec/unit/pops/types/error_spec.rb +207 -0
  973. data/spec/unit/pops/types/iterable_spec.rb +10 -10
  974. data/spec/unit/pops/types/p_init_type_spec.rb +383 -0
  975. data/spec/unit/pops/types/p_object_type_spec.rb +531 -54
  976. data/spec/unit/pops/types/p_sensitive_type_spec.rb +4 -0
  977. data/spec/unit/pops/types/p_timespan_type_spec.rb +32 -4
  978. data/spec/unit/pops/types/p_timestamp_type_spec.rb +64 -3
  979. data/spec/unit/pops/types/p_type_set_type_spec.rb +108 -4
  980. data/spec/unit/pops/types/p_uri_type_spec.rb +191 -0
  981. data/spec/unit/pops/types/ruby_generator_spec.rb +285 -73
  982. data/spec/unit/pops/types/string_converter_spec.rb +63 -17
  983. data/spec/unit/pops/types/task_spec.rb +485 -0
  984. data/spec/unit/pops/types/type_acceptor_spec.rb +2 -2
  985. data/spec/unit/pops/types/type_calculator_spec.rb +224 -63
  986. data/spec/unit/pops/types/type_factory_spec.rb +6 -6
  987. data/spec/unit/pops/types/type_formatter_spec.rb +37 -19
  988. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +21 -0
  989. data/spec/unit/pops/types/type_parser_spec.rb +39 -2
  990. data/spec/unit/pops/types/types_spec.rb +88 -10
  991. data/spec/unit/pops/validator/validator_spec.rb +435 -7
  992. data/spec/unit/property/keyvalue_spec.rb +97 -6
  993. data/spec/unit/property_spec.rb +14 -5
  994. data/spec/unit/provider/aix_object_spec.rb +805 -0
  995. data/spec/unit/provider/exec/posix_spec.rb +8 -8
  996. data/spec/unit/provider/exec/shell_spec.rb +2 -1
  997. data/spec/unit/provider/exec/windows_spec.rb +2 -2
  998. data/spec/unit/provider/file/windows_spec.rb +2 -2
  999. data/spec/unit/provider/group/aix_spec.rb +76 -0
  1000. data/spec/unit/provider/group/groupadd_spec.rb +77 -1
  1001. data/spec/unit/provider/group/pw_spec.rb +4 -4
  1002. data/spec/unit/provider/group/windows_adsi_spec.rb +80 -23
  1003. data/spec/unit/provider/ldap_spec.rb +0 -1
  1004. data/spec/unit/provider/nameservice_spec.rb +11 -11
  1005. data/spec/unit/provider/package/aix_spec.rb +26 -1
  1006. data/spec/unit/provider/package/aptitude_spec.rb +1 -1
  1007. data/spec/unit/provider/package/aptrpm_spec.rb +1 -1
  1008. data/spec/unit/provider/package/dnf_spec.rb +9 -2
  1009. data/spec/unit/provider/package/dpkg_spec.rb +2 -2
  1010. data/spec/unit/provider/package/gem_spec.rb +17 -7
  1011. data/spec/unit/provider/package/nim_spec.rb +2 -11
  1012. data/spec/unit/provider/package/opkg_spec.rb +2 -2
  1013. data/spec/unit/provider/package/pip_spec.rb +38 -41
  1014. data/spec/unit/provider/package/pkg_spec.rb +64 -24
  1015. data/spec/unit/provider/package/pkgng_spec.rb +1 -1
  1016. data/spec/unit/provider/package/puppet_gem_spec.rb +2 -2
  1017. data/spec/unit/provider/package/rpm_spec.rb +33 -14
  1018. data/spec/unit/provider/package/urpmi_spec.rb +9 -3
  1019. data/spec/unit/provider/package/windows/msi_package_spec.rb +1 -1
  1020. data/spec/unit/provider/package/windows/package_spec.rb +1 -1
  1021. data/spec/unit/provider/package/windows_spec.rb +3 -3
  1022. data/spec/unit/provider/package/yum_spec.rb +69 -0
  1023. data/spec/unit/provider/parsedfile_spec.rb +1 -1
  1024. data/spec/unit/provider/service/base_spec.rb +23 -5
  1025. data/spec/unit/provider/service/bsd_spec.rb +17 -16
  1026. data/spec/unit/provider/service/daemontools_spec.rb +2 -3
  1027. data/spec/unit/provider/service/debian_spec.rb +8 -4
  1028. data/spec/unit/provider/service/freebsd_spec.rb +2 -2
  1029. data/spec/unit/provider/service/gentoo_spec.rb +27 -26
  1030. data/spec/unit/provider/service/init_spec.rb +17 -16
  1031. data/spec/unit/provider/service/launchd_spec.rb +6 -3
  1032. data/spec/unit/provider/service/openbsd_spec.rb +43 -42
  1033. data/spec/unit/provider/service/openrc_spec.rb +35 -34
  1034. data/spec/unit/provider/service/openwrt_spec.rb +7 -5
  1035. data/spec/unit/provider/service/rcng_spec.rb +7 -6
  1036. data/spec/unit/provider/service/redhat_spec.rb +11 -6
  1037. data/spec/unit/provider/service/runit_spec.rb +2 -3
  1038. data/spec/unit/provider/service/smf_spec.rb +7 -7
  1039. data/spec/unit/provider/service/src_spec.rb +3 -4
  1040. data/spec/unit/provider/service/systemd_spec.rb +73 -51
  1041. data/spec/unit/provider/service/upstart_spec.rb +53 -14
  1042. data/spec/unit/provider/service/windows_spec.rb +49 -86
  1043. data/spec/unit/provider/user/aix_spec.rb +126 -121
  1044. data/spec/unit/provider/user/hpux_spec.rb +4 -3
  1045. data/spec/unit/provider/user/openbsd_spec.rb +2 -2
  1046. data/spec/unit/provider/user/pw_spec.rb +14 -14
  1047. data/spec/unit/provider/user/user_role_add_spec.rb +20 -3
  1048. data/spec/unit/provider/user/useradd_spec.rb +194 -22
  1049. data/spec/unit/provider/user/windows_adsi_spec.rb +5 -5
  1050. data/spec/unit/provider_spec.rb +210 -14
  1051. data/spec/unit/puppet_pal_2pec.rb +1020 -0
  1052. data/spec/unit/puppet_pal_catalog_spec.rb +801 -0
  1053. data/spec/unit/puppet_pal_spec.rb +4 -0
  1054. data/spec/unit/puppet_spec.rb +31 -19
  1055. data/spec/unit/resource/capability_finder_spec.rb +16 -18
  1056. data/spec/unit/resource/catalog_spec.rb +27 -12
  1057. data/spec/unit/resource/status_spec.rb +17 -4
  1058. data/spec/unit/resource/type_collection_spec.rb +4 -1
  1059. data/spec/unit/resource/type_spec.rb +24 -9
  1060. data/spec/unit/resource_spec.rb +46 -5
  1061. data/spec/unit/rest/client_spec.rb +135 -0
  1062. data/spec/unit/rest/route_spec.rb +132 -0
  1063. data/spec/unit/settings/autosign_setting_spec.rb +2 -2
  1064. data/spec/unit/settings/certificate_revocation_setting_spec.rb +37 -0
  1065. data/spec/unit/settings/config_file_spec.rb +10 -1
  1066. data/spec/unit/settings/file_setting_spec.rb +17 -9
  1067. data/spec/unit/settings/ini_file_spec.rb +314 -5
  1068. data/spec/unit/settings/path_setting_spec.rb +1 -1
  1069. data/spec/unit/settings_spec.rb +57 -7
  1070. data/spec/unit/ssl/certificate_request_attributes_spec.rb +21 -8
  1071. data/spec/unit/ssl/certificate_request_spec.rb +62 -41
  1072. data/spec/unit/ssl/certificate_spec.rb +4 -7
  1073. data/spec/unit/ssl/host_spec.rb +248 -579
  1074. data/spec/unit/ssl/key_spec.rb +0 -15
  1075. data/spec/unit/ssl/validator_spec.rb +36 -167
  1076. data/spec/unit/task_spec.rb +247 -0
  1077. data/spec/unit/transaction/additional_resource_generator_spec.rb +64 -62
  1078. data/spec/unit/transaction/event_manager_spec.rb +12 -0
  1079. data/spec/unit/transaction/persistence_spec.rb +43 -1
  1080. data/spec/unit/transaction/report_spec.rb +62 -19
  1081. data/spec/unit/transaction/resource_harness_spec.rb +2 -2
  1082. data/spec/unit/transaction_spec.rb +134 -16
  1083. data/spec/unit/type/exec_spec.rb +11 -13
  1084. data/spec/unit/type/file/checksum_spec.rb +21 -1
  1085. data/spec/unit/type/file/content_spec.rb +13 -1
  1086. data/spec/unit/type/file/selinux_spec.rb +0 -1
  1087. data/spec/unit/type/file/source_spec.rb +15 -9
  1088. data/spec/unit/type/file_spec.rb +37 -22
  1089. data/spec/unit/type/group_spec.rb +8 -0
  1090. data/spec/unit/type/package_spec.rb +10 -0
  1091. data/spec/unit/type/resources_spec.rb +26 -12
  1092. data/spec/unit/type/schedule_spec.rb +15 -1
  1093. data/spec/unit/type/service_spec.rb +36 -10
  1094. data/spec/unit/type/tidy_spec.rb +17 -1
  1095. data/spec/unit/type/user_spec.rb +24 -115
  1096. data/spec/unit/type_spec.rb +177 -98
  1097. data/spec/unit/util/autoload_spec.rb +71 -43
  1098. data/spec/unit/util/character_encoding_spec.rb +0 -43
  1099. data/spec/unit/util/checksums_spec.rb +3 -3
  1100. data/spec/unit/util/diff_spec.rb +11 -3
  1101. data/spec/unit/util/docs_spec.rb +1 -1
  1102. data/spec/unit/util/errors_spec.rb +1 -1
  1103. data/spec/unit/util/execution_spec.rb +229 -95
  1104. data/spec/unit/util/execution_stub_spec.rb +2 -2
  1105. data/spec/unit/util/feature_spec.rb +35 -17
  1106. data/spec/unit/util/filetype_spec.rb +8 -4
  1107. data/spec/unit/util/http_proxy_spec.rb +57 -0
  1108. data/spec/unit/util/inifile_spec.rb +35 -4
  1109. data/spec/unit/util/ldap/manager_spec.rb +1 -16
  1110. data/spec/unit/util/lockfile_spec.rb +1 -1
  1111. data/spec/unit/util/log/destinations_spec.rb +45 -15
  1112. data/spec/unit/util/log_spec.rb +42 -12
  1113. data/spec/unit/util/logging_spec.rb +37 -15
  1114. data/spec/unit/util/monkey_patches_spec.rb +6 -3
  1115. data/spec/unit/util/plist_spec.rb +12 -6
  1116. data/spec/unit/util/profiler/object_counts_spec.rb +2 -1
  1117. data/spec/unit/util/rubygems_spec.rb +0 -34
  1118. data/spec/unit/util/run_mode_spec.rb +7 -7
  1119. data/spec/unit/util/selinux_spec.rb +3 -3
  1120. data/spec/unit/util/storage_spec.rb +13 -1
  1121. data/spec/unit/util/suidmanager_spec.rb +5 -5
  1122. data/spec/unit/util/tag_set_spec.rb +8 -1
  1123. data/spec/unit/util/tagging_spec.rb +27 -8
  1124. data/spec/unit/util/windows/access_control_entry_spec.rb +1 -1
  1125. data/spec/unit/util/windows/access_control_list_spec.rb +1 -1
  1126. data/spec/unit/util/windows/adsi_spec.rb +39 -35
  1127. data/spec/unit/util/windows/api_types_spec.rb +52 -1
  1128. data/spec/unit/util/windows/eventlog_spec.rb +1 -1
  1129. data/spec/unit/util/windows/security_descriptor_spec.rb +1 -1
  1130. data/spec/unit/util/windows/service_spec.rb +424 -0
  1131. data/spec/unit/util/windows/sid_spec.rb +88 -17
  1132. data/spec/unit/util/windows/string_spec.rb +1 -1
  1133. data/spec/unit/util/yaml_spec.rb +162 -28
  1134. data/spec/unit/util_spec.rb +41 -76
  1135. data/spec/watchr.rb +0 -1
  1136. data/tasks/benchmark.rake +41 -0
  1137. data/tasks/ci.rake +0 -5
  1138. data/tasks/generate_ast_model.rake +55 -43
  1139. data/tasks/manpages.rake +19 -3
  1140. data/tasks/parallel.rake +12 -7
  1141. data/tasks/parser.rake +11 -3
  1142. metadata +3262 -3438
  1143. data/ext/rack/config.ru +0 -44
  1144. data/ext/rack/example-passenger-vhost.conf +0 -57
  1145. data/lib/puppet/application/ca.rb +0 -11
  1146. data/lib/puppet/application/certificate.rb +0 -17
  1147. data/lib/puppet/application/certificate_request.rb +0 -7
  1148. data/lib/puppet/application/certificate_revocation_list.rb +0 -7
  1149. data/lib/puppet/application/master.rb +0 -313
  1150. data/lib/puppet/bindings.rb +0 -147
  1151. data/lib/puppet/configurer/downloader_factory.rb +0 -34
  1152. data/lib/puppet/external/nagios/base.rb +0 -472
  1153. data/lib/puppet/external/nagios/grammar.ry +0 -248
  1154. data/lib/puppet/external/nagios/makefile +0 -9
  1155. data/lib/puppet/external/nagios/parser.rb +0 -400
  1156. data/lib/puppet/external/nagios.rb +0 -46
  1157. data/lib/puppet/face/ca.rb +0 -266
  1158. data/lib/puppet/face/certificate.rb +0 -165
  1159. data/lib/puppet/face/certificate_request.rb +0 -56
  1160. data/lib/puppet/face/certificate_revocation_list.rb +0 -56
  1161. data/lib/puppet/feature/rack.rb +0 -19
  1162. data/lib/puppet/graph/random_prioritizer.rb +0 -16
  1163. data/lib/puppet/graph/title_hash_prioritizer.rb +0 -16
  1164. data/lib/puppet/indirector/certificate/ca.rb +0 -9
  1165. data/lib/puppet/indirector/certificate/disabled_ca.rb +0 -22
  1166. data/lib/puppet/indirector/certificate_request/ca.rb +0 -22
  1167. data/lib/puppet/indirector/certificate_request/disabled_ca.rb +0 -22
  1168. data/lib/puppet/indirector/certificate_revocation_list/ca.rb +0 -8
  1169. data/lib/puppet/indirector/certificate_revocation_list/disabled_ca.rb +0 -22
  1170. data/lib/puppet/indirector/certificate_revocation_list/file.rb +0 -8
  1171. data/lib/puppet/indirector/certificate_revocation_list/rest.rb +0 -10
  1172. data/lib/puppet/indirector/certificate_status/file.rb +0 -91
  1173. data/lib/puppet/indirector/certificate_status/rest.rb +0 -11
  1174. data/lib/puppet/indirector/certificate_status.rb +0 -4
  1175. data/lib/puppet/indirector/key/ca.rb +0 -16
  1176. data/lib/puppet/indirector/key/disabled_ca.rb +0 -22
  1177. data/lib/puppet/indirector/ldap.rb +0 -80
  1178. data/lib/puppet/indirector/node/ldap.rb +0 -259
  1179. data/lib/puppet/indirector/node/write_only_yaml.rb +0 -37
  1180. data/lib/puppet/module_tool/applications/builder.rb +0 -148
  1181. data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +0 -18
  1182. data/lib/puppet/module_tool/skeleton/templates/generator/README.md.erb +0 -89
  1183. data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +0 -32
  1184. data/lib/puppet/module_tool/skeleton/templates/generator/examples/init.pp.erb +0 -12
  1185. data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +0 -48
  1186. data/lib/puppet/module_tool/skeleton/templates/generator/metadata.json.erb +0 -1
  1187. data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +0 -6
  1188. data/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +0 -1
  1189. data/lib/puppet/network/http/api/ca/v1.rb +0 -11
  1190. data/lib/puppet/network/http/api/ca.rb +0 -2
  1191. data/lib/puppet/network/http/rack/rest.rb +0 -162
  1192. data/lib/puppet/network/http/rack.rb +0 -33
  1193. data/lib/puppet/network/http/webrick/rest.rb +0 -114
  1194. data/lib/puppet/network/http/webrick.rb +0 -125
  1195. data/lib/puppet/network/server.rb +0 -39
  1196. data/lib/puppet/provider/aixobject.rb +0 -392
  1197. data/lib/puppet/provider/augeas/augeas.rb +0 -567
  1198. data/lib/puppet/provider/cisco.rb +0 -9
  1199. data/lib/puppet/provider/computer/computer.rb +0 -20
  1200. data/lib/puppet/provider/cron/crontab.rb +0 -297
  1201. data/lib/puppet/provider/host/parsed.rb +0 -46
  1202. data/lib/puppet/provider/interface/cisco.rb +0 -27
  1203. data/lib/puppet/provider/macauthorization/macauthorization.rb +0 -298
  1204. data/lib/puppet/provider/mailalias/aliases.rb +0 -50
  1205. data/lib/puppet/provider/maillist/mailman.rb +0 -108
  1206. data/lib/puppet/provider/mcx/mcxcontent.rb +0 -173
  1207. data/lib/puppet/provider/mount/parsed.rb +0 -282
  1208. data/lib/puppet/provider/mount.rb +0 -59
  1209. data/lib/puppet/provider/naginator.rb +0 -63
  1210. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +0 -590
  1211. data/lib/puppet/provider/selboolean/getsetsebool.rb +0 -47
  1212. data/lib/puppet/provider/selmodule/semodule.rb +0 -138
  1213. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +0 -105
  1214. data/lib/puppet/provider/sshkey/parsed.rb +0 -50
  1215. data/lib/puppet/provider/vlan/cisco.rb +0 -28
  1216. data/lib/puppet/provider/yumrepo/inifile.rb +0 -304
  1217. data/lib/puppet/provider/zfs/zfs.rb +0 -84
  1218. data/lib/puppet/provider/zone/solaris.rb +0 -364
  1219. data/lib/puppet/provider/zpool/zpool.rb +0 -125
  1220. data/lib/puppet/ssl/certificate_authority/autosign_command.rb +0 -45
  1221. data/lib/puppet/ssl/certificate_authority/interface.rb +0 -324
  1222. data/lib/puppet/ssl/certificate_authority.rb +0 -553
  1223. data/lib/puppet/ssl/certificate_revocation_list.rb +0 -110
  1224. data/lib/puppet/ssl/configuration.rb +0 -61
  1225. data/lib/puppet/ssl/inventory.rb +0 -55
  1226. data/lib/puppet/type/augeas.rb +0 -211
  1227. data/lib/puppet/type/computer.rb +0 -66
  1228. data/lib/puppet/type/cron.rb +0 -475
  1229. data/lib/puppet/type/host.rb +0 -95
  1230. data/lib/puppet/type/interface.rb +0 -121
  1231. data/lib/puppet/type/k5login.rb +0 -88
  1232. data/lib/puppet/type/macauthorization.rb +0 -167
  1233. data/lib/puppet/type/mailalias.rb +0 -46
  1234. data/lib/puppet/type/maillist.rb +0 -62
  1235. data/lib/puppet/type/mcx.rb +0 -98
  1236. data/lib/puppet/type/mount.rb +0 -310
  1237. data/lib/puppet/type/nagios_command.rb +0 -3
  1238. data/lib/puppet/type/nagios_contact.rb +0 -3
  1239. data/lib/puppet/type/nagios_contactgroup.rb +0 -3
  1240. data/lib/puppet/type/nagios_host.rb +0 -3
  1241. data/lib/puppet/type/nagios_hostdependency.rb +0 -3
  1242. data/lib/puppet/type/nagios_hostescalation.rb +0 -3
  1243. data/lib/puppet/type/nagios_hostextinfo.rb +0 -3
  1244. data/lib/puppet/type/nagios_hostgroup.rb +0 -3
  1245. data/lib/puppet/type/nagios_service.rb +0 -3
  1246. data/lib/puppet/type/nagios_servicedependency.rb +0 -3
  1247. data/lib/puppet/type/nagios_serviceescalation.rb +0 -3
  1248. data/lib/puppet/type/nagios_serviceextinfo.rb +0 -3
  1249. data/lib/puppet/type/nagios_servicegroup.rb +0 -3
  1250. data/lib/puppet/type/nagios_timeperiod.rb +0 -3
  1251. data/lib/puppet/type/router.rb +0 -17
  1252. data/lib/puppet/type/scheduled_task.rb +0 -184
  1253. data/lib/puppet/type/selboolean.rb +0 -26
  1254. data/lib/puppet/type/selmodule.rb +0 -59
  1255. data/lib/puppet/type/ssh_authorized_key.rb +0 -143
  1256. data/lib/puppet/type/sshkey.rb +0 -75
  1257. data/lib/puppet/type/vlan.rb +0 -26
  1258. data/lib/puppet/type/yumrepo.rb +0 -409
  1259. data/lib/puppet/type/zfs.rb +0 -150
  1260. data/lib/puppet/type/zone.rb +0 -382
  1261. data/lib/puppet/type/zpool.rb +0 -91
  1262. data/lib/puppet/util/methodhelper.rb +0 -32
  1263. data/lib/puppet/util/nagios_maker.rb +0 -85
  1264. data/lib/puppet/util/network_device/cisco/device.rb +0 -285
  1265. data/lib/puppet/util/network_device/cisco/facts.rb +0 -72
  1266. data/lib/puppet/util/network_device/cisco/interface.rb +0 -94
  1267. data/lib/puppet/util/network_device/cisco.rb +0 -4
  1268. data/lib/puppet/util/network_device/ipcalc.rb +0 -68
  1269. data/lib/puppet/util/network_device/transport/ssh.rb +0 -126
  1270. data/lib/puppet/util/network_device/transport/telnet.rb +0 -47
  1271. data/lib/puppet/util/windows/taskscheduler.rb +0 -1276
  1272. data/lib/puppet/vendor/load_semantic.rb +0 -1
  1273. data/lib/puppet/vendor/load_semantic_puppet.rb +0 -1
  1274. data/lib/puppet/vendor/semantic/lib/semantic.rb +0 -5
  1275. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph.rb +0 -60
  1276. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/graph_node.rb +0 -117
  1277. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/module_release.rb +0 -58
  1278. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/source.rb +0 -25
  1279. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency/unsatisfiable_graph.rb +0 -31
  1280. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/dependency.rb +0 -181
  1281. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/gem_version.rb +0 -3
  1282. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +0 -203
  1283. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +0 -758
  1284. data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet.rb +0 -9
  1285. data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +0 -21
  1286. data/man/man8/puppet-ca.8 +0 -182
  1287. data/man/man8/puppet-cert.8 +0 -101
  1288. data/man/man8/puppet-certificate.8 +0 -224
  1289. data/man/man8/puppet-certificate_request.8 +0 -161
  1290. data/man/man8/puppet-certificate_revocation_list.8 +0 -139
  1291. data/man/man8/puppet-inspect.8 +0 -36
  1292. data/man/man8/puppet-master.8 +0 -85
  1293. data/spec/fixtures/integration/provider/cron/crontab/create_normal_entry +0 -19
  1294. data/spec/fixtures/integration/provider/cron/crontab/create_special_entry +0 -18
  1295. data/spec/fixtures/integration/provider/cron/crontab/crontab_user1 +0 -15
  1296. data/spec/fixtures/integration/provider/cron/crontab/crontab_user2 +0 -4
  1297. data/spec/fixtures/integration/provider/cron/crontab/modify_entry +0 -13
  1298. data/spec/fixtures/integration/provider/cron/crontab/moved_cronjob_input1 +0 -15
  1299. data/spec/fixtures/integration/provider/cron/crontab/moved_cronjob_input2 +0 -6
  1300. data/spec/fixtures/integration/provider/cron/crontab/purged +0 -8
  1301. data/spec/fixtures/integration/provider/cron/crontab/remove_named_resource +0 -12
  1302. data/spec/fixtures/integration/provider/cron/crontab/remove_unnamed_resource +0 -14
  1303. data/spec/fixtures/integration/provider/cron/crontab/unspecialized +0 -15
  1304. data/spec/fixtures/integration/provider/mailalias/aliases/test1 +0 -31
  1305. data/spec/fixtures/integration/provider/sshkey/sample +0 -21
  1306. data/spec/fixtures/unit/provider/augeas/augeas/augeas/lenses/test.aug +0 -13
  1307. data/spec/fixtures/unit/provider/augeas/augeas/etc/fstab +0 -10
  1308. data/spec/fixtures/unit/provider/augeas/augeas/etc/hosts +0 -6
  1309. data/spec/fixtures/unit/provider/augeas/augeas/etc/test +0 -3
  1310. data/spec/fixtures/unit/provider/augeas/augeas/test.aug +0 -13
  1311. data/spec/fixtures/unit/provider/host/parsed/valid_hosts +0 -19
  1312. data/spec/fixtures/unit/provider/mount/mount-output.aix.txt +0 -7
  1313. data/spec/fixtures/unit/provider/mount/parsed/aix.filesystems +0 -152
  1314. data/spec/fixtures/unit/provider/mount/parsed/aix.mount +0 -11
  1315. data/spec/fixtures/unit/provider/mount/parsed/darwin.mount +0 -6
  1316. data/spec/fixtures/unit/provider/mount/parsed/freebsd.fstab +0 -8
  1317. data/spec/fixtures/unit/provider/mount/parsed/freebsd.mount +0 -3
  1318. data/spec/fixtures/unit/provider/mount/parsed/hpux.mount +0 -17
  1319. data/spec/fixtures/unit/provider/mount/parsed/linux.fstab +0 -11
  1320. data/spec/fixtures/unit/provider/mount/parsed/linux.mount +0 -5
  1321. data/spec/fixtures/unit/provider/mount/parsed/netbsd.fstab +0 -9
  1322. data/spec/fixtures/unit/provider/mount/parsed/netbsd.mount +0 -8
  1323. data/spec/fixtures/unit/provider/mount/parsed/openbsd.fstab +0 -4
  1324. data/spec/fixtures/unit/provider/mount/parsed/openbsd.mount +0 -4
  1325. data/spec/fixtures/unit/provider/mount/parsed/solaris.fstab +0 -11
  1326. data/spec/fixtures/unit/provider/mount/parsed/solaris.mount +0 -6
  1327. data/spec/fixtures/unit/provider/naginator/define_empty_param +0 -6
  1328. data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys +0 -7
  1329. data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys1 +0 -3
  1330. data/spec/fixtures/unit/provider/ssh_authorized_key/parsed/authorized_keys2 +0 -1
  1331. data/spec/fixtures/unit/provider/sshkey/parsed/sample +0 -21
  1332. data/spec/fixtures/unit/provider/sshkey/parsed/sample_with_blank_lines +0 -8
  1333. data/spec/fixtures/unit/provider/zfs/zfs/zfs-list.out +0 -2
  1334. data/spec/fixtures/unit/provider/zpool/zpool/zpool-list.out +0 -2
  1335. data/spec/integration/faces/ca_spec.rb +0 -354
  1336. data/spec/integration/indirector/node/ldap_spec.rb +0 -14
  1337. data/spec/integration/provider/cron/crontab_spec.rb +0 -241
  1338. data/spec/integration/provider/mailalias/aliases_spec.rb +0 -10
  1339. data/spec/integration/provider/mount_spec.rb +0 -161
  1340. data/spec/integration/provider/ssh_authorized_key_spec.rb +0 -219
  1341. data/spec/integration/provider/sshkey_spec.rb +0 -159
  1342. data/spec/integration/provider/yumrepo_spec.rb +0 -130
  1343. data/spec/integration/ssl/autosign_spec.rb +0 -145
  1344. data/spec/integration/ssl/certificate_authority_spec.rb +0 -162
  1345. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -34
  1346. data/spec/integration/transaction_spec.rb +0 -522
  1347. data/spec/integration/type/nagios_spec.rb +0 -71
  1348. data/spec/integration/type/user_spec.rb +0 -64
  1349. data/spec/unit/application/cert_spec.rb +0 -240
  1350. data/spec/unit/application/certificate_spec.rb +0 -22
  1351. data/spec/unit/application/master_spec.rb +0 -404
  1352. data/spec/unit/configurer/downloader_factory_spec.rb +0 -96
  1353. data/spec/unit/face/ca_spec.rb +0 -10
  1354. data/spec/unit/face/certificate_request_spec.rb +0 -10
  1355. data/spec/unit/face/certificate_revocation_list_spec.rb +0 -10
  1356. data/spec/unit/face/certificate_spec.rb +0 -231
  1357. data/spec/unit/face/module/build_spec.rb +0 -69
  1358. data/spec/unit/graph/title_hash_prioritizer_spec.rb +0 -49
  1359. data/spec/unit/indirector/certificate/ca_spec.rb +0 -23
  1360. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +0 -33
  1361. data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -57
  1362. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +0 -33
  1363. data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +0 -16
  1364. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +0 -33
  1365. data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +0 -17
  1366. data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +0 -26
  1367. data/spec/unit/indirector/certificate_status/file_spec.rb +0 -191
  1368. data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -18
  1369. data/spec/unit/indirector/code_spec.rb +0 -31
  1370. data/spec/unit/indirector/key/ca_spec.rb +0 -23
  1371. data/spec/unit/indirector/key/disabled_ca_spec.rb +0 -33
  1372. data/spec/unit/indirector/ldap_spec.rb +0 -137
  1373. data/spec/unit/indirector/node/ldap_spec.rb +0 -462
  1374. data/spec/unit/indirector/node/write_only_yaml_spec.rb +0 -12
  1375. data/spec/unit/module_tool/applications/builder_spec.rb +0 -432
  1376. data/spec/unit/network/http/api/ca/v1_spec.rb +0 -26
  1377. data/spec/unit/network/http/rack/rest_spec.rb +0 -325
  1378. data/spec/unit/network/http/rack_spec.rb +0 -43
  1379. data/spec/unit/network/http/webrick/rest_spec.rb +0 -231
  1380. data/spec/unit/network/http/webrick_spec.rb +0 -279
  1381. data/spec/unit/network/server_spec.rb +0 -95
  1382. data/spec/unit/provider/aixobject_spec.rb +0 -101
  1383. data/spec/unit/provider/augeas/augeas_spec.rb +0 -1025
  1384. data/spec/unit/provider/cisco_spec.rb +0 -15
  1385. data/spec/unit/provider/cron/crontab_spec.rb +0 -207
  1386. data/spec/unit/provider/cron/parsed_spec.rb +0 -358
  1387. data/spec/unit/provider/host/parsed_spec.rb +0 -233
  1388. data/spec/unit/provider/interface/cisco_spec.rb +0 -57
  1389. data/spec/unit/provider/macauthorization_spec.rb +0 -155
  1390. data/spec/unit/provider/mcx/mcxcontent_spec.rb +0 -192
  1391. data/spec/unit/provider/mount/parsed_spec.rb +0 -317
  1392. data/spec/unit/provider/mount_spec.rb +0 -165
  1393. data/spec/unit/provider/naginator_spec.rb +0 -79
  1394. data/spec/unit/provider/network_device_spec.rb +0 -152
  1395. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +0 -2060
  1396. data/spec/unit/provider/selboolean_spec.rb +0 -36
  1397. data/spec/unit/provider/selmodule-example.pp +0 -0
  1398. data/spec/unit/provider/selmodule_spec.rb +0 -73
  1399. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +0 -277
  1400. data/spec/unit/provider/sshkey/parsed_spec.rb +0 -95
  1401. data/spec/unit/provider/vlan/cisco_spec.rb +0 -55
  1402. data/spec/unit/provider/yumrepo/inifile_spec.rb +0 -326
  1403. data/spec/unit/provider/zfs/zfs_spec.rb +0 -106
  1404. data/spec/unit/provider/zone/solaris_spec.rb +0 -247
  1405. data/spec/unit/provider/zpool/zpool_spec.rb +0 -251
  1406. data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +0 -30
  1407. data/spec/unit/ssl/certificate_authority/interface_spec.rb +0 -560
  1408. data/spec/unit/ssl/certificate_authority_spec.rb +0 -1184
  1409. data/spec/unit/ssl/certificate_revocation_list_spec.rb +0 -196
  1410. data/spec/unit/ssl/configuration_spec.rb +0 -141
  1411. data/spec/unit/ssl/inventory_spec.rb +0 -151
  1412. data/spec/unit/type/augeas_spec.rb +0 -119
  1413. data/spec/unit/type/computer_spec.rb +0 -80
  1414. data/spec/unit/type/cron_spec.rb +0 -543
  1415. data/spec/unit/type/host_spec.rb +0 -681
  1416. data/spec/unit/type/interface_spec.rb +0 -129
  1417. data/spec/unit/type/k5login_spec.rb +0 -115
  1418. data/spec/unit/type/macauthorization_spec.rb +0 -113
  1419. data/spec/unit/type/mailalias_spec.rb +0 -49
  1420. data/spec/unit/type/maillist_spec.rb +0 -41
  1421. data/spec/unit/type/mcx_spec.rb +0 -79
  1422. data/spec/unit/type/mount_spec.rb +0 -634
  1423. data/spec/unit/type/nagios_spec.rb +0 -293
  1424. data/spec/unit/type/scheduled_task_spec.rb +0 -103
  1425. data/spec/unit/type/selboolean_spec.rb +0 -44
  1426. data/spec/unit/type/selmodule_spec.rb +0 -17
  1427. data/spec/unit/type/ssh_authorized_key_spec.rb +0 -258
  1428. data/spec/unit/type/sshkey_spec.rb +0 -77
  1429. data/spec/unit/type/vlan_spec.rb +0 -44
  1430. data/spec/unit/type/yumrepo_spec.rb +0 -398
  1431. data/spec/unit/type/zfs_spec.rb +0 -46
  1432. data/spec/unit/type/zone_spec.rb +0 -172
  1433. data/spec/unit/type/zpool_spec.rb +0 -109
  1434. data/spec/unit/util/nagios_maker_spec.rb +0 -122
  1435. data/spec/unit/util/network_device/cisco/device_spec.rb +0 -482
  1436. data/spec/unit/util/network_device/cisco/facts_spec.rb +0 -64
  1437. data/spec/unit/util/network_device/cisco/interface_spec.rb +0 -88
  1438. data/spec/unit/util/network_device/ipcalc_spec.rb +0 -62
  1439. data/spec/unit/util/network_device/transport/ssh_spec.rb +0 -218
  1440. data/spec/unit/util/network_device/transport/telnet_spec.rb +0 -86
@@ -1,19 +1,19 @@
1
1
  .\" generated with Ronn/v0.7.3
2
- .\" https://github.com/rtomayko/ronn/tree/0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-REPORT" "8" "May 2015" "Puppet Labs, LLC" "Puppet manual"
4
+ .TH "PUPPET\-REPORT" "8" "September 2018" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-report\fR \- Create, display, and submit reports\.
8
8
  .
9
9
  .SH "SYNOPSIS"
10
- puppet report \fIaction\fR [\-\-terminus TERMINUS] [\-\-extra HASH]
10
+ puppet report \fIaction\fR [\-\-terminus _TERMINUS] [\-\-extra HASH]
11
11
  .
12
12
  .SH "OPTIONS"
13
13
  Note that any setting that\'s valid in the configuration file is also a valid long argument, although it may or may not be relevant to the present action\. For example, \fBserver\fR and \fBrun_mode\fR are valid settings, so you can specify \fB\-\-server <servername>\fR, or \fB\-\-run_mode <runmode>\fR as an argument\.
14
14
  .
15
15
  .P
16
- See the configuration file documentation at \fIhttps://docs\.puppetlabs\.com/references/stable/configuration\.html\fR for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \fB\-\-genconfig\fR\.
16
+ See the configuration file documentation at \fIhttps://puppet\.com/docs/puppet/latest/configuration\.html\fR for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \fB\-\-genconfig\fR\.
17
17
  .
18
18
  .TP
19
19
  \-\-render\-as FORMAT
@@ -32,7 +32,7 @@ Whether to log debug information\.
32
32
  A terminus can take additional arguments to refine the operation, which are passed as an arbitrary hash to the back\-end\. Anything passed as the extra value is just send direct to the back\-end\.
33
33
  .
34
34
  .TP
35
- \-\-terminus TERMINUS
35
+ \-\-terminus _TERMINUS
36
36
  Indirector faces expose indirected subsystems of Puppet\. These subsystems are each able to retrieve and alter a specific type of data (with the familiar actions of \fBfind\fR, \fBsearch\fR, \fBsave\fR, and \fBdestroy\fR) from an arbitrary number of pluggable backends\. In Puppet parlance, these backends are called terminuses\.
37
37
  .
38
38
  .IP
@@ -48,7 +48,7 @@ The terminus for an action is often determined by context, but occasionally need
48
48
  \fBSYNOPSIS\fR
49
49
  .
50
50
  .IP
51
- puppet report info [\-\-terminus TERMINUS] [\-\-extra HASH]
51
+ puppet report info [\-\-terminus _TERMINUS] [\-\-extra HASH]
52
52
  .
53
53
  .IP
54
54
  \fBDESCRIPTION\fR
@@ -61,7 +61,7 @@ Prints the default terminus class for this subcommand\. Note that different run
61
61
  \fBSYNOPSIS\fR
62
62
  .
63
63
  .IP
64
- puppet report save [\-\-terminus TERMINUS] [\-\-extra HASH] \fIreport\fR
64
+ puppet report save [\-\-terminus _TERMINUS] [\-\-extra HASH] \fIreport\fR
65
65
  .
66
66
  .IP
67
67
  \fBDESCRIPTION\fR
@@ -80,7 +80,7 @@ Nothing\.
80
80
  \fBSYNOPSIS\fR
81
81
  .
82
82
  .IP
83
- puppet report submit [\-\-terminus TERMINUS] [\-\-extra HASH] \fIreport\fR
83
+ puppet report submit [\-\-terminus _TERMINUS] [\-\-extra HASH] \fIreport\fR
84
84
  .
85
85
  .IP
86
86
  \fBDESCRIPTION\fR
@@ -121,4 +121,4 @@ This subcommand is an indirector face, which exposes \fBfind\fR, \fBsearch\fR, \
121
121
  .IP "" 0
122
122
  .
123
123
  .SH "COPYRIGHT AND LICENSE"
124
- Copyright 2011 by Puppet Labs Apache 2 license; see COPYING
124
+ Copyright 2011 by Puppet Inc\. Apache 2 license; see COPYING
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
- .\" https://github.com/rtomayko/ronn/tree/0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-RESOURCE" "8" "May 2015" "Puppet Labs, LLC" "Puppet manual"
4
+ .TH "PUPPET\-RESOURCE" "8" "September 2018" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-resource\fR \- The resource abstraction layer shell
@@ -25,7 +25,7 @@ If given a type, a name, and a series of \fIattribute\fR=\fIvalue\fR pairs, pupp
25
25
  Note that any setting that\'s valid in the configuration file is also a valid long argument\. For example, \'ssldir\' is a valid setting, so you can specify \'\-\-ssldir \fIdirectory\fR\' as an argument\.
26
26
  .
27
27
  .P
28
- See the configuration file documentation at https://docs\.puppetlabs\.com/references/stable/configuration\.html for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \'\-\-genconfig\'\.
28
+ See the configuration file documentation at https://puppet\.com/docs/puppet/latest/configuration\.html for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \'\-\-genconfig\'\.
29
29
  .
30
30
  .TP
31
31
  \-\-debug
@@ -36,10 +36,6 @@ Enable full debugging\.
36
36
  Write the results of the query to a file, open the file in an editor, and read the file back in as an executable Puppet manifest\.
37
37
  .
38
38
  .TP
39
- \-\-host
40
- When specified, connect to the resource server on the named host and retrieve the list of resouces of the type specified\.
41
- .
42
- .TP
43
39
  \-\-help
44
40
  Print this help message\.
45
41
  .
@@ -85,4 +81,4 @@ user { \'luke\':
85
81
  Luke Kanies
86
82
  .
87
83
  .SH "COPYRIGHT"
88
- Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2\.0 License
84
+ Copyright (c) 2011 Puppet Inc\., LLC Licensed under the Apache 2\.0 License
@@ -0,0 +1,67 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "PUPPET\-SCRIPT" "8" "September 2018" "Puppet, Inc." "Puppet manual"
5
+ .
6
+ .SH "NAME"
7
+ \fBpuppet\-script\fR \- Run a puppet manifests as a script without compiling a catalog
8
+ .
9
+ .SH "SYNOPSIS"
10
+ Runs a puppet language script without compiling a catalog\.
11
+ .
12
+ .SH "USAGE"
13
+ puppet script [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose] [\-e|\-\-execute] [\-l|\-\-logdest syslog|eventlog|\fIFILE\fR|console] [\-\-noop] \fIfile\fR
14
+ .
15
+ .SH "DESCRIPTION"
16
+ This is a standalone puppet script runner tool; use it to run puppet code without compiling a catalog\.
17
+ .
18
+ .P
19
+ When provided with a modulepath, via command line or config file, puppet script can load functions, types, tasks and plans from modules\.
20
+ .
21
+ .SH "OPTIONS"
22
+ Note that any setting that\'s valid in the configuration file is also a valid long argument\. For example, \'environment\' is a valid setting, so you can specify \'\-\-environment mytest\' as an argument\.
23
+ .
24
+ .P
25
+ See the configuration file documentation at https://puppet\.com/docs/puppet/latest/configuration\.html for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \'\-\-genconfig\'\.
26
+ .
27
+ .TP
28
+ \-\-debug
29
+ Enable full debugging\.
30
+ .
31
+ .TP
32
+ \-\-help
33
+ Print this help message
34
+ .
35
+ .TP
36
+ \-\-logdest
37
+ Where to send log messages\. Choose between \'syslog\' (the POSIX syslog service), \'eventlog\' (the Windows Event Log), \'console\', or the path to a log file\. Defaults to \'console\'\.
38
+ .
39
+ .IP
40
+ A path ending with \'\.json\' will receive structured output in JSON format\. The log file will not have an ending \']\' automatically written to it due to the appending nature of logging\. It must be appended manually to make the content valid JSON\.
41
+ .
42
+ .TP
43
+ \-\-noop
44
+ Use \'noop\' mode where Puppet runs in a no\-op or dry\-run mode\. This is useful for seeing what changes Puppet will make without actually executing the changes\. Applies to tasks only\.
45
+ .
46
+ .TP
47
+ \-\-execute
48
+ Execute a specific piece of Puppet code
49
+ .
50
+ .TP
51
+ \-\-verbose
52
+ Print extra information\.
53
+ .
54
+ .SH "EXAMPLE"
55
+ .
56
+ .nf
57
+
58
+ $ puppet script \-l /tmp/manifest\.log manifest\.pp
59
+ $ puppet script \-\-modulepath=/root/dev/modules \-e \'notice("hello world")\'
60
+ .
61
+ .fi
62
+ .
63
+ .SH "AUTHOR"
64
+ Henrik Lindberg
65
+ .
66
+ .SH "COPYRIGHT"
67
+ Copyright (c) 2017 Puppet Inc\., LLC Licensed under the Apache 2\.0 License
@@ -0,0 +1,28 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "PUPPET\-SSL" "8" "September 2018" "Puppet, Inc." "Puppet manual"
5
+ .
6
+ .SH "NAME"
7
+ \fBpuppet\-ssl\fR \- Manage SSL keys and certificates for puppet SSL clients
8
+ .
9
+ .SH "SYNOPSIS"
10
+ Manage SSL keys and certificates for an SSL clients needed to communicate with a puppet infrastructure\.
11
+ .
12
+ .SH "USAGE"
13
+ puppet ssl \fIaction\fR [\-\-certname \fINAME\fR]
14
+ .
15
+ .SH "ACTIONS"
16
+ .
17
+ .TP
18
+ submit_request
19
+ Generate a certificate signing request (CSR) and submit it to the CA\. If a private and public key pair already exist, they will be used to generate the CSR\. Otherwise a new key pair will be generated\. If a CSR has already been submitted with the given \fBcertname\fR, then the operation will fail\.
20
+ .
21
+ .TP
22
+ download_cert
23
+ Download a certificate for this host\. If the current private key matches the downloaded certificate, then the certificate will be saved and used for subsequent requests\. If there is already an existing certificate, it will be overwritten\.
24
+ .
25
+ .TP
26
+ verify
27
+ Verify the private key and certificate are present and match, verify the certificate is issued by a trusted CA, and check revocation status\.
28
+
@@ -1,19 +1,19 @@
1
1
  .\" generated with Ronn/v0.7.3
2
- .\" https://github.com/rtomayko/ronn/tree/0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-STATUS" "8" "May 2015" "Puppet Labs, LLC" "Puppet manual"
4
+ .TH "PUPPET\-STATUS" "8" "September 2018" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-status\fR \- View puppet server status\.
8
8
  .
9
9
  .SH "SYNOPSIS"
10
- puppet status \fIaction\fR [\-\-terminus TERMINUS] [\-\-extra HASH]
10
+ puppet status \fIaction\fR [\-\-terminus _TERMINUS] [\-\-extra HASH]
11
11
  .
12
12
  .SH "OPTIONS"
13
13
  Note that any setting that\'s valid in the configuration file is also a valid long argument, although it may or may not be relevant to the present action\. For example, \fBserver\fR and \fBrun_mode\fR are valid settings, so you can specify \fB\-\-server <servername>\fR, or \fB\-\-run_mode <runmode>\fR as an argument\.
14
14
  .
15
15
  .P
16
- See the configuration file documentation at \fIhttps://docs\.puppetlabs\.com/references/stable/configuration\.html\fR for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \fB\-\-genconfig\fR\.
16
+ See the configuration file documentation at \fIhttps://puppet\.com/docs/puppet/latest/configuration\.html\fR for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \fB\-\-genconfig\fR\.
17
17
  .
18
18
  .TP
19
19
  \-\-render\-as FORMAT
@@ -32,7 +32,7 @@ Whether to log debug information\.
32
32
  A terminus can take additional arguments to refine the operation, which are passed as an arbitrary hash to the back\-end\. Anything passed as the extra value is just send direct to the back\-end\.
33
33
  .
34
34
  .TP
35
- \-\-terminus TERMINUS
35
+ \-\-terminus _TERMINUS
36
36
  Indirector faces expose indirected subsystems of Puppet\. These subsystems are each able to retrieve and alter a specific type of data (with the familiar actions of \fBfind\fR, \fBsearch\fR, \fBsave\fR, and \fBdestroy\fR) from an arbitrary number of pluggable backends\. In Puppet parlance, these backends are called terminuses\.
37
37
  .
38
38
  .IP
@@ -48,7 +48,7 @@ The terminus for an action is often determined by context, but occasionally need
48
48
  \fBSYNOPSIS\fR
49
49
  .
50
50
  .IP
51
- puppet status [\-\-terminus TERMINUS] [\-\-extra HASH] [\fIkey\fR]
51
+ puppet status [\-\-terminus _TERMINUS] [\-\-extra HASH] [\fIkey\fR]
52
52
  .
53
53
  .IP
54
54
  \fBDESCRIPTION\fR
@@ -69,14 +69,14 @@ A "true" response or a low\-level connection error\. When used from the Ruby API
69
69
  \fBNOTES\fR
70
70
  .
71
71
  .IP
72
- This action requires that the server\'s \fBauth\.conf\fR file allow find access to the \fBstatus\fR REST terminus\. Puppet agent does not use this facility, and it is turned off by default\. See \fIhttps://docs\.puppetlabs\.com/guides/rest_auth_conf\.html\fR for more details\.
72
+ This action requires that the server\'s \fBauth\.conf\fR file allow find access to the \fBstatus\fR REST terminus\. Puppet agent does not use this facility, and it is turned off by default\. See \fIhttps://puppet\.com/docs/puppet/latest/config_file_auth\.html\fR for more details\.
73
73
  .
74
74
  .TP
75
75
  \fBinfo\fR \- Print the default terminus class for this face\.
76
76
  \fBSYNOPSIS\fR
77
77
  .
78
78
  .IP
79
- puppet status info [\-\-terminus TERMINUS] [\-\-extra HASH]
79
+ puppet status info [\-\-terminus _TERMINUS] [\-\-extra HASH]
80
80
  .
81
81
  .IP
82
82
  \fBDESCRIPTION\fR
@@ -105,4 +105,4 @@ This subcommand is an indirector face, which exposes \fBfind\fR, \fBsearch\fR, \
105
105
  .IP "" 0
106
106
  .
107
107
  .SH "COPYRIGHT AND LICENSE"
108
- Copyright 2011 by Puppet Labs Apache 2 license; see COPYING
108
+ Copyright 2011 by Puppet Inc\. Apache 2 license; see COPYING
data/man/man8/puppet.8 CHANGED
@@ -1,10 +1,28 @@
1
1
  .\" generated with Ronn/v0.7.3
2
- .\" https://github.com/rtomayko/ronn/tree/0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET" "8" "May 2015" "Puppet Labs, LLC" "Puppet manual"
4
+ .TH "PUPPET" "8" "September 2018" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\fR
8
8
  .
9
9
  .P
10
- [1;31mError: Could not parse application options: invalid option: \-\-help[0m
10
+ Usage: puppet \fIsubcommand\fR [options] \fIaction\fR [options]
11
+ .
12
+ .P
13
+ Available subcommands:
14
+ .
15
+ .P
16
+ Common:
17
+ .
18
+ .br
19
+ agent The puppet agent daemon apply Apply Puppet manifests locally config Interact with Puppet\'s settings\. help Display Puppet help\. lookup Interactive Hiera lookup module Creates, installs and searches for modules on the Puppet Forge\. resource The resource abstraction layer shell
20
+ .
21
+ .P
22
+ Specialized:
23
+ .
24
+ .br
25
+ catalog Compile, save, view, and convert catalogs\. describe Display help about resource types device Manage remote network devices doc Generate Puppet references epp Interact directly with the EPP template parser/renderer\. facts Retrieve and store facts\. filebucket Store and retrieve files in a filebucket generate Generates Puppet code from Ruby definitions\. node View and manage node definitions\. parser Interact directly with the parser\. script Run a puppet manifests as a script without compiling a catalog ssl Manage SSL keys and certificates for puppet SSL clients
26
+ .
27
+ .P
28
+ See \'puppet help \fIsubcommand\fR \fIaction\fR\' for help on a specific subcommand action\. See \'puppet help \fIsubcommand\fR\' for help on a specific subcommand\. Puppet v6\.0\.0
@@ -18,5 +18,7 @@ f.one:
18
18
 
19
19
  ab: "%{hiera('a')} and %{hiera('b')}"
20
20
 
21
+ g: "This is%{facts.cx} in facts hash"
22
+
21
23
  lookup_options:
22
24
  a: first
@@ -0,0 +1,22 @@
1
+ class Hiera::Backend::Hieraspec_backend
2
+ def initialize(cache = nil)
3
+ Hiera.debug('Custom_backend starting')
4
+ end
5
+
6
+ def lookup(key, scope, order_override, resolution_type, context)
7
+ case key
8
+ when 'datasources'
9
+ Hiera::Backend.datasources(scope, order_override) { |source| source }
10
+ when 'resolution_type'
11
+ if resolution_type == :hash
12
+ { key => resolution_type.to_s }
13
+ elsif resolution_type == :array
14
+ [ key, resolution_type.to_s ]
15
+ else
16
+ "resolution_type=#{resolution_type}"
17
+ end
18
+ else
19
+ throw :no_such_key
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,18 @@
1
+ class Hiera::Backend::Custom_backend
2
+ def lookup(key, scope, order_override, resolution_type, context)
3
+ case key
4
+ when 'hash_c'
5
+ { 'hash_ca' => { 'cad' => 'value hash_c.hash_ca.cad (from global custom)' }}
6
+ when 'hash'
7
+ { 'array' => [ 'x5,x6' ] }
8
+ when 'array'
9
+ [ 'x5,x6' ]
10
+ when 'datasources'
11
+ Hiera::Backend.datasources(scope, order_override) { |source| source }
12
+ when 'dotted.key'
13
+ 'custom backend received request for dotted.key value'
14
+ else
15
+ throw :no_such_key
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,7 @@
1
+ class Hiera::Backend::Other_backend
2
+ def lookup(key, scope, order_override, resolution_type, context)
3
+ value = Hiera::Config[:other][key.to_sym]
4
+ throw :no_such_key if value.nil?
5
+ value
6
+ end
7
+ end
@@ -11,7 +11,7 @@ module PuppetX
11
11
  factory = ::Puppet::Pops::Binder::BindingsFactory
12
12
  bindings = factory.named_bindings("echo")
13
13
  bindings.bind.name(uri.path.gsub(/\//, '::')).to("echo: #{uri.path.gsub(/\//, ' ').strip!}")
14
- result = factory.contributed_bindings("echo", bindings.model) ### , nil)
14
+ factory.contributed_bindings("echo", bindings.model) ### , nil)
15
15
  end
16
16
  end
17
17
  end
@@ -1,12 +1,12 @@
1
- function puppet_init_calling_puppet() {
1
+ function user::puppet_init_calling_puppet() {
2
2
  usee::usee_puppet()
3
3
  }
4
4
 
5
- function puppet_init_calling_puppet_init() {
5
+ function user::puppet_init_calling_puppet_init() {
6
6
  usee_puppet_init()
7
7
  }
8
8
 
9
- function puppet_init_calling_ruby() {
9
+ function user::puppet_init_calling_ruby() {
10
10
  usee::usee_ruby()
11
11
  }
12
12
 
@@ -53,18 +53,18 @@ class user {
53
53
  7: {
54
54
  # Call a puppet function that resides in usee/functions from a puppet function in init.pp
55
55
  #
56
- notify { 'case_7': message => puppet_init_calling_puppet() }
56
+ notify { 'case_7': message => user::puppet_init_calling_puppet() }
57
57
  }
58
58
  8: {
59
59
  # Call a puppet function that resides in usee/manifests/init.pp from a puppet function in init.pp
60
60
  #
61
61
  include usee
62
- notify { 'case_8': message => puppet_init_calling_puppet_init() }
62
+ notify { 'case_8': message => user::puppet_init_calling_puppet_init() }
63
63
  }
64
64
  9: {
65
65
  # Call a ruby function that resides in usee from a puppet function in init.pp
66
66
  #
67
- notify { 'case_9': message => puppet_init_calling_ruby() }
67
+ notify { 'case_9': message => user::puppet_init_calling_ruby() }
68
68
  }
69
69
  10: {
70
70
  # Call a puppet function that resides in usee/functions from a ruby function in this module
@@ -0,0 +1 @@
1
+ root:0:system:system,bin,sys,security,cron,audit,lp:/:/usr/bin/ksh:root:general:true:false:false:true:true:system:nosak:ALL:0:SYSTEM:NONE:22:files:compat:0:0:false:0:0:-1:0:0:0:0:0:0:0:8:0:0:0:-1:-1:-1:-1:-1:-1:-1:1527849270:1533085305:ssh:ssh:fd8c#!:215d#!:178e#!:12#!:290#!:fa72#!:fab2#!:882:10.10.28.247:147:This is some comment I added
@@ -0,0 +1 @@
1
+ ["root", "0", "system", "system,bin,sys,security,cron,audit,lp", "/", "/usr/bin/ksh", "root", "general", "true", "false", "false", "true", "true", "system", "nosak", "ALL", "0", "SYSTEM", "NONE", "22", "files", "compat", "0", "0", "false", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "8", "0", "0", "0", "-1", "-1", "-1", "-1", "-1", "-1", "-1", "1527849270", "1533085305", "ssh", "ssh", "fd8c:215d:178e:12:290:fa72:fab2:882", "10.10.28.247", "147", "This is some comment I added"]
@@ -1,7 +1,6 @@
1
1
  ca_root_nss 3.15.3.1 security/ca_root_nss
2
2
  curl 7.33.0 ftp/curl
3
3
  gnupg 2.0.22 security/gnupg
4
- mcollective 2.2.4 sysutils/mcollective
5
4
  nmap 6.40 security/nmap
6
5
  pkg 1.2.4_1 ports-mgmt/pkg
7
6
  zsh 5.0.2_1 shells/zsh
@@ -0,0 +1,36 @@
1
+ Loaded plugins: fastestmirror
2
+ Loading mirror speeds from cached hostfile
3
+
4
+ NetworkManager.x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 base
5
+ NetworkManager-glib.x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 base
6
+ NetworkManager-tui.x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 base
7
+ alsa-firmware.noarch 1.0.28-2.el7 base
8
+ alsa-lib.x86_64 1.0.28-2.el7 base
9
+ audit.x86_64 2.4.1-5.el7 base
10
+ audit-libs.x86_64 2.4.1-5.el7 base
11
+ authconfig.x86_64 6.2.8-9.el7 base
12
+ avahi.x86_64 0.6.31-14.el7 base
13
+ avahi-autoipd.x86_64 0.6.31-14.el7 base
14
+ avahi-libs.x86_64 0.6.31-14.el7 base
15
+ bash.x86_64 4.2.46-12.el7 base
16
+ bind-libs-lite.x86_64 32:9.9.4-18.el7_1.1 updates
17
+ bind-license.noarch 32:9.9.4-18.el7_1.1 updates
18
+ binutils.x86_64 2.23.52.0.1-30.el7_1.2 updates
19
+ biosdevname.x86_64 0.6.1-2.el7 base
20
+ btrfs-progs.x86_64 3.16.2-1.el7 base
21
+ ca-certificates.noarch 2015.2.4-70.0.el7_1 updates
22
+ centos-logos.noarch 70.0.6-2.el7.centos updates
23
+ centos-release.x86_64 7-1.1503.el7.centos.2.8 base
24
+ cpp.x86_64 4.8.3-9.el7 base
25
+ cronie.x86_64 1.4.11-13.el7 base
26
+ cronie-anacron.x86_64 1.4.11-13.el7 base
27
+ cryptsetup-libs.x86_64 1.6.6-3.el7 base
28
+ dbus.x86_64 1:1.6.12-11.el7 base
29
+ dbus-libs.x86_64 1:1.6.12-11.el7 base
30
+ device-mapper.x86_64 7:1.02.93-3.el7 base
31
+ device-mapper-event.x86_64 7:1.02.93-3.el7 base
32
+ device-mapper-event-libs.x86_64 7:1.02.93-3.el7 base
33
+ device-mapper-libs.x86_64 7:1.02.93-3.el7 base
34
+ Random plugin output
35
+ Loaded plugins: fastestmirror, product-id, fake-plugin
36
+ Random plugin failed, is the mirror available?
@@ -9,4 +9,5 @@ curl.i686 7.32.0-10.fc20 updates
9
9
  curl.x86_64 7.32.0-10.fc20 updates
10
10
  gawk.i686 4.1.0-3.fc20 updates
11
11
  dhclient.i686 12:4.1.1-38.P1.fc20 updates
12
+ java-1.8.0-openjdk.x86_64 1:1.8.0.131-2.b11.el7_3 updates
12
13
  selinux-policy.noarch 3.12.1-163.fc20 updates-testing
@@ -0,0 +1,3 @@
1
+ UID PID PPID C STIME TTY TIME CMD
2
+ root 4113 26549 0 11:07 pts/0 00:00:00 latin-1 args m�ni interesting furry animals
3
+ root 4056 26549 0 11:06 pts/0 00:00:00 utf-8 args including the majestik møøse
@@ -0,0 +1,32 @@
1
+
2
+ test_aix_user:
3
+ password = some_password
4
+ lastupdate = last_update
5
+
6
+ no_password_user:
7
+ lastupdate = another_last_update
8
+
9
+ daemon:
10
+ password = *
11
+
12
+ bin:
13
+ password = *
14
+
15
+ sys:
16
+ password = *
17
+
18
+ adm:
19
+ password = *
20
+
21
+ uucp:
22
+ password = *
23
+
24
+ guest:
25
+ password = *
26
+
27
+ nobody:
28
+ password = *
29
+
30
+ lpd:
31
+ password = *
32
+
@@ -71,6 +71,8 @@ describe 'agent logging' do
71
71
  before(:each) do
72
72
  # Don't actually run the agent, bypassing cert checks, forking and the puppet run itself
73
73
  Puppet::Application::Agent.any_instance.stubs(:run_command)
74
+ # Let exceptions be raised instead of exiting
75
+ Puppet::Application::Agent.any_instance.stubs(:exit_on_fail).yields
74
76
  end
75
77
 
76
78
  def double_of_bin_puppet_agent_call(argv)
@@ -79,7 +81,7 @@ describe 'agent logging' do
79
81
  command_line.execute
80
82
  end
81
83
 
82
- if Puppet.features.microsoft_windows? && argv.include?(DAEMONIZE)
84
+ if Puppet::Util::Platform.windows? && argv.include?(DAEMONIZE)
83
85
 
84
86
  it "should exit on a platform which cannot daemonize if the --daemonize flag is set" do
85
87
  expect { double_of_bin_puppet_agent_call(argv) }.to raise_error(SystemExit)
@@ -126,7 +128,7 @@ describe 'agent logging' do
126
128
  loggers << CONSOLE if verbose_or_debug_set_in_argv(argv)
127
129
  loggers << 'console' if log_dest_is_set_to(argv, LOGDEST_CONSOLE)
128
130
  loggers << '/dev/null/foo' if log_dest_is_set_to(argv, LOGDEST_FILE)
129
- if Puppet.features.microsoft_windows?
131
+ if Puppet::Util::Platform.windows?
130
132
  # an explicit call to --logdest syslog on windows is swallowed silently with no
131
133
  # logger created (see #suitable() of the syslog Puppet::Util::Log::Destination subclass)
132
134
  # however Puppet::Util::Log.newdestination('syslog') does get called...so we have