diff options
author | Pete Higgins <pete@peterhiggins.org> | 2020-05-28 17:24:29 -0700 |
---|---|---|
committer | Pete Higgins <pete@peterhiggins.org> | 2020-06-03 11:46:53 -0700 |
commit | 8f7a2bb3eebb44af28aeb583edfdf993f0d47146 (patch) | |
tree | 1138c1d6546d2b7c2b2cfc31d29b77b0e8b173e5 | |
parent | b6a0189a3975cd183014dd191fde5b74440e2ee5 (diff) | |
download | chef-8f7a2bb3eebb44af28aeb583edfdf993f0d47146.tar.gz |
Untangle some inheritance code around script extension.
Signed-off-by: Pete Higgins <pete@peterhiggins.org>
-rw-r--r-- | lib/chef/provider/batch.rb | 7 | ||||
-rw-r--r-- | lib/chef/provider/powershell_script.rb | 7 | ||||
-rw-r--r-- | lib/chef/provider/windows_script.rb | 12 |
3 files changed, 14 insertions, 12 deletions
diff --git a/lib/chef/provider/batch.rb b/lib/chef/provider/batch.rb index b79b464cbd..a8504fa656 100644 --- a/lib/chef/provider/batch.rb +++ b/lib/chef/provider/batch.rb @@ -24,10 +24,6 @@ class Chef provides :batch - def initialize(new_resource, run_context) - super(new_resource, run_context, ".bat") - end - def command basepath = is_forced_32bit ? wow64_directory : run_context.node["kernel"]["os_info"]["system_directory"] @@ -40,6 +36,9 @@ class Chef new_resource.flags.nil? ? "/c" : new_resource.flags + " /c" end + def script_extension + ".bat" + end end end end diff --git a/lib/chef/provider/powershell_script.rb b/lib/chef/provider/powershell_script.rb index 5210b65d48..4f77cd2593 100644 --- a/lib/chef/provider/powershell_script.rb +++ b/lib/chef/provider/powershell_script.rb @@ -26,8 +26,8 @@ class Chef provides :powershell_script - def initialize(new_resource, run_context) - super(new_resource, run_context, ".ps1") + def initialize(*args) + super add_exit_status_wrapper end @@ -182,6 +182,9 @@ class Chef EOH end + def script_extension + ".ps1" + end end end end diff --git a/lib/chef/provider/windows_script.rb b/lib/chef/provider/windows_script.rb index b17d638ca6..dcc38e94f7 100644 --- a/lib/chef/provider/windows_script.rb +++ b/lib/chef/provider/windows_script.rb @@ -29,9 +29,8 @@ class Chef include Chef::Mixin::WindowsArchitectureHelper - def initialize( new_resource, run_context, script_extension = "") - super( new_resource, run_context ) - @script_extension = script_extension + def initialize(new_resource, run_context) + super target_architecture = if new_resource.architecture.nil? node_windows_architecture(run_context.node) @@ -65,10 +64,11 @@ class Chef end def script_file - base_script_name = "chef-script" - temp_file_arguments = [ base_script_name, @script_extension ] + @script_file ||= Tempfile.open(["chef-script", script_extension]) + end - @script_file ||= Tempfile.open(temp_file_arguments) + def script_extension + raise Chef::Exceptions::Override, "You must override #{__method__} in #{self}" end end end |