diff options
author | Lamont Granquist <lamont@scriptkiddie.org> | 2014-12-08 13:44:59 -0800 |
---|---|---|
committer | Lamont Granquist <lamont@scriptkiddie.org> | 2014-12-08 13:45:29 -0800 |
commit | 1b3705ca383b64092c9ef54d7e46201fab6271c7 (patch) | |
tree | e14588c68939b80e9cd8c5bf0b0eab4bfddbc96c /lib/chef/resource/script.rb | |
parent | 2bdc79409711e836a7698f7b44d171fa7973d4f1 (diff) | |
download | chef-1b3705ca383b64092c9ef54d7e46201fab6271c7.tar.gz |
Execute and Script Resource improvements
- Warning on incorrect usage of the command resource in any script
resource
- Warning on code in script resource being nil
- Specs added to force deprecation of incorrect usage in Chef-13
- Specs added around the (supported) incorrect usage in Chef-12
- Cleanup+Modernization of providers and specs
- Fixed some global state bugs around the Chef::Log.level in the spec
tests
Diffstat (limited to 'lib/chef/resource/script.rb')
-rw-r--r-- | lib/chef/resource/script.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/chef/resource/script.rb b/lib/chef/resource/script.rb index 479295922c..fd0fd5a7fd 100644 --- a/lib/chef/resource/script.rb +++ b/lib/chef/resource/script.rb @@ -24,11 +24,13 @@ class Chef class Resource class Script < Chef::Resource::Execute + # Chef-13: go back to using :name as the identity attr identity_attr :command def initialize(name, run_context=nil) super @resource_name = :script + # Chef-13: the command variable should be initialized to nil @command = name @code = nil @interpreter = nil @@ -36,6 +38,15 @@ class Chef @default_guard_interpreter = :default end + def command(arg=nil) + unless arg.nil? + # Chef-13: change this to raise if the user is trying to set a value here + Chef::Log.warn "Specifying command attribute on a script resource is a coding error, use the 'code' attribute, or the execute resource" + Chef::Log.warn "This attribute is deprecated and must be fixed or this code will fail on Chef-13" + end + super + end + def code(arg=nil) set_or_return( :code, |