puppet 6.19.1-x86-mingw32 → 7.0.0-x86-mingw32

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

Potentially problematic release.


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

Files changed (440) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +19 -20
  4. data/README.md +1 -1
  5. data/conf/fileserver.conf +5 -10
  6. data/ext/build_defaults.yaml +1 -1
  7. data/ext/osx/file_mapping.yaml +0 -5
  8. data/ext/project_data.yaml +1 -14
  9. data/ext/redhat/puppet.spec.erb +0 -1
  10. data/ext/windows/service/daemon.rb +6 -5
  11. data/install.rb +21 -17
  12. data/lib/puppet.rb +11 -20
  13. data/lib/puppet/application.rb +172 -98
  14. data/lib/puppet/application/device.rb +100 -104
  15. data/lib/puppet/application/filebucket.rb +15 -11
  16. data/lib/puppet/application/ssl.rb +1 -1
  17. data/lib/puppet/configurer.rb +28 -33
  18. data/lib/puppet/configurer/plugin_handler.rb +21 -19
  19. data/lib/puppet/defaults.rb +95 -159
  20. data/lib/puppet/environments.rb +10 -25
  21. data/lib/puppet/face/config.rb +10 -0
  22. data/lib/puppet/face/epp.rb +12 -2
  23. data/lib/puppet/face/facts.rb +66 -6
  24. data/lib/puppet/face/help.rb +1 -1
  25. data/lib/puppet/face/plugin.rb +5 -8
  26. data/lib/puppet/ffi/windows.rb +12 -0
  27. data/lib/puppet/ffi/windows/api_types.rb +311 -0
  28. data/lib/puppet/ffi/windows/constants.rb +404 -0
  29. data/lib/puppet/ffi/windows/functions.rb +628 -0
  30. data/lib/puppet/ffi/windows/structs.rb +338 -0
  31. data/lib/puppet/file_serving/configuration.rb +0 -5
  32. data/lib/puppet/file_serving/configuration/parser.rb +3 -32
  33. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  34. data/lib/puppet/file_serving/mount.rb +1 -2
  35. data/lib/puppet/forge/repository.rb +0 -1
  36. data/lib/puppet/functions/epp.rb +1 -0
  37. data/lib/puppet/functions/inline_epp.rb +1 -0
  38. data/lib/puppet/generate/models/type/type.rb +4 -1
  39. data/lib/puppet/http.rb +22 -13
  40. data/lib/puppet/http/client.rb +164 -114
  41. data/lib/puppet/{network/resolver.rb → http/dns.rb} +2 -2
  42. data/lib/puppet/http/errors.rb +16 -0
  43. data/lib/puppet/http/external_client.rb +5 -7
  44. data/lib/puppet/{network/http → http}/factory.rb +8 -11
  45. data/lib/puppet/{network/http → http}/pool.rb +61 -26
  46. data/lib/puppet/{network/http/session.rb → http/pool_entry.rb} +2 -3
  47. data/lib/puppet/http/proxy.rb +137 -0
  48. data/lib/puppet/http/redirector.rb +4 -12
  49. data/lib/puppet/http/resolver.rb +5 -15
  50. data/lib/puppet/http/resolver/server_list.rb +6 -10
  51. data/lib/puppet/http/resolver/settings.rb +4 -7
  52. data/lib/puppet/http/resolver/srv.rb +7 -11
  53. data/lib/puppet/http/response.rb +36 -54
  54. data/lib/puppet/http/response_converter.rb +24 -0
  55. data/lib/puppet/http/response_net_http.rb +42 -0
  56. data/lib/puppet/http/retry_after_handler.rb +4 -13
  57. data/lib/puppet/http/service.rb +12 -26
  58. data/lib/puppet/http/service/ca.rb +11 -22
  59. data/lib/puppet/http/service/compiler.rb +22 -69
  60. data/lib/puppet/http/service/file_server.rb +18 -27
  61. data/lib/puppet/http/service/puppetserver.rb +26 -12
  62. data/lib/puppet/http/service/report.rb +8 -10
  63. data/lib/puppet/http/session.rb +11 -20
  64. data/lib/puppet/{network/http → http}/site.rb +1 -2
  65. data/lib/puppet/indirector/catalog/rest.rb +2 -4
  66. data/lib/puppet/indirector/fact_search.rb +60 -0
  67. data/lib/puppet/indirector/facts/facter.rb +24 -3
  68. data/lib/puppet/indirector/facts/json.rb +27 -0
  69. data/lib/puppet/indirector/facts/rest.rb +3 -22
  70. data/lib/puppet/indirector/facts/yaml.rb +3 -58
  71. data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -9
  72. data/lib/puppet/indirector/file_content/rest.rb +2 -6
  73. data/lib/puppet/indirector/file_metadata/rest.rb +3 -9
  74. data/lib/puppet/indirector/file_server.rb +1 -8
  75. data/lib/puppet/indirector/generic_http.rb +0 -11
  76. data/lib/puppet/indirector/json.rb +5 -1
  77. data/lib/puppet/indirector/node/json.rb +8 -0
  78. data/lib/puppet/indirector/node/rest.rb +2 -4
  79. data/lib/puppet/indirector/report/json.rb +34 -0
  80. data/lib/puppet/indirector/report/rest.rb +3 -8
  81. data/lib/puppet/indirector/request.rb +0 -101
  82. data/lib/puppet/indirector/rest.rb +12 -263
  83. data/lib/puppet/module_tool/applications.rb +0 -1
  84. data/lib/puppet/network/authconfig.rb +2 -96
  85. data/lib/puppet/network/authorization.rb +13 -35
  86. data/lib/puppet/network/formats.rb +2 -1
  87. data/lib/puppet/network/http.rb +3 -3
  88. data/lib/puppet/network/http/api/indirected_routes.rb +2 -20
  89. data/lib/puppet/network/http/api/master/v3.rb +11 -13
  90. data/lib/puppet/network/http/connection.rb +247 -316
  91. data/lib/puppet/network/http/handler.rb +0 -1
  92. data/lib/puppet/network/http_pool.rb +16 -34
  93. data/lib/puppet/node.rb +1 -30
  94. data/lib/puppet/pal/json_catalog_encoder.rb +4 -0
  95. data/lib/puppet/pal/pal_impl.rb +73 -18
  96. data/lib/puppet/parser/ast/pops_bridge.rb +0 -38
  97. data/lib/puppet/parser/compiler.rb +0 -198
  98. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +14 -39
  99. data/lib/puppet/parser/resource.rb +0 -69
  100. data/lib/puppet/pops/evaluator/evaluator_impl.rb +22 -8
  101. data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +3 -3
  102. data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
  103. data/lib/puppet/pops/issues.rb +0 -5
  104. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +6 -8
  105. data/lib/puppet/pops/model/ast.pp +0 -42
  106. data/lib/puppet/pops/model/ast.rb +0 -290
  107. data/lib/puppet/pops/model/factory.rb +0 -45
  108. data/lib/puppet/pops/model/model_label_provider.rb +0 -5
  109. data/lib/puppet/pops/model/model_tree_dumper.rb +0 -22
  110. data/lib/puppet/pops/model/pn_transformer.rb +0 -16
  111. data/lib/puppet/pops/parser/egrammar.ra +0 -56
  112. data/lib/puppet/pops/parser/eparser.rb +1520 -1712
  113. data/lib/puppet/pops/parser/lexer2.rb +4 -4
  114. data/lib/puppet/pops/parser/parser_support.rb +0 -5
  115. data/lib/puppet/pops/resource/resource_type_impl.rb +2 -24
  116. data/lib/puppet/pops/types/type_calculator.rb +0 -7
  117. data/lib/puppet/pops/types/type_parser.rb +0 -4
  118. data/lib/puppet/pops/types/types.rb +0 -1
  119. data/lib/puppet/pops/validation/checker4_0.rb +9 -37
  120. data/lib/puppet/pops/validation/tasks_checker.rb +0 -12
  121. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -2
  122. data/lib/puppet/provider.rb +0 -13
  123. data/lib/puppet/provider/nameservice.rb +0 -18
  124. data/lib/puppet/provider/package/dpkg.rb +0 -10
  125. data/lib/puppet/provider/package/gem.rb +23 -3
  126. data/lib/puppet/provider/package/pip.rb +0 -1
  127. data/lib/puppet/provider/package/pkg.rb +0 -4
  128. data/lib/puppet/provider/package/portage.rb +1 -1
  129. data/lib/puppet/provider/package/puppet_gem.rb +1 -4
  130. data/lib/puppet/provider/service/smf.rb +191 -73
  131. data/lib/puppet/provider/user/directoryservice.rb +0 -10
  132. data/lib/puppet/reference/configuration.rb +2 -0
  133. data/lib/puppet/reference/indirection.rb +1 -1
  134. data/lib/puppet/resource.rb +1 -89
  135. data/lib/puppet/resource/catalog.rb +1 -14
  136. data/lib/puppet/resource/type.rb +3 -119
  137. data/lib/puppet/resource/type_collection.rb +3 -48
  138. data/lib/puppet/runtime.rb +1 -2
  139. data/lib/puppet/settings.rb +45 -33
  140. data/lib/puppet/settings/base_setting.rb +26 -2
  141. data/lib/puppet/settings/integer_setting.rb +17 -0
  142. data/lib/puppet/settings/port_setting.rb +15 -0
  143. data/lib/puppet/settings/priority_setting.rb +5 -4
  144. data/lib/puppet/ssl.rb +10 -6
  145. data/lib/puppet/ssl/base.rb +3 -5
  146. data/lib/puppet/ssl/certificate.rb +0 -6
  147. data/lib/puppet/ssl/certificate_request.rb +1 -12
  148. data/lib/puppet/ssl/certificate_signer.rb +6 -0
  149. data/lib/puppet/ssl/oids.rb +3 -1
  150. data/lib/puppet/ssl/ssl_provider.rb +17 -0
  151. data/lib/puppet/ssl/state_machine.rb +3 -1
  152. data/lib/puppet/ssl/verifier.rb +2 -0
  153. data/lib/puppet/test/test_helper.rb +1 -3
  154. data/lib/puppet/transaction.rb +1 -7
  155. data/lib/puppet/transaction/report.rb +2 -4
  156. data/lib/puppet/type.rb +0 -76
  157. data/lib/puppet/type/file.rb +5 -7
  158. data/lib/puppet/type/file/checksum.rb +1 -1
  159. data/lib/puppet/type/file/source.rb +1 -1
  160. data/lib/puppet/type/filebucket.rb +3 -3
  161. data/lib/puppet/type/package.rb +5 -13
  162. data/lib/puppet/util/execution.rb +0 -11
  163. data/lib/puppet/util/http_proxy.rb +2 -215
  164. data/lib/puppet/util/monkey_patches.rb +0 -46
  165. data/lib/puppet/util/rdoc.rb +0 -7
  166. data/lib/puppet/util/retry_action.rb +1 -1
  167. data/lib/puppet/util/rubygems.rb +5 -1
  168. data/lib/puppet/util/run_mode.rb +9 -1
  169. data/lib/puppet/util/windows.rb +3 -8
  170. data/lib/puppet/util/windows/daemon.rb +360 -0
  171. data/lib/puppet/util/windows/error.rb +1 -0
  172. data/lib/puppet/util/windows/eventlog.rb +4 -9
  173. data/lib/puppet/util/windows/file.rb +8 -242
  174. data/lib/puppet/util/windows/monkey_patches/process.rb +414 -0
  175. data/lib/puppet/util/windows/process.rb +4 -226
  176. data/lib/puppet/util/windows/service.rb +9 -460
  177. data/lib/puppet/util/windows/string.rb +12 -13
  178. data/lib/puppet/util/yaml.rb +0 -22
  179. data/lib/puppet/vendor/require_vendored.rb +0 -1
  180. data/lib/puppet/version.rb +1 -1
  181. data/lib/puppet/x509.rb +5 -1
  182. data/lib/puppet/x509/cert_provider.rb +29 -1
  183. data/locales/puppet.pot +531 -1232
  184. data/man/man5/puppet.conf.5 +37 -97
  185. data/man/man8/puppet-agent.8 +1 -1
  186. data/man/man8/puppet-apply.8 +1 -1
  187. data/man/man8/puppet-catalog.8 +1 -1
  188. data/man/man8/puppet-config.8 +1 -1
  189. data/man/man8/puppet-describe.8 +1 -1
  190. data/man/man8/puppet-device.8 +1 -1
  191. data/man/man8/puppet-doc.8 +1 -1
  192. data/man/man8/puppet-epp.8 +1 -1
  193. data/man/man8/puppet-facts.8 +55 -9
  194. data/man/man8/puppet-filebucket.8 +6 -6
  195. data/man/man8/puppet-generate.8 +1 -1
  196. data/man/man8/puppet-help.8 +1 -1
  197. data/man/man8/puppet-lookup.8 +1 -1
  198. data/man/man8/puppet-module.8 +1 -58
  199. data/man/man8/puppet-node.8 +4 -1
  200. data/man/man8/puppet-parser.8 +1 -1
  201. data/man/man8/puppet-plugin.8 +1 -1
  202. data/man/man8/puppet-report.8 +4 -1
  203. data/man/man8/puppet-resource.8 +1 -1
  204. data/man/man8/puppet-script.8 +1 -1
  205. data/man/man8/puppet-ssl.8 +1 -1
  206. data/man/man8/puppet.8 +2 -2
  207. data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
  208. data/spec/integration/application/agent_spec.rb +24 -11
  209. data/spec/integration/application/apply_spec.rb +1 -1
  210. data/spec/integration/application/filebucket_spec.rb +16 -16
  211. data/spec/integration/application/help_spec.rb +2 -0
  212. data/spec/integration/application/plugin_spec.rb +23 -1
  213. data/spec/integration/defaults_spec.rb +7 -3
  214. data/spec/integration/environments/setting_hooks_spec.rb +1 -1
  215. data/spec/integration/network/http_pool_spec.rb +3 -21
  216. data/spec/integration/parser/catalog_spec.rb +0 -38
  217. data/spec/integration/parser/node_spec.rb +0 -9
  218. data/spec/integration/parser/pcore_resource_spec.rb +0 -37
  219. data/spec/integration/type/file_spec.rb +5 -4
  220. data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
  221. data/spec/integration/util/windows/security_spec.rb +1 -1
  222. data/spec/lib/puppet_spec/puppetserver.rb +1 -1
  223. data/spec/lib/puppet_spec/settings.rb +7 -1
  224. data/spec/spec_helper.rb +2 -0
  225. data/spec/unit/agent_spec.rb +0 -2
  226. data/spec/unit/application/config_spec.rb +224 -4
  227. data/spec/unit/application/facts_spec.rb +35 -0
  228. data/spec/unit/application/filebucket_spec.rb +41 -39
  229. data/spec/unit/application/ssl_spec.rb +2 -2
  230. data/spec/unit/certificate_factory_spec.rb +1 -1
  231. data/spec/unit/configurer/downloader_spec.rb +6 -2
  232. data/spec/unit/configurer/plugin_handler_spec.rb +56 -18
  233. data/spec/unit/configurer_spec.rb +12 -9
  234. data/spec/unit/context/trusted_information_spec.rb +2 -6
  235. data/spec/unit/defaults_spec.rb +77 -28
  236. data/spec/unit/environments_spec.rb +0 -3
  237. data/spec/unit/face/config_spec.rb +27 -32
  238. data/spec/unit/face/facts_spec.rb +4 -0
  239. data/spec/unit/face/plugin_spec.rb +73 -33
  240. data/spec/unit/file_bucket/file_spec.rb +1 -1
  241. data/spec/unit/file_serving/configuration/parser_spec.rb +14 -18
  242. data/spec/unit/file_serving/configuration_spec.rb +6 -12
  243. data/spec/unit/functions/camelcase_spec.rb +1 -1
  244. data/spec/unit/functions/capitalize_spec.rb +1 -1
  245. data/spec/unit/functions/downcase_spec.rb +1 -1
  246. data/spec/unit/functions/inline_epp_spec.rb +26 -1
  247. data/spec/unit/functions/upcase_spec.rb +1 -1
  248. data/spec/unit/http/client_spec.rb +7 -8
  249. data/spec/unit/{network/resolver_spec.rb → http/dns_spec.rb} +3 -3
  250. data/spec/unit/http/external_client_spec.rb +4 -4
  251. data/spec/unit/{network/http → http}/factory_spec.rb +5 -11
  252. data/spec/unit/{network/http/session_spec.rb → http/pool_entry_spec.rb} +3 -3
  253. data/spec/unit/{network/http → http}/pool_spec.rb +12 -17
  254. data/spec/unit/{util/http_proxy_spec.rb → http/proxy_spec.rb} +2 -69
  255. data/spec/unit/http/resolver_spec.rb +13 -13
  256. data/spec/unit/http/service/compiler_spec.rb +49 -62
  257. data/spec/unit/http/service/file_server_spec.rb +3 -3
  258. data/spec/unit/http/service/puppetserver_spec.rb +34 -4
  259. data/spec/unit/http/service_spec.rb +1 -2
  260. data/spec/unit/http/session_spec.rb +16 -14
  261. data/spec/unit/{network/http → http}/site_spec.rb +3 -3
  262. data/spec/unit/indirector/facts/facter_spec.rb +97 -0
  263. data/spec/unit/indirector/facts/json_spec.rb +255 -0
  264. data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
  265. data/spec/unit/indirector/file_content/rest_spec.rb +0 -4
  266. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -4
  267. data/spec/unit/indirector/file_server_spec.rb +1 -15
  268. data/spec/unit/indirector/node/json_spec.rb +33 -0
  269. data/spec/{integration/indirector/report/yaml.rb → unit/indirector/report/json_spec.rb} +13 -24
  270. data/spec/unit/indirector/report/rest_spec.rb +2 -17
  271. data/spec/unit/indirector/report/yaml_spec.rb +72 -8
  272. data/spec/unit/indirector/request_spec.rb +0 -264
  273. data/spec/unit/indirector/rest_spec.rb +98 -752
  274. data/spec/unit/network/authconfig_spec.rb +2 -132
  275. data/spec/unit/network/authorization_spec.rb +2 -55
  276. data/spec/unit/network/formats_spec.rb +4 -4
  277. data/spec/unit/network/http/api/indirected_routes_spec.rb +1 -97
  278. data/spec/unit/network/http/api/master/v3_spec.rb +28 -7
  279. data/spec/unit/network/http/api_spec.rb +10 -0
  280. data/spec/unit/network/http/connection_spec.rb +19 -41
  281. data/spec/unit/network/http/handler_spec.rb +0 -6
  282. data/spec/unit/network/http_pool_spec.rb +0 -4
  283. data/spec/unit/node/environment_spec.rb +33 -21
  284. data/spec/unit/node_spec.rb +2 -54
  285. data/spec/unit/parser/functions/create_resources_spec.rb +2 -20
  286. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +4 -7
  287. data/spec/unit/pops/loaders/loaders_spec.rb +6 -21
  288. data/spec/unit/pops/parser/parse_application_spec.rb +4 -22
  289. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  290. data/spec/unit/pops/parser/parse_capabilities_spec.rb +8 -21
  291. data/spec/unit/pops/parser/parse_site_spec.rb +20 -24
  292. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -71
  293. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  294. data/spec/unit/pops/types/type_calculator_spec.rb +6 -6
  295. data/spec/unit/pops/types/type_factory_spec.rb +1 -1
  296. data/spec/unit/pops/validator/validator_spec.rb +61 -46
  297. data/spec/unit/pops/visitor_spec.rb +1 -1
  298. data/spec/unit/provider/nameservice_spec.rb +0 -57
  299. data/spec/unit/provider/package/dpkg_spec.rb +0 -48
  300. data/spec/unit/provider/package/gem_spec.rb +32 -0
  301. data/spec/unit/provider/package/puppet_gem_spec.rb +3 -2
  302. data/spec/unit/provider/service/smf_spec.rb +401 -165
  303. data/spec/unit/provider/service/windows_spec.rb +0 -1
  304. data/spec/unit/provider_spec.rb +0 -12
  305. data/spec/unit/puppet_pal_catalog_spec.rb +45 -0
  306. data/spec/unit/resource/type_collection_spec.rb +2 -22
  307. data/spec/unit/resource_spec.rb +0 -56
  308. data/spec/unit/settings/http_extra_headers_spec.rb +2 -4
  309. data/spec/unit/settings/integer_setting_spec.rb +42 -0
  310. data/spec/unit/settings/port_setting_spec.rb +31 -0
  311. data/spec/unit/settings/priority_setting_spec.rb +4 -4
  312. data/spec/unit/settings_spec.rb +423 -236
  313. data/spec/unit/ssl/base_spec.rb +36 -3
  314. data/spec/unit/ssl/certificate_request_spec.rb +15 -45
  315. data/spec/unit/ssl/certificate_spec.rb +2 -11
  316. data/spec/unit/ssl/ssl_provider_spec.rb +11 -8
  317. data/spec/unit/ssl/state_machine_spec.rb +0 -1
  318. data/spec/unit/ssl/verifier_spec.rb +0 -21
  319. data/spec/unit/transaction/report_spec.rb +0 -2
  320. data/spec/unit/transaction/resource_harness_spec.rb +2 -2
  321. data/spec/unit/transaction_spec.rb +45 -79
  322. data/spec/unit/type/file/checksum_spec.rb +6 -6
  323. data/spec/unit/type/file/content_spec.rb +1 -1
  324. data/spec/unit/type/file/ensure_spec.rb +1 -1
  325. data/spec/unit/type/file/mode_spec.rb +1 -1
  326. data/spec/unit/type/file/source_spec.rb +0 -1
  327. data/spec/unit/type/file_spec.rb +12 -6
  328. data/spec/unit/type/package_spec.rb +1 -1
  329. data/spec/unit/type_spec.rb +20 -0
  330. data/spec/unit/util/backups_spec.rb +0 -2
  331. data/spec/unit/util/execution_spec.rb +0 -29
  332. data/spec/unit/util/monkey_patches_spec.rb +0 -6
  333. data/spec/unit/util/rubygems_spec.rb +2 -2
  334. data/spec/unit/util/run_mode_spec.rb +21 -121
  335. data/spec/unit/util/windows/string_spec.rb +1 -3
  336. data/spec/unit/util/yaml_spec.rb +0 -54
  337. data/spec/unit/util_spec.rb +0 -18
  338. metadata +50 -232
  339. data/conf/auth.conf +0 -150
  340. data/lib/puppet/application/cert.rb +0 -76
  341. data/lib/puppet/application/key.rb +0 -4
  342. data/lib/puppet/application/man.rb +0 -4
  343. data/lib/puppet/application/status.rb +0 -4
  344. data/lib/puppet/face/key.rb +0 -16
  345. data/lib/puppet/face/man.rb +0 -145
  346. data/lib/puppet/face/module/build.rb +0 -14
  347. data/lib/puppet/face/module/generate.rb +0 -14
  348. data/lib/puppet/face/module/search.rb +0 -103
  349. data/lib/puppet/face/status.rb +0 -51
  350. data/lib/puppet/indirector/certificate/file.rb +0 -9
  351. data/lib/puppet/indirector/certificate/rest.rb +0 -18
  352. data/lib/puppet/indirector/certificate_request/file.rb +0 -9
  353. data/lib/puppet/indirector/certificate_request/memory.rb +0 -7
  354. data/lib/puppet/indirector/certificate_request/rest.rb +0 -11
  355. data/lib/puppet/indirector/file_content/http.rb +0 -22
  356. data/lib/puppet/indirector/key/file.rb +0 -46
  357. data/lib/puppet/indirector/key/memory.rb +0 -7
  358. data/lib/puppet/indirector/ssl_file.rb +0 -162
  359. data/lib/puppet/indirector/status.rb +0 -3
  360. data/lib/puppet/indirector/status/local.rb +0 -12
  361. data/lib/puppet/indirector/status/rest.rb +0 -27
  362. data/lib/puppet/module_tool/applications/searcher.rb +0 -29
  363. data/lib/puppet/network/auth_config_parser.rb +0 -90
  364. data/lib/puppet/network/authstore.rb +0 -283
  365. data/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
  366. data/lib/puppet/network/http/api/master/v3/environment.rb +0 -88
  367. data/lib/puppet/network/http/base_pool.rb +0 -36
  368. data/lib/puppet/network/http/compression.rb +0 -127
  369. data/lib/puppet/network/http/connection_adapter.rb +0 -184
  370. data/lib/puppet/network/http/nocache_pool.rb +0 -28
  371. data/lib/puppet/network/rest_controller.rb +0 -2
  372. data/lib/puppet/network/rights.rb +0 -210
  373. data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -66
  374. data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -22
  375. data/lib/puppet/parser/environment_compiler.rb +0 -202
  376. data/lib/puppet/pops/types/enumeration.rb +0 -16
  377. data/lib/puppet/resource/capability_finder.rb +0 -154
  378. data/lib/puppet/rest/errors.rb +0 -15
  379. data/lib/puppet/rest/response.rb +0 -35
  380. data/lib/puppet/rest/route.rb +0 -85
  381. data/lib/puppet/rest/routes.rb +0 -135
  382. data/lib/puppet/ssl/host.rb +0 -505
  383. data/lib/puppet/ssl/key.rb +0 -61
  384. data/lib/puppet/ssl/validator.rb +0 -61
  385. data/lib/puppet/ssl/validator/default_validator.rb +0 -209
  386. data/lib/puppet/ssl/validator/no_validator.rb +0 -22
  387. data/lib/puppet/ssl/verifier_adapter.rb +0 -58
  388. data/lib/puppet/status.rb +0 -40
  389. data/lib/puppet/util/connection.rb +0 -88
  390. data/lib/puppet/util/ssl.rb +0 -83
  391. data/lib/puppet/util/windows/api_types.rb +0 -309
  392. data/lib/puppet/util/windows/monkey_patches/dir.rb +0 -40
  393. data/lib/puppet/vendor/load_pathspec.rb +0 -1
  394. data/lib/puppet/vendor/pathspec/CHANGELOG.md +0 -2
  395. data/lib/puppet/vendor/pathspec/LICENSE +0 -201
  396. data/lib/puppet/vendor/pathspec/PUPPET_README.md +0 -6
  397. data/lib/puppet/vendor/pathspec/README.md +0 -53
  398. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
  399. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
  400. data/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
  401. data/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
  402. data/man/man8/puppet-key.8 +0 -126
  403. data/man/man8/puppet-man.8 +0 -76
  404. data/man/man8/puppet-status.8 +0 -108
  405. data/spec/integration/application/config_spec.rb +0 -74
  406. data/spec/integration/network/authconfig_spec.rb +0 -256
  407. data/spec/integration/util/windows/monkey_patches/dir_spec.rb +0 -11
  408. data/spec/unit/application/man_spec.rb +0 -52
  409. data/spec/unit/capability_spec.rb +0 -414
  410. data/spec/unit/face/catalog_spec.rb +0 -6
  411. data/spec/unit/face/key_spec.rb +0 -9
  412. data/spec/unit/face/module/search_spec.rb +0 -231
  413. data/spec/unit/face/module_spec.rb +0 -3
  414. data/spec/unit/face/status_spec.rb +0 -9
  415. data/spec/unit/indirector/certificate/file_spec.rb +0 -14
  416. data/spec/unit/indirector/certificate/rest_spec.rb +0 -61
  417. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -14
  418. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -25
  419. data/spec/unit/indirector/key/file_spec.rb +0 -79
  420. data/spec/unit/indirector/ssl_file_spec.rb +0 -305
  421. data/spec/unit/indirector/status/local_spec.rb +0 -10
  422. data/spec/unit/indirector/status/rest_spec.rb +0 -50
  423. data/spec/unit/module_tool/applications/searcher_spec.rb +0 -38
  424. data/spec/unit/network/auth_config_parser_spec.rb +0 -115
  425. data/spec/unit/network/authstore_spec.rb +0 -422
  426. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +0 -57
  427. data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -185
  428. data/spec/unit/network/http/compression_spec.rb +0 -240
  429. data/spec/unit/network/http/nocache_pool_spec.rb +0 -64
  430. data/spec/unit/network/http_spec.rb +0 -9
  431. data/spec/unit/network/rights_spec.rb +0 -439
  432. data/spec/unit/parser/environment_compiler_spec.rb +0 -730
  433. data/spec/unit/pops/types/enumeration_spec.rb +0 -51
  434. data/spec/unit/resource/capability_finder_spec.rb +0 -143
  435. data/spec/unit/rest/route_spec.rb +0 -132
  436. data/spec/unit/ssl/host_spec.rb +0 -650
  437. data/spec/unit/ssl/key_spec.rb +0 -173
  438. data/spec/unit/ssl/validator_spec.rb +0 -278
  439. data/spec/unit/status_spec.rb +0 -45
  440. data/spec/unit/util/ssl_spec.rb +0 -91
