chef 12.4.0.rc.0-universal-mingw32 → 12.4.0.rc.2-universal-mingw32

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 (298) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +12 -1
  3. data/lib/chef/api_client.rb +130 -26
  4. data/lib/chef/application.rb +0 -1
  5. data/lib/chef/application/client.rb +8 -19
  6. data/lib/chef/audit/audit_reporter.rb +12 -7
  7. data/lib/chef/audit/logger.rb +36 -0
  8. data/lib/chef/audit/runner.rb +4 -2
  9. data/lib/chef/chef_class.rb +62 -11
  10. data/lib/chef/client.rb +587 -207
  11. data/lib/chef/config.rb +0 -1
  12. data/lib/chef/dsl/recipe.rb +45 -56
  13. data/lib/chef/dsl/resources.rb +3 -2
  14. data/lib/chef/event_dispatch/base.rb +7 -2
  15. data/lib/chef/exceptions.rb +4 -1
  16. data/lib/chef/file_content_management/deploy/mv_windows.rb +16 -6
  17. data/lib/chef/formatters/doc.rb +15 -7
  18. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +10 -7
  19. data/lib/chef/guard_interpreter/default_guard_interpreter.rb +2 -0
  20. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +4 -1
  21. data/lib/chef/http/authenticator.rb +7 -2
  22. data/lib/chef/knife.rb +16 -4
  23. data/lib/chef/knife/client_create.rb +55 -31
  24. data/lib/chef/knife/core/generic_presenter.rb +1 -1
  25. data/lib/chef/knife/core/subcommand_loader.rb +1 -1
  26. data/lib/chef/knife/osc_user_create.rb +97 -0
  27. data/lib/chef/knife/osc_user_delete.rb +51 -0
  28. data/lib/chef/knife/osc_user_edit.rb +58 -0
  29. data/lib/chef/knife/osc_user_list.rb +47 -0
  30. data/lib/chef/knife/osc_user_reregister.rb +64 -0
  31. data/lib/chef/knife/osc_user_show.rb +54 -0
  32. data/lib/chef/knife/user_create.rb +95 -36
  33. data/lib/chef/knife/user_delete.rb +52 -2
  34. data/lib/chef/knife/user_edit.rb +37 -7
  35. data/lib/chef/knife/user_list.rb +3 -0
  36. data/lib/chef/knife/user_reregister.rb +39 -8
  37. data/lib/chef/knife/user_show.rb +30 -1
  38. data/lib/chef/mixin/api_version_request_handling.rb +66 -0
  39. data/lib/chef/mixin/convert_to_class_name.rb +10 -4
  40. data/lib/chef/mixin/deprecation.rb +24 -0
  41. data/lib/chef/mixin/powershell_out.rb +98 -0
  42. data/lib/chef/mixin/provides.rb +5 -18
  43. data/lib/chef/mixin/uris.rb +11 -0
  44. data/lib/chef/mixin/windows_architecture_helper.rb +5 -2
  45. data/lib/chef/mixin/windows_env_helper.rb +11 -2
  46. data/lib/chef/node_map.rb +130 -75
  47. data/lib/chef/osc_user.rb +194 -0
  48. data/lib/chef/platform/provider_mapping.rb +2 -269
  49. data/lib/chef/platform/provider_priority_map.rb +6 -69
  50. data/lib/chef/platform/query_helpers.rb +5 -0
  51. data/lib/chef/platform/resource_priority_map.rb +12 -15
  52. data/lib/chef/policy_builder/policyfile.rb +1 -0
  53. data/lib/chef/provider.rb +19 -0
  54. data/lib/chef/provider/directory.rb +3 -0
  55. data/lib/chef/provider/dsc_resource.rb +8 -1
  56. data/lib/chef/provider/file.rb +1 -0
  57. data/lib/chef/provider/group/aix.rb +1 -0
  58. data/lib/chef/provider/group/dscl.rb +1 -1
  59. data/lib/chef/provider/group/gpasswd.rb +1 -0
  60. data/lib/chef/provider/group/groupmod.rb +1 -1
  61. data/lib/chef/provider/group/pw.rb +1 -0
  62. data/lib/chef/provider/group/suse.rb +2 -0
  63. data/lib/chef/provider/group/usermod.rb +2 -1
  64. data/lib/chef/provider/group/windows.rb +1 -1
  65. data/lib/chef/provider/ifconfig.rb +2 -0
  66. data/lib/chef/provider/ifconfig/aix.rb +1 -0
  67. data/lib/chef/provider/ifconfig/debian.rb +2 -0
  68. data/lib/chef/provider/ifconfig/redhat.rb +1 -0
  69. data/lib/chef/provider/lwrp_base.rb +4 -0
  70. data/lib/chef/provider/mount.rb +0 -1
  71. data/lib/chef/provider/mount/aix.rb +1 -0
  72. data/lib/chef/provider/mount/mount.rb +2 -0
  73. data/lib/chef/provider/mount/solaris.rb +2 -0
  74. data/lib/chef/provider/package.rb +55 -0
  75. data/lib/chef/provider/package/aix.rb +7 -7
  76. data/lib/chef/provider/package/apt.rb +3 -3
  77. data/lib/chef/provider/package/dpkg.rb +4 -4
  78. data/lib/chef/provider/package/easy_install.rb +5 -5
  79. data/lib/chef/provider/package/freebsd/base.rb +2 -2
  80. data/lib/chef/provider/package/freebsd/pkg.rb +6 -6
  81. data/lib/chef/provider/package/freebsd/pkgng.rb +5 -5
  82. data/lib/chef/provider/package/freebsd/port.rb +4 -4
  83. data/lib/chef/provider/package/homebrew.rb +2 -2
  84. data/lib/chef/provider/package/ips.rb +4 -4
  85. data/lib/chef/provider/package/macports.rb +5 -6
  86. data/lib/chef/provider/package/openbsd.rb +4 -5
  87. data/lib/chef/provider/package/pacman.rb +4 -4
  88. data/lib/chef/provider/package/portage.rb +2 -0
  89. data/lib/chef/provider/package/rpm.rb +7 -8
  90. data/lib/chef/provider/package/rubygems.rb +5 -12
  91. data/lib/chef/provider/package/smartos.rb +4 -4
  92. data/lib/chef/provider/package/solaris.rb +7 -7
  93. data/lib/chef/provider/package/windows/msi.rb +1 -1
  94. data/lib/chef/provider/package/yum.rb +4 -6
  95. data/lib/chef/provider/package/zypper.rb +16 -14
  96. data/lib/chef/provider/powershell_script.rb +129 -47
  97. data/lib/chef/provider/remote_file/content.rb +4 -1
  98. data/lib/chef/provider/remote_file/local_file.rb +10 -4
  99. data/lib/chef/provider/service.rb +44 -0
  100. data/lib/chef/provider/service/freebsd.rb +1 -1
  101. data/lib/chef/provider/service/init.rb +1 -0
  102. data/lib/chef/provider/service/macosx.rb +1 -1
  103. data/lib/chef/provider/service/windows.rb +0 -1
  104. data/lib/chef/provider/user.rb +1 -1
  105. data/lib/chef/provider/user/aix.rb +3 -2
  106. data/lib/chef/provider/user/pw.rb +1 -0
  107. data/lib/chef/provider/user/solaris.rb +2 -0
  108. data/lib/chef/provider/user/useradd.rb +1 -0
  109. data/lib/chef/provider_resolver.rb +87 -134
  110. data/lib/chef/resource.rb +274 -68
  111. data/lib/chef/resource/apt_package.rb +0 -2
  112. data/lib/chef/resource/bash.rb +0 -2
  113. data/lib/chef/resource/batch.rb +1 -1
  114. data/lib/chef/resource/bff_package.rb +0 -7
  115. data/lib/chef/resource/breakpoint.rb +3 -6
  116. data/lib/chef/resource/chef_gem.rb +0 -3
  117. data/lib/chef/resource/cookbook_file.rb +1 -3
  118. data/lib/chef/resource/cron.rb +2 -4
  119. data/lib/chef/resource/csh.rb +0 -2
  120. data/lib/chef/resource/deploy.rb +9 -6
  121. data/lib/chef/resource/deploy_revision.rb +0 -14
  122. data/lib/chef/resource/directory.rb +2 -4
  123. data/lib/chef/resource/dpkg_package.rb +0 -5
  124. data/lib/chef/resource/dsc_resource.rb +2 -3
  125. data/lib/chef/resource/dsc_script.rb +2 -3
  126. data/lib/chef/resource/easy_install_package.rb +0 -7
  127. data/lib/chef/resource/env.rb +3 -3
  128. data/lib/chef/resource/erl_call.rb +2 -5
  129. data/lib/chef/resource/execute.rb +2 -4
  130. data/lib/chef/resource/file.rb +2 -4
  131. data/lib/chef/resource/freebsd_package.rb +0 -5
  132. data/lib/chef/resource/gem_package.rb +0 -3
  133. data/lib/chef/resource/git.rb +0 -3
  134. data/lib/chef/resource/group.rb +2 -4
  135. data/lib/chef/resource/homebrew_package.rb +0 -2
  136. data/lib/chef/resource/http_request.rb +3 -4
  137. data/lib/chef/resource/ifconfig.rb +3 -4
  138. data/lib/chef/resource/ips_package.rb +2 -2
  139. data/lib/chef/resource/link.rb +3 -5
  140. data/lib/chef/resource/log.rb +2 -4
  141. data/lib/chef/resource/lwrp_base.rb +10 -61
  142. data/lib/chef/resource/macosx_service.rb +1 -2
  143. data/lib/chef/resource/macports_package.rb +0 -7
  144. data/lib/chef/resource/mdadm.rb +2 -5
  145. data/lib/chef/resource/mount.rb +2 -4
  146. data/lib/chef/resource/ohai.rb +2 -4
  147. data/lib/chef/resource/openbsd_package.rb +0 -6
  148. data/lib/chef/resource/package.rb +9 -6
  149. data/lib/chef/resource/pacman_package.rb +0 -7
  150. data/lib/chef/resource/paludis_package.rb +2 -3
  151. data/lib/chef/resource/perl.rb +0 -3
  152. data/lib/chef/resource/portage_package.rb +0 -3
  153. data/lib/chef/resource/powershell_script.rb +1 -2
  154. data/lib/chef/resource/python.rb +0 -3
  155. data/lib/chef/resource/reboot.rb +1 -3
  156. data/lib/chef/resource/registry_key.rb +3 -5
  157. data/lib/chef/resource/remote_directory.rb +3 -5
  158. data/lib/chef/resource/remote_file.rb +4 -5
  159. data/lib/chef/resource/route.rb +3 -5
  160. data/lib/chef/resource/rpm_package.rb +0 -2
  161. data/lib/chef/resource/ruby.rb +0 -4
  162. data/lib/chef/resource/ruby_block.rb +2 -4
  163. data/lib/chef/resource/scm.rb +3 -5
  164. data/lib/chef/resource/script.rb +0 -3
  165. data/lib/chef/resource/service.rb +3 -5
  166. data/lib/chef/resource/smartos_package.rb +0 -9
  167. data/lib/chef/resource/solaris_package.rb +0 -10
  168. data/lib/chef/resource/subversion.rb +1 -3
  169. data/lib/chef/resource/template.rb +0 -4
  170. data/lib/chef/resource/timestamped_deploy.rb +0 -4
  171. data/lib/chef/resource/user.rb +2 -5
  172. data/lib/chef/resource/whyrun_safe_ruby_block.rb +0 -7
  173. data/lib/chef/resource/windows_package.rb +3 -3
  174. data/lib/chef/resource/windows_script.rb +2 -2
  175. data/lib/chef/resource/windows_service.rb +3 -3
  176. data/lib/chef/resource/yum_package.rb +0 -3
  177. data/lib/chef/resource/zypper_package.rb +27 -0
  178. data/lib/chef/resource_builder.rb +7 -0
  179. data/lib/chef/resource_reporter.rb +1 -1
  180. data/lib/chef/resource_resolver.rb +108 -62
  181. data/lib/chef/resources.rb +1 -0
  182. data/lib/chef/rest.rb +1 -0
  183. data/lib/chef/server_api.rb +2 -0
  184. data/lib/chef/user.rb +193 -42
  185. data/lib/chef/util/backup.rb +9 -1
  186. data/lib/chef/util/path_helper.rb +0 -1
  187. data/lib/chef/version.rb +1 -1
  188. data/spec/functional/audit/runner_spec.rb +22 -42
  189. data/spec/functional/mixin/powershell_out_spec.rb +43 -0
  190. data/spec/functional/resource/execute_spec.rb +9 -2
  191. data/spec/functional/resource/file_spec.rb +25 -0
  192. data/spec/functional/resource/group_spec.rb +5 -0
  193. data/spec/functional/resource/link_spec.rb +5 -11
  194. data/spec/functional/resource/powershell_spec.rb +40 -5
  195. data/spec/functional/resource/user/useradd_spec.rb +10 -18
  196. data/spec/integration/recipes/lwrp_spec.rb +57 -0
  197. data/spec/integration/recipes/provider_choice.rb +2 -7
  198. data/spec/integration/recipes/recipe_dsl_spec.rb +517 -19
  199. data/spec/spec_helper.rb +1 -1
  200. data/spec/support/lib/chef/provider/openldap_includer.rb +29 -0
  201. data/spec/support/lib/chef/resource/cat.rb +0 -2
  202. data/spec/support/lib/chef/resource/one_two_three_four.rb +0 -6
  203. data/spec/support/lib/chef/resource/openldap_includer.rb +27 -0
  204. data/spec/support/lib/chef/resource/with_state.rb +0 -9
  205. data/spec/support/lib/chef/resource/zen_follower.rb +0 -6
  206. data/spec/support/lib/chef/resource/zen_master.rb +1 -6
  207. data/spec/support/shared/context/client.rb +277 -0
  208. data/spec/support/shared/examples/client.rb +53 -0
  209. data/spec/support/shared/functional/file_resource.rb +0 -4
  210. data/spec/support/shared/functional/securable_resource.rb +0 -24
  211. data/spec/support/shared/functional/securable_resource_with_reporting.rb +4 -4
  212. data/spec/support/shared/functional/windows_script.rb +1 -1
  213. data/spec/support/shared/unit/api_versioning.rb +77 -0
  214. data/spec/support/shared/unit/knife_shared.rb +40 -0
  215. data/spec/support/shared/unit/user_and_client_shared.rb +115 -0
  216. data/spec/unit/api_client_spec.rb +189 -14
  217. data/spec/unit/application/client_spec.rb +0 -5
  218. data/spec/unit/audit/audit_reporter_spec.rb +58 -14
  219. data/spec/unit/audit/logger_spec.rb +42 -0
  220. data/spec/unit/audit/runner_spec.rb +2 -2
  221. data/spec/unit/chef_fs/file_pattern_spec.rb +3 -15
  222. data/spec/unit/client_spec.rb +58 -374
  223. data/spec/unit/cookbook_spec.rb +0 -9
  224. data/spec/unit/cookbook_version_spec.rb +0 -20
  225. data/spec/unit/deprecation_spec.rb +55 -0
  226. data/spec/unit/dsl/resources_spec.rb +85 -0
  227. data/spec/unit/exceptions_spec.rb +2 -2
  228. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +60 -0
  229. data/spec/unit/formatters/doc_spec.rb +46 -0
  230. data/spec/unit/formatters/error_inspectors/api_error_formatting_spec.rb +12 -10
  231. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +8 -0
  232. data/spec/unit/http/authenticator_spec.rb +11 -2
  233. data/spec/unit/knife/client_create_spec.rb +122 -51
  234. data/spec/unit/knife/core/subcommand_loader_spec.rb +19 -3
  235. data/spec/unit/knife/core/ui_spec.rb +14 -0
  236. data/spec/unit/knife/osc_user_create_spec.rb +93 -0
  237. data/spec/unit/knife/osc_user_delete_spec.rb +44 -0
  238. data/spec/unit/knife/osc_user_edit_spec.rb +52 -0
  239. data/spec/unit/knife/osc_user_list_spec.rb +37 -0
  240. data/spec/unit/knife/osc_user_reregister_spec.rb +58 -0
  241. data/spec/unit/knife/osc_user_show_spec.rb +46 -0
  242. data/spec/unit/knife/user_create_spec.rb +177 -51
  243. data/spec/unit/knife/user_delete_spec.rb +34 -8
  244. data/spec/unit/knife/user_edit_spec.rb +31 -12
  245. data/spec/unit/knife/user_list_spec.rb +7 -3
  246. data/spec/unit/knife/user_reregister_spec.rb +38 -17
  247. data/spec/unit/knife/user_show_spec.rb +35 -11
  248. data/spec/unit/knife_spec.rb +10 -4
  249. data/spec/unit/lwrp_spec.rb +228 -54
  250. data/spec/unit/mixin/api_version_request_handling_spec.rb +127 -0
  251. data/spec/unit/mixin/command_spec.rb +1 -2
  252. data/spec/unit/mixin/powershell_out_spec.rb +70 -0
  253. data/spec/unit/mixin/uris_spec.rb +23 -11
  254. data/spec/unit/node_map_spec.rb +4 -1
  255. data/spec/unit/osc_user_spec.rb +276 -0
  256. data/spec/unit/platform_spec.rb +0 -60
  257. data/spec/unit/provider/deploy_spec.rb +1 -1
  258. data/spec/unit/provider/directory_spec.rb +199 -135
  259. data/spec/unit/provider/ifconfig/debian_spec.rb +0 -10
  260. data/spec/unit/provider/package/aix_spec.rb +16 -16
  261. data/spec/unit/provider/package/dpkg_spec.rb +2 -2
  262. data/spec/unit/provider/package/freebsd/pkg_spec.rb +13 -13
  263. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +9 -9
  264. data/spec/unit/provider/package/freebsd/port_spec.rb +7 -7
  265. data/spec/unit/provider/package/ips_spec.rb +22 -22
  266. data/spec/unit/provider/package/macports_spec.rb +10 -10
  267. data/spec/unit/provider/package/openbsd_spec.rb +4 -26
  268. data/spec/unit/provider/package/pacman_spec.rb +5 -5
  269. data/spec/unit/provider/package/rpm_spec.rb +14 -14
  270. data/spec/unit/provider/package/rubygems_spec.rb +10 -44
  271. data/spec/unit/provider/package/smartos_spec.rb +4 -4
  272. data/spec/unit/provider/package/solaris_spec.rb +11 -11
  273. data/spec/unit/provider/package/zypper_spec.rb +125 -90
  274. data/spec/unit/provider/package_spec.rb +34 -0
  275. data/spec/unit/provider/powershell_spec.rb +53 -11
  276. data/spec/unit/provider/remote_directory_spec.rb +2 -2
  277. data/spec/unit/provider/remote_file/local_file_spec.rb +25 -6
  278. data/spec/unit/provider/service/freebsd_service_spec.rb +0 -12
  279. data/spec/unit/provider/user_spec.rb +3 -3
  280. data/spec/unit/provider_resolver_spec.rb +463 -327
  281. data/spec/unit/recipe_spec.rb +42 -15
  282. data/spec/unit/resource/breakpoint_spec.rb +1 -1
  283. data/spec/unit/resource/erl_call_spec.rb +1 -1
  284. data/spec/unit/resource/file_spec.rb +1 -1
  285. data/spec/unit/resource/ifconfig_spec.rb +10 -6
  286. data/spec/unit/resource/remote_file_spec.rb +5 -0
  287. data/spec/unit/resource/route_spec.rb +1 -1
  288. data/spec/unit/resource/ruby_block_spec.rb +2 -2
  289. data/spec/unit/resource/template_spec.rb +1 -1
  290. data/spec/unit/resource/timestamped_deploy_spec.rb +1 -2
  291. data/spec/unit/resource/windows_service_spec.rb +1 -1
  292. data/spec/unit/resource_spec.rb +99 -13
  293. data/spec/unit/rest_spec.rb +5 -5
  294. data/spec/unit/run_context_spec.rb +41 -0
  295. data/spec/unit/runner_spec.rb +2 -2
  296. data/spec/unit/user_spec.rb +406 -93
  297. data/tasks/maintainers.rb +69 -0
  298. metadata +37 -4
@@ -23,12 +23,10 @@ class Chef
23
23
  class Resource
24
24
  class AptPackage < Chef::Resource::Package
25
25
 
26
- provides :apt_package
27
26
  provides :package, os: "linux", platform_family: [ "debian" ]
28
27
 
29
28
  def initialize(name, run_context=nil)
30
29
  super
31
- @resource_name = :apt_package
32
30
  @default_release = nil
33
31
  end
34
32
 
@@ -22,11 +22,9 @@ require 'chef/provider/script'
22
22
  class Chef
23
23
  class Resource
24
24
  class Bash < Chef::Resource::Script
25
- provides :bash
26
25
 
27
26
  def initialize(name, run_context=nil)
28
27
  super
29
- @resource_name = :bash
30
28
  @interpreter = "bash"
31
29
  end
32
30
 
@@ -25,7 +25,7 @@ class Chef
25
25
  provides :batch, os: "windows"
26
26
 
27
27
  def initialize(name, run_context=nil)
28
- super(name, run_context, :batch, "cmd.exe")
28
+ super(name, run_context, nil, "cmd.exe")
29
29
  end
30
30
 
31
31
  end
@@ -22,13 +22,6 @@ require 'chef/provider/package/aix'
22
22
  class Chef
23
23
  class Resource
24
24
  class BffPackage < Chef::Resource::Package
25
- provides :bff_package
26
-
27
- def initialize(name, run_context=nil)
28
- super
29
- @resource_name = :bff_package
30
- end
31
-
32
25
  end
33
26
  end
34
27
  end
@@ -22,15 +22,12 @@ require 'chef/resource'
22
22
  class Chef
23
23
  class Resource
24
24
  class Breakpoint < Chef::Resource
25
- provides :breakpoint
25
+ default_action :break
26
26
 
27
27
  def initialize(action="break", *args)
28
- @name = caller.first
29
- super(@name, *args)
30
- @action = "break"
31
- @allowed_actions << :break
32
- @resource_name = :breakpoint
28
+ super(caller.first, *args)
33
29
  end
30
+
34
31
  end
35
32
  end
36
33
  end
@@ -23,11 +23,8 @@ class Chef
23
23
  class Resource
24
24
  class ChefGem < Chef::Resource::Package::GemPackage
25
25
 
26
- provides :chef_gem
27
-
28
26
  def initialize(name, run_context=nil)
29
27
  super
30
- @resource_name = :chef_gem
31
28
  @compile_time = Chef::Config[:chef_gem_compile_time]
32
29
  @gem_binary = RbConfig::CONFIG['bindir'] + "/gem"
33
30
  end
@@ -27,13 +27,11 @@ class Chef
27
27
  class CookbookFile < Chef::Resource::File
28
28
  include Chef::Mixin::Securable
29
29
 
30
- provides :cookbook_file
30
+ default_action :create
31
31
 
32
32
  def initialize(name, run_context=nil)
33
33
  super
34
34
  @provider = Chef::Provider::CookbookFile
35
- @resource_name = :cookbook_file
36
- @action = "create"
37
35
  @source = ::File.basename(name)
38
36
  @cookbook = nil
39
37
  end
@@ -27,13 +27,11 @@ class Chef
27
27
 
28
28
  state_attrs :minute, :hour, :day, :month, :weekday, :user
29
29
 
30
- provides :cron
30
+ default_action :create
31
+ allowed_actions :create, :delete
31
32
 
32
33
  def initialize(name, run_context=nil)
33
34
  super
34
- @resource_name = :cron
35
- @action = :create
36
- @allowed_actions.push(:create, :delete)
37
35
  @minute = "*"
38
36
  @hour = "*"
39
37
  @day = "*"
@@ -22,11 +22,9 @@ require 'chef/provider/script'
22
22
  class Chef
23
23
  class Resource
24
24
  class Csh < Chef::Resource::Script
25
- provides :csh
26
25
 
27
26
  def initialize(name, run_context=nil)
28
27
  super
29
- @resource_name = :csh
30
28
  @interpreter = "csh"
31
29
  end
32
30
 
@@ -50,17 +50,16 @@ class Chef
50
50
  # release directory. Callback files can contain chef code (resources, etc.)
51
51
  #
52
52
  class Deploy < Chef::Resource
53
- provides :deploy
54
-
55
- provider_base Chef::Provider::Deploy
56
53
 
57
54
  identity_attr :repository
58
55
 
59
56
  state_attrs :deploy_to, :revision
60
57
 
58
+ default_action :deploy
59
+ allowed_actions :force_deploy, :deploy, :rollback
60
+
61
61
  def initialize(name, run_context=nil)
62
62
  super
63
- @resource_name = :deploy
64
63
  @deploy_to = name
65
64
  @environment = nil
66
65
  @repository_cache = 'cached-copy'
@@ -70,7 +69,6 @@ class Chef
70
69
  @symlink_before_migrate = {"config/database.yml" => "config/database.yml"}
71
70
  @symlinks = {"system" => "public/system", "pids" => "tmp/pids", "log" => "log"}
72
71
  @revision = 'HEAD'
73
- @action = :deploy
74
72
  @migrate = false
75
73
  @rollback_on_error = false
76
74
  @remote = "origin"
@@ -78,7 +76,6 @@ class Chef
78
76
  @shallow_clone = false
79
77
  @scm_provider = Chef::Provider::Git
80
78
  @svn_force_export = false
81
- @allowed_actions.push(:force_deploy, :deploy, :rollback)
82
79
  @additional_remotes = Hash[]
83
80
  @keep_releases = 5
84
81
  @enable_checkout = true
@@ -282,6 +279,12 @@ class Chef
282
279
  )
283
280
  end
284
281
 
282
+ # This is to support "provider :revision" without deprecation warnings.
283
+ # Do NOT copy this.
284
+ def self.provider_base
285
+ Chef::Provider::Deploy
286
+ end
287
+
285
288
  def svn_force_export(arg=nil)
286
289
  set_or_return(
287
290
  :svn_force_export,
@@ -22,23 +22,9 @@ class Chef
22
22
  # Convenience class for using the deploy resource with the revision
23
23
  # deployment strategy (provider)
24
24
  class DeployRevision < Chef::Resource::Deploy
25
-
26
- provides :deploy_revision
27
-
28
- def initialize(*args, &block)
29
- super
30
- @resource_name = :deploy_revision
31
- end
32
25
  end
33
26
 
34
27
  class DeployBranch < Chef::Resource::DeployRevision
35
-
36
- provides :deploy_branch
37
-
38
- def initialize(*args, &block)
39
- super
40
- @resource_name = :deploy_branch
41
- end
42
28
  end
43
29
 
44
30
  end
@@ -32,15 +32,13 @@ class Chef
32
32
 
33
33
  include Chef::Mixin::Securable
34
34
 
35
- provides :directory
35
+ default_action :create
36
+ allowed_actions :create, :delete
36
37
 
37
38
  def initialize(name, run_context=nil)
38
39
  super
39
- @resource_name = :directory
40
40
  @path = name
41
- @action = :create
42
41
  @recursive = false
43
- @allowed_actions.push(:create, :delete)
44
42
  end
45
43
 
46
44
  def recursive(arg=nil)
@@ -25,11 +25,6 @@ class Chef
25
25
 
26
26
  provides :dpkg_package, os: "linux"
27
27
 
28
- def initialize(name, run_context=nil)
29
- super
30
- @resource_name = :dpkg_package
31
- end
32
-
33
28
  end
34
29
  end
35
30
  end
@@ -25,13 +25,12 @@ class Chef
25
25
 
26
26
  include Chef::DSL::Powershell
27
27
 
28
+ default_action :run
29
+
28
30
  def initialize(name, run_context)
29
31
  super
30
32
  @properties = {}
31
- @resource_name = :dsc_resource
32
33
  @resource = nil
33
- @allowed_actions.push(:run)
34
- @action = :run
35
34
  end
36
35
 
37
36
  def resource(value=nil)
@@ -24,11 +24,10 @@ class Chef
24
24
 
25
25
  provides :dsc_script, platform: "windows"
26
26
 
27
+ default_action :run
28
+
27
29
  def initialize(name, run_context=nil)
28
30
  super
29
- @allowed_actions.push(:run)
30
- @action = :run
31
- @resource_name = :dsc_script
32
31
  @imports = {}
33
32
  end
34
33
 
@@ -22,13 +22,6 @@ class Chef
22
22
  class Resource
23
23
  class EasyInstallPackage < Chef::Resource::Package
24
24
 
25
- provides :easy_install_package
26
-
27
- def initialize(name, run_context=nil)
28
- super
29
- @resource_name = :easy_install_package
30
- end
31
-
32
25
  def easy_install_binary(arg=nil)
33
26
  set_or_return(
34
27
  :easy_install_binary,
@@ -27,14 +27,14 @@ class Chef
27
27
 
28
28
  provides :env, os: "windows"
29
29
 
30
+ default_action :create
31
+ allowed_actions :create, :delete, :modify
32
+
30
33
  def initialize(name, run_context=nil)
31
34
  super
32
- @resource_name = :env
33
35
  @key_name = name
34
36
  @value = nil
35
- @action = :create
36
37
  @delim = nil
37
- @allowed_actions.push(:create, :delete, :modify)
38
38
  end
39
39
 
40
40
  def key_name(arg=nil)
@@ -23,24 +23,21 @@ require 'chef/provider/erl_call'
23
23
  class Chef
24
24
  class Resource
25
25
  class ErlCall < Chef::Resource
26
- provides :erl_call
27
26
 
28
27
  # erl_call : http://erlang.org/doc/man/erl_call.html
29
28
 
30
29
  identity_attr :code
31
30
 
31
+ default_action :run
32
+
32
33
  def initialize(name, run_context=nil)
33
34
  super
34
- @resource_name = :erl_call
35
35
 
36
36
  @code = "q()." # your erlang code goes here
37
37
  @cookie = nil # cookie of the erlang node
38
38
  @distributed = false # if you want to have a distributed erlang node
39
39
  @name_type = "sname" # type of erlang hostname name or sname
40
40
  @node_name = "chef@localhost" # the erlang node hostname
41
-
42
- @action = "run"
43
- @allowed_actions.push(:run)
44
41
  end
45
42
 
46
43
  def code(arg=nil)
@@ -23,7 +23,6 @@ require 'chef/provider/execute'
23
23
  class Chef
24
24
  class Resource
25
25
  class Execute < Chef::Resource
26
- provides :execute
27
26
 
28
27
  identity_attr :command
29
28
 
@@ -33,12 +32,12 @@ class Chef
33
32
  # Only execute resources (and subclasses) can be guard interpreters.
34
33
  attr_accessor :is_guard_interpreter
35
34
 
35
+ default_action :run
36
+
36
37
  def initialize(name, run_context=nil)
37
38
  super
38
- @resource_name = :execute
39
39
  @command = name
40
40
  @backup = 5
41
- @action = "run"
42
41
  @creates = nil
43
42
  @cwd = nil
44
43
  @environment = nil
@@ -47,7 +46,6 @@ class Chef
47
46
  @returns = 0
48
47
  @timeout = nil
49
48
  @user = nil
50
- @allowed_actions.push(:run)
51
49
  @umask = nil
52
50
  @default_guard_interpreter = :execute
53
51
  @is_guard_interpreter = false
@@ -47,15 +47,13 @@ class Chef
47
47
  # @returns [String] Checksum of the file we actually rendered
48
48
  attr_accessor :final_checksum
49
49
 
50
- provides :file
50
+ default_action :create
51
+ allowed_actions :create, :delete, :touch, :create_if_missing
51
52
 
52
53
  def initialize(name, run_context=nil)
53
54
  super
54
- @resource_name = :file
55
55
  @path = name
56
56
  @backup = 5
57
- @action = "create"
58
- @allowed_actions.push(:create, :delete, :touch, :create_if_missing)
59
57
  @atomic_update = Chef::Config[:file_atomic_update]
60
58
  @force_unlink = false
61
59
  @manage_symlink_source = nil
@@ -31,11 +31,6 @@ class Chef
31
31
 
32
32
  provides :package, platform: "freebsd"
33
33
 
34
- def initialize(name, run_context=nil)
35
- super
36
- @resource_name = :freebsd_package
37
- end
38
-
39
34
  def after_created
40
35
  assign_provider
41
36
  end
@@ -22,11 +22,8 @@ class Chef
22
22
  class Resource
23
23
  class GemPackage < Chef::Resource::Package
24
24
 
25
- provides :gem_package
26
-
27
25
  def initialize(name, run_context=nil)
28
26
  super
29
- @resource_name = :gem_package
30
27
  @clear_sources = false
31
28
  end
32
29
 
@@ -22,11 +22,8 @@ class Chef
22
22
  class Resource
23
23
  class Git < Chef::Resource::Scm
24
24
 
25
- provides :git
26
-
27
25
  def initialize(name, run_context=nil)
28
26
  super
29
- @resource_name = :git
30
27
  @additional_remotes = Hash[]
31
28
  end
32
29
 
@@ -25,19 +25,17 @@ class Chef
25
25
 
26
26
  state_attrs :members
27
27
 
28
- provides :group
28
+ allowed_actions :create, :remove, :modify, :manage
29
+ default_action :create
29
30
 
30
31
  def initialize(name, run_context=nil)
31
32
  super
32
- @resource_name = :group
33
33
  @group_name = name
34
34
  @gid = nil
35
35
  @members = []
36
36
  @excluded_members = []
37
- @action = :create
38
37
  @append = false
39
38
  @non_unique = false
40
- @allowed_actions.push(:create, :remove, :modify, :manage)
41
39
  end
42
40
 
43
41
  def group_name(arg=nil)
@@ -25,12 +25,10 @@ class Chef
25
25
  class Resource
26
26
  class HomebrewPackage < Chef::Resource::Package
27
27
 
28
- provides :homebrew_package
29
28
  provides :package, os: "darwin"
30
29
 
31
30
  def initialize(name, run_context=nil)
32
31
  super
33
- @resource_name = :homebrew_package
34
32
  @homebrew_user = nil
35
33
  end
36
34