@@ -2,7 +2,6 @@ require 'spec_helper'
2
2
 
3
3
  require 'puppet_spec/handler'
4
4
  require 'puppet/indirector_testing'
5
- require 'puppet/network/authorization'
6
5
  require 'puppet/network/http'
7
6
 
8
7
  describe Puppet::Network::HTTP::Handler do
@@ -102,11 +101,6 @@ describe Puppet::Network::HTTP::Handler do
102
101
  { :status => 200 }
103
102
  end
104
103
 
105
- before do
106
- allow(handler).to receive(:check_authorization)
107
- allow(handler).to receive(:warn_if_near_expiration)
108
- end
109
-
110
104
  it "should setup a profiler when the puppet-profiling header exists" do
111
105
  request = a_request
112
106
  request[:headers][Puppet::Network::HTTP::HEADER_ENABLE_PROFILING.downcase] = "true"
@@ -69,10 +69,6 @@ describe Puppet::Network::HttpPool do
69
69
  expect(Puppet::Network::HttpPool.http_instance("me", 54321, true)).to be_use_ssl
70
70
  end
71
71
 
72
- it 'has an http_ssl_instance method' do
73
- expect(Puppet::Network::HttpPool.http_ssl_instance("me", 54321)).to be_use_ssl
74
- end
75
-
76
72
  context "when calling 'connection'" do
77
73
  it 'requires an ssl_context' do
78
74
  expect {
@@ -526,34 +526,46 @@ describe Puppet::Node::Environment do
526
526
  end
527
527
 
528
528
  describe "managing module translations" do
529
- it "creates a new text domain the first time we try to use the text domain" do
530
- expect(Puppet::GettextConfig).to receive(:reset_text_domain).with(env.name)
531
- expect(Puppet::ModuleTranslations).to receive(:load_from_modulepath)
532
- expect(Puppet::GettextConfig).to receive(:clear_text_domain)
529
+ context "when i18n is enabled" do
530
+ before(:each) do
531
+ Puppet[:disable_i18n] = false
532
+ end
533
533
 
534
- env.with_text_domain do; end
535
- end
534
+ it "yields block results" do
535
+ ran = false
536
+ expect(env.with_text_domain { ran = true; :result }).to eq(:result)
537
+ expect(ran).to eq(true)
538
+ end
536
539
 
537
- it "uses the existing text domain once it has been created" do
538
- env.with_text_domain do; end
540
+ it "creates a new text domain the first time we try to use the text domain" do
541
+ expect(Puppet::GettextConfig).to receive(:reset_text_domain).with(env.name)
542
+ expect(Puppet::ModuleTranslations).to receive(:load_from_modulepath)
543
+ expect(Puppet::GettextConfig).to receive(:clear_text_domain)
539
544
 
540
- expect(Puppet::GettextConfig).to receive(:use_text_domain).with(env.name)
541
- env.with_text_domain do; end
542
- end
545
+ env.with_text_domain do; end
546
+ end
543
547
 
544
- it "yields block results" do
545
- ran = false
546
- expect(env.with_text_domain { ran = true; :result }).to eq(:result)
547
- expect(ran).to eq(true)
548
+ it "uses the existing text domain once it has been created" do
549
+ env.with_text_domain do; end
550
+
551
+ expect(Puppet::GettextConfig).to receive(:use_text_domain).with(env.name)
552
+ env.with_text_domain do; end
553
+ end
548
554
  end
549
555
 
550
- it "yields block results when i18n is disabled" do
551
- Puppet[:disable_i18n] = true
556
+ context "when i18n is disabled" do
557
+ it "yields block results" do
558
+ ran = false
559
+ expect(env.with_text_domain { ran = true; :result }).to eq(:result)
560
+ expect(ran).to eq(true)
561
+ end
562
+
563
+ it "does not create a new text domain the first time we try to use the text domain" do
564
+ expect(Puppet::GettextConfig).not_to receive(:reset_text_domain)
565
+ expect(Puppet::ModuleTranslations).not_to receive(:load_from_modulepath)
552
566
 
553
- ran = false
554
- expect(env.with_text_domain { ran = true; :result }).to eq(:result)
555
- expect(ran).to eq(true)
567
+ env.with_text_domain do; end
568
+ end
556
569
  end
557
570
  end
558
-
559
571
  end
@@ -417,64 +417,12 @@ end
417
417
 
418
418
  describe Puppet::Node, "when generating the list of names to search through" do
419
419
  before do
420
- Puppet[:strict_hostname_checking] = false
421
420
  @node = Puppet::Node.new("foo.domain.com",
422
421
  :parameters => {"hostname" => "yay", "domain" => "domain.com"})
423
422
  end
424
423
 
425
- it "returns an array of names" do
424
+ it "returns an array of one name" do
426
425
  expect(@node.names).to be_instance_of(Array)
427
- end
428
-
429
- describe "and the node name is fully qualified" do
430
- it "contains an entry for each part of the node name" do
431
- expect(@node.names).to include("foo.domain.com")
432
- expect(@node.names).to include("foo.domain")
433
- expect(@node.names).to include("foo")
434
- end
435
- end
436
-
437
- it "includes the node's fqdn" do
438
- expect(@node.names).to include("yay.domain.com")
439
- end
440
-
441
- it "combines and include the node's hostname and domain if no fqdn is available" do
442
- expect(@node.names).to include("yay.domain.com")
443
- end
444
-
445
- it "contains an entry for each name available by stripping a segment of the fqdn" do
446
- @node.parameters["fqdn"] = "foo.deep.sub.domain.com"
447
- expect(@node.names).to include("foo.deep.sub.domain")
448
- expect(@node.names).to include("foo.deep.sub")
449
- end
450
-
451
- describe "and :node_name is set to 'cert'" do
452
- before do
453
- Puppet[:node_name] = "cert"
454
- end
455
-
456
- it "uses the passed-in key as the first value" do
457
- expect(@node.names[0]).to eq("foo.domain.com")
458
- end
459
-
460
- describe "and strict hostname checking is enabled" do
461
- before do
462
- Puppet[:strict_hostname_checking] = true
463
- end
464
-
465
- it "only uses the passed-in key" do
466
- expect(@node.names).to eq(["foo.domain.com"])
467
- end
468
- end
469
- end
470
-
471
- describe "and :node_name is set to 'facter'" do
472
- before do
473
- Puppet[:node_name] = "facter"
474
- end
475
-
476
- it "uses the node's 'hostname' fact as the first value" do
477
- expect(@node.names[0]).to eq("yay")
478
- end
426
+ expect(@node.names).to eq ["foo.domain.com"]
479
427
  end
480
428
  end
@@ -257,31 +257,13 @@ describe 'function for dynamically creating resources' do
257
257
  expect(catalog.resource(:class, "bar")).not_to be_nil
258
258
  end
259
259
 
260
- [:off, :warning].each do | strictness |
261
- it "should warn if strict = #{strictness} and class is exported" do
262
- Puppet[:strict] = strictness
263
- collect_notices('class test{} create_resources("@@class", {test => {}})')
264
- expect(warnings).to include(/Classes are not virtualizable/)
265
- end
266
- end
267
-
268
- it 'should error if strict = error and class is exported' do
269
- Puppet[:strict] = :error
260
+ it 'should error if class is exported' do
270
261
  expect{
271
262
  compile_to_catalog('class test{} create_resources("@@class", {test => {}})')
272
263
  }.to raise_error(/Classes are not virtualizable/)
273
264
  end
274
265
 
275
- [:off, :warning].each do | strictness |
276
- it "should warn if strict = #{strictness} and class is virtual" do
277
- Puppet[:strict] = strictness
278
- collect_notices('class test{} create_resources("@class", {test => {}})')
279
- expect(warnings).to include(/Classes are not virtualizable/)
280
- end
281
- end
282
-
283
- it 'should error if strict = error and class is virtual' do
284
- Puppet[:strict] = :error
266
+ it 'should error if class is virtual' do
285
267
  expect{
286
268
  compile_to_catalog('class test{} create_resources("@class", {test => {}})')
287
269
  }.to raise_error(/Classes are not virtualizable/)
@@ -818,14 +818,11 @@ describe 'Puppet::Pops::Evaluator::EvaluatorImpl' do
818
818
  end
819
819
  end
820
820
 
821
- # Integer for >= 2.4.0, otherwise Fixnum
822
- int_class_name = 0.class.name
823
-
824
821
  # Errors when wrong number/type of keys are used
825
822
  {
826
- "Array[0]" => "Array-Type[] arguments must be types. Got #{int_class_name}",
827
- "Hash[0]" => "Hash-Type[] arguments must be types. Got #{int_class_name}",
828
- "Hash[Integer, 0]" => "Hash-Type[] arguments must be types. Got #{int_class_name}",
823
+ "Array[0]" => "Array-Type[] arguments must be types. Got Integer",
824
+ "Hash[0]" => "Hash-Type[] arguments must be types. Got Integer",
825
+ "Hash[Integer, 0]" => "Hash-Type[] arguments must be types. Got Integer",
829
826
  "Array[Integer,1,2,3]" => 'Array-Type[] accepts 1 to 3 arguments. Got 4',
830
827
  "Array[Integer,String]" => "A Type's size constraint arguments must be a single Integer type, or 1-2 integers (or default). Got a String-Type",
831
828
  "Hash[Integer,String, 1,2,3]" => 'Hash-Type[] accepts 2 to 4 arguments. Got 5',
@@ -833,7 +830,7 @@ describe 'Puppet::Pops::Evaluator::EvaluatorImpl' do
833
830
  "'abc'[1.0]" => "A substring operation does not accept a Float as a character index. Expected an Integer",
834
831
  "'abc'[1, x]" => "A substring operation does not accept a String as a character index. Expected an Integer",
835
832
  "'abc'[1,2,3]" => "String supports [] with one or two arguments. Got 3",
836
- "NotUndef[0]" => "NotUndef-Type[] argument must be a Type or a String. Got #{int_class_name}",
833
+ "NotUndef[0]" => "NotUndef-Type[] argument must be a Type or a String. Got Integer",
837
834
  "NotUndef[a,b]" => 'NotUndef-Type[] accepts 0 to 1 arguments. Got 2',
838
835
  "Resource[0]" => 'First argument to Resource[] must be a resource type or a String. Got Integer',
839
836
  "Resource[a, 0]" => 'Error creating type specialization of a Resource-Type, Cannot use Integer where a resource title String is expected',
@@ -575,27 +575,6 @@ describe 'loaders' do
575
575
  end
576
576
  end
577
577
 
578
- context 'when a 3x load has illegal construct and --func3x_check is false' do
579
- let(:env) { environment_for(mix_4x_and_3x_functions) }
580
- let(:compiler) { Puppet::Parser::Compiler.new(Puppet::Node.new("test", :environment => env)) }
581
- let(:scope) { compiler.topscope }
582
- let(:loader) { compiler.loaders.private_loader_for_module('user') }
583
-
584
- before(:each) do
585
- Puppet.push_context(:current_environment => scope.environment, :global_scope => scope, :loaders => compiler.loaders)
586
- Puppet[:func3x_check] = false
587
- end
588
- after(:each) do
589
- Puppet.pop_context
590
- Puppet[:func3x_check] = true
591
- end
592
-
593
- it "an illegal function is loaded" do
594
- f = loader.load_typed(typed_name(:function, 'bad_func_load3')).value
595
- expect(f.call(scope)).to eql("some return value")
596
- end
597
- end
598
-
599
578
  context 'when causing a 3x load followed by a 4x load' do
600
579
  let(:env) { environment_for(mix_4x_and_3x_functions) }
601
580
  let(:compiler) { Puppet::Parser::Compiler.new(Puppet::Node.new("test", :environment => env)) }
@@ -623,6 +602,12 @@ end
623
602
  function = loader.load_typed(typed_name(:function, 'callee_ws')).value
624
603
  expect(function.call(scope, 'passed in scope')).to eql("usee::callee_ws() got 'value'")
625
604
  end
605
+
606
+ it "an illegal function is loaded" do
607
+ expect {
608
+ loader.load_typed(typed_name(:function, 'bad_func_load3')).value
609
+ }.to raise_error(SecurityError, /Illegal method definition of method 'bad_func_load3_illegal_method' on line 8 in legacy function/)
610
+ end
626
611
  end
627
612
 
628
613
  context 'loading' do
@@ -5,27 +5,9 @@ require_relative 'parser_rspec_helper'
5
5
  describe "egrammar parsing of 'application'" do
6
6
  include ParserRspecHelper
7
7
 
8
- it "an empty body" do
9
- expect(dump(parse("application foo { }"))).to eq("(application foo () ())")
10
- end
11
-
12
- it "an empty body" do
13
- prog = <<-EPROG
14
- application foo {
15
- db { one:
16
- password => 'secret'
17
- }
18
- }
19
- EPROG
20
- expect(dump(parse(prog))).to eq( [
21
- "(application foo () (block",
22
- " (resource db",
23
- " (one",
24
- " (password => 'secret')))", "))" ].join("\n"))
25
- end
26
-
27
- it "accepts parameters" do
28
- s = "application foo($p1 = 'yo', $p2) { }"
29
- expect(dump(parse(s))).to eq("(application foo ((= p1 'yo') p2) ())")
8
+ it "raises a syntax error" do
9
+ expect {
10
+ parse("application foo { }")
11
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'application' \(line: 1, column: 1\)/)
30
12
  end
31
13
  end
@@ -191,7 +191,6 @@ describe "egrammar parsing basic expressions" do
191
191
 
192
192
  {
193
193
  'keyword' => %w(type function),
194
- 'reserved word' => %w(application site produces consumes)
195
194
  }.each_pair do |word_type, words|
196
195
  words.each do |word|
197
196
  it "allows the #{word_type} '#{word}' in a list" do
@@ -6,31 +6,18 @@ describe "egrammar parsing of capability mappings" do
6
6
  include ParserRspecHelper
7
7
 
8
8
  context "when parsing 'produces'" do
9
- it "the ast contains produces and attributes" do
10
- prog = "Foo produces Sql { name => value }"
11
- ast = "(produces Foo Sql ((name => value)))"
12
- expect(dump(parse(prog))).to eq(ast)
13
- end
14
-
15
- it "optional end comma is allowed" do
16
- prog = "Foo produces Sql { name => value, }"
17
- ast = "(produces Foo Sql ((name => value)))"
18
- expect(dump(parse(prog))).to eq(ast)
9
+ it "raises syntax error" do
10
+ expect {
11
+ parse("Foo produces Sql { name => value }")
12
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'produces' \(line: 1, column: 5\)/)
19
13
  end
20
14
  end
21
15
 
22
16
  context "when parsing 'consumes'" do
23
- it "the ast contains consumes and attributes" do
24
- prog = "Foo consumes Sql { name => value }"
25
- ast = "(consumes Foo Sql ((name => value)))"
26
- expect(dump(parse(prog))).to eq(ast)
17
+ it "raises syntax error" do
18
+ expect {
19
+ parse("Foo consumes Sql { name => value }")
20
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'consumes' \(line: 1, column: 5\)/)
27
21
  end
28
-
29
- it "optional end comma is allowed" do
30
- prog = "Foo consumes Sql { name => value, }"
31
- ast = "(consumes Foo Sql ((name => value)))"
32
- expect(dump(parse(prog))).to eq(ast)
33
- end
34
-
35
22
  end
36
23
  end
@@ -6,41 +6,37 @@ describe "egrammar parsing of site expression" do
6
6
  include ParserRspecHelper
7
7
 
8
8
  context "when parsing 'site'" do
9
- it "an empty body is allowed" do
10
- prog = "site { }"
11
- ast = "(site ())"
12
- expect(dump(parse(prog))).to eq(ast)
13
- end
14
-
15
- it "a body with one expression is allowed" do
16
- prog = "site { $x = 1 }"
17
- ast = "(site (block\n (= $x 1)\n))"
18
- expect(dump(parse(prog))).to eq(ast)
19
- end
20
-
21
- it "a body with more than one expression is allowed" do
22
- prog = "site { $x = 1 $y = 2}"
23
- ast = "(site (block\n (= $x 1)\n (= $y 2)\n))"
24
- expect(dump(parse(prog))).to eq(ast)
9
+ it "raises a syntax error" do
10
+ expect {
11
+ parse("site { }")
12
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'site' \(line: 1, column: 1\)/)
25
13
  end
26
14
  end
27
15
 
28
16
  context 'When parsing collections containing application management specific keywords' do
29
17
  %w(application site produces consumes).each do |keyword|
30
- it "allows the keyword '#{keyword}' in a list" do
31
- expect(dump(parse("$a = [#{keyword}]"))).to(eq("(= $a ([] '#{keyword}'))"))
18
+ it "disallows the keyword '#{keyword}' in a list" do
19
+ expect {
20
+ parse("$a = [#{keyword}]")
21
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 7\)/)
32
22
  end
33
23
 
34
- it "allows the keyword '#{keyword}' as a key in a hash" do
35
- expect(dump(parse("$a = {#{keyword}=>'x'}"))).to(eq("(= $a ({} ('#{keyword}' 'x')))"))
24
+ it "disallows the keyword '#{keyword}' as a key in a hash" do
25
+ expect {
26
+ parse("$a = {#{keyword}=>'x'}")
27
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 7\)/)
36
28
  end
37
29
 
38
- it "allows the keyword '#{keyword}' as a value in a hash" do
39
- expect(dump(parse("$a = {'x'=>#{keyword}}"))).to(eq("(= $a ({} ('x' '#{keyword}')))"))
30
+ it "disallows the keyword '#{keyword}' as a value in a hash" do
31
+ expect {
32
+ parse("$a = {'x'=>#{keyword}}")
33
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 12\)/)
40
34
  end
41
35
 
42
- it "allows the keyword '#{keyword}' as an attribute name" do
43
- expect(dump(parse("foo { 'x': #{keyword} => 'value' } "))).to eql("(resource foo\n ('x'\n (#{keyword} => 'value')))")
36
+ it "disallows the keyword '#{keyword}' as an attribute name" do
37
+ expect {
38
+ parse("foo { 'x': #{keyword} => 'value' } ")
39
+ }.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 12\)/)
44
40
  end
45
41
  end
46
42
  end
@@ -32,77 +32,6 @@ describe "Puppet::Pops::Resource" do
32
32
  expect(rt.valid_parameter?(:loglevel)).to be_truthy
33
33
  end
34
34
  end
35
-
36
-
37
- context 'when used with capability resource with producers/consumers' do
38
- include PuppetSpec::Files
39
-
40
- let!(:env_name) { 'spec' }
41
- let!(:env_dir) { tmpdir('environments') }
42
- let!(:populated_env_dir) do
43
- dir_contained_in(env_dir, env_name => {
44
- '.resource_types' => {
45
- 'capability.pp' => <<-PUPPET
46
- Puppet::Resource::ResourceType3.new(
47
- 'capability',
48
- [],
49
- [Puppet::Resource::Param(Any, 'name', true)],
50
- { /(.*)/ => ['name'] },
51
- true,
52
- true)
53
- PUPPET
54
- },
55
- 'modules' => {
56
- 'test' => {
57
- 'lib' => {
58
- 'puppet' => {
59
- 'type' => { 'capability.rb' => <<-RUBY
60
- Puppet::Type.newtype(:capability, :is_capability => true) do
61
- newparam :name, :namevar => true
62
- raise Puppet::Error, 'Ruby resource was loaded'
63
- end
64
- RUBY
65
- }
66
- }
67
- }
68
- }
69
- }
70
- })
71
- end
72
-
73
- let!(:code) { <<-PUPPET }
74
- define producer() {
75
- notify { "producer":}
76
- }
77
-
78
- define consumer() {
79
- notify { $title:}
80
- }
81
-
82
- Producer produces Capability {}
83
-
84
- Consumer consumes Capability {}
85
-
86
- producer {x: export => Capability[cap]}
87
- consumer {x: consume => Capability[cap]}
88
- consumer {y: require => Capability[cap]}
89
- PUPPET
90
-
91
- let(:environments) { Puppet::Environments::Directories.new(populated_env_dir, []) }
92
- let(:env) { Puppet::Node::Environment.create(:'spec', [File.join(env_dir, 'spec', 'modules')]) }
93
- let(:node) { Puppet::Node.new('test', :environment => env) }
94
- around(:each) do |example|
95
- Puppet[:environment] = env_name
96
- Puppet.override(:environments => environments, :current_environment => env) do
97
- example.run
98
- end
99
- Puppet::Type.rmtype(:capability)
100
- end
101
-
102
- it 'does not load the Ruby resource' do
103
- expect { compile_to_catalog(code, node) }.not_to raise_error
104
- end
105
- end
106
35
  end
107
36
  end
108
37
  end