diff options
author | Lamont Granquist <lamont@scriptkiddie.org> | 2017-02-13 09:52:10 -0800 |
---|---|---|
committer | Lamont Granquist <lamont@scriptkiddie.org> | 2017-02-13 09:52:10 -0800 |
commit | 404a9bc88be538769c6c80b3b31f39a6582991d2 (patch) | |
tree | 2f8795e5f64153440c22a522d669c235a627f289 | |
parent | b949a48acc21d4b64869bd7b834708d5232b1f2a (diff) | |
download | chef-404a9bc88be538769c6c80b3b31f39a6582991d2.tar.gz |
fix specs: RedundantReturn, RedundantSelf, RedundantBegin
department of redundancy department
Signed-off-by: Lamont Granquist <lamont@scriptkiddie.org>
142 files changed, 751 insertions, 883 deletions
diff --git a/chef-config/lib/chef-config/config.rb b/chef-config/lib/chef-config/config.rb index 23e4d75168..4f2516331d 100644 --- a/chef-config/lib/chef-config/config.rb +++ b/chef-config/lib/chef-config/config.rb @@ -45,7 +45,7 @@ module ChefConfig # # +filename+ is used for context in stacktraces, but doesn't need to be the name of an actual file. def self.from_string(string, filename) - self.instance_eval(string, filename, 1) + instance_eval(string, filename, 1) end def self.inspect @@ -142,16 +142,16 @@ module ChefConfig # that upload or download files (such as knife upload, knife role from file, # etc.) work. default :chef_repo_path do - if self.configuration[:cookbook_path] - if self.configuration[:cookbook_path].kind_of?(String) - File.expand_path("..", self.configuration[:cookbook_path]) + if configuration[:cookbook_path] + if configuration[:cookbook_path].kind_of?(String) + File.expand_path("..", configuration[:cookbook_path]) else - self.configuration[:cookbook_path].map do |path| + configuration[:cookbook_path].map do |path| File.expand_path("..", path) end end elsif configuration[:cookbook_artifact_path] - File.expand_path("..", self.configuration[:cookbook_artifact_path]) + File.expand_path("..", configuration[:cookbook_artifact_path]) else cache_path end @@ -205,7 +205,7 @@ module ChefConfig # Defaults to <chef_repo_path>/cookbooks. If chef_repo_path # is not specified, this is set to [/var/chef/cookbooks, /var/chef/site-cookbooks]). default(:cookbook_path) do - if self.configuration[:chef_repo_path] + if configuration[:chef_repo_path] derive_path_from_chef_repo_path("cookbooks") else Array(derive_path_from_chef_repo_path("cookbooks")).flatten + @@ -412,10 +412,10 @@ module ChefConfig default(:chef_server_root) do # if the chef_server_url is a path to an organization, aka # 'some_url.../organizations/*' then remove the '/organization/*' by default - if self.configuration[:chef_server_url] =~ /\/organizations\/\S*$/ - self.configuration[:chef_server_url].split("/")[0..-3].join("/") - elsif self.configuration[:chef_server_url] # default to whatever chef_server_url is - self.configuration[:chef_server_url] + if configuration[:chef_server_url] =~ /\/organizations\/\S*$/ + configuration[:chef_server_url].split("/")[0..-3].join("/") + elsif configuration[:chef_server_url] # default to whatever chef_server_url is + configuration[:chef_server_url] else "https://localhost:443" end @@ -566,7 +566,7 @@ module ChefConfig # Initialize openssl def self.init_openssl if fips - self.enable_fips_mode + enable_fips_mode end end diff --git a/chef-config/lib/chef-config/path_helper.rb b/chef-config/lib/chef-config/path_helper.rb index 0304694516..e8a576c84f 100644 --- a/chef-config/lib/chef-config/path_helper.rb +++ b/chef-config/lib/chef-config/path_helper.rb @@ -187,7 +187,7 @@ module ChefConfig # # See self.all_homes. def self.home(*args) - @@home_dir ||= self.all_homes { |p| break p } + @@home_dir ||= all_homes { |p| break p } if @@home_dir path = File.join(@@home_dir, *args) block_given? ? (yield path) : path diff --git a/lib/chef/api_client.rb b/lib/chef/api_client.rb index 80e55c11a7..6999a4f52d 100644 --- a/lib/chef/api_client.rb +++ b/lib/chef/api_client.rb @@ -162,7 +162,7 @@ class Chef if inflate response = Hash.new Chef::Search::Query.new.search(:client) do |n| - n = self.json_create(n) if n.instance_of?(Hash) + n = json_create(n) if n.instance_of?(Hash) response[n.name] = n end response @@ -188,15 +188,13 @@ class Chef # Save this client via the REST API, returns a hash including the private key def save - begin - http_api.put("clients/#{name}", { :name => self.name, :admin => self.admin, :validator => self.validator }) - rescue Net::HTTPServerException => e - # If that fails, go ahead and try and update it - if e.response.code == "404" - http_api.post("clients", { :name => self.name, :admin => self.admin, :validator => self.validator }) - else - raise e - end + http_api.put("clients/#{name}", { :name => name, :admin => admin, :validator => validator }) + rescue Net::HTTPServerException => e + # If that fails, go ahead and try and update it + if e.response.code == "404" + http_api.post("clients", { :name => name, :admin => admin, :validator => validator }) + else + raise e end end diff --git a/lib/chef/api_client_v1.rb b/lib/chef/api_client_v1.rb index 47b0cd1c53..a1b9b8317e 100644 --- a/lib/chef/api_client_v1.rb +++ b/lib/chef/api_client_v1.rb @@ -190,7 +190,7 @@ class Chef if inflate response = Hash.new Chef::Search::Query.new.search(:client) do |n| - n = self.from_hash(n) if n.instance_of?(Hash) + n = from_hash(n) if n.instance_of?(Hash) response[n.name] = n end response @@ -212,15 +212,13 @@ class Chef # Save this client via the REST API, returns a hash including the private key def save - begin - update - rescue Net::HTTPServerException => e - # If that fails, go ahead and try and update it - if e.response.code == "404" - create - else - raise e - end + update + rescue Net::HTTPServerException => e + # If that fails, go ahead and try and update it + if e.response.code == "404" + create + else + raise e end end @@ -313,7 +311,7 @@ class Chef new_client = chef_rest_v0.post("clients", payload) end - Chef::ApiClientV1.from_hash(self.to_hash.merge(new_client)) + Chef::ApiClientV1.from_hash(to_hash.merge(new_client)) end # As a string diff --git a/lib/chef/application/apply.rb b/lib/chef/application/apply.rb index 3e3fb58448..d7f2359b02 100644 --- a/lib/chef/application/apply.rb +++ b/lib/chef/application/apply.rb @@ -200,16 +200,14 @@ class Chef::Application::Apply < Chef::Application end def run_application - begin - parse_options - run_chef_recipe - Chef::Application.exit! "Exiting", 0 - rescue SystemExit - raise - rescue Exception => e - Chef::Application.debug_stacktrace(e) - Chef::Application.fatal!("#{e.class}: #{e.message}", e) - end + parse_options + run_chef_recipe + Chef::Application.exit! "Exiting", 0 + rescue SystemExit + raise + rescue Exception => e + Chef::Application.debug_stacktrace(e) + Chef::Application.fatal!("#{e.class}: #{e.message}", e) end # Get this party started diff --git a/lib/chef/application/exit_code.rb b/lib/chef/application/exit_code.rb index 2c1298cf91..610a356a7c 100644 --- a/lib/chef/application/exit_code.rb +++ b/lib/chef/application/exit_code.rb @@ -198,12 +198,10 @@ class Chef end def notify_on_deprecation(message) - begin - Chef.deprecated(:exit_code, message) - rescue Chef::Exceptions::DeprecatedFeatureError + Chef.deprecated(:exit_code, message) + rescue Chef::Exceptions::DeprecatedFeatureError # Have to rescue this, otherwise this unhandled error preempts # the current exit code assignment. - end end def deprecation_warning @@ -222,7 +220,7 @@ class Chef def default_exit_code if normalization_disabled? || normalization_not_configured? - return DEPRECATED_RFC_062_EXIT_CODES[:DEPRECATED_FAILURE] + DEPRECATED_RFC_062_EXIT_CODES[:DEPRECATED_FAILURE] else VALID_RFC_062_EXIT_CODES[:GENERIC_FAILURE] end diff --git a/lib/chef/application/knife.rb b/lib/chef/application/knife.rb index c80d0245f1..521011348f 100644 --- a/lib/chef/application/knife.rb +++ b/lib/chef/application/knife.rb @@ -203,11 +203,11 @@ class Chef::Application::Knife < Chef::Application Chef::Log.error(fatal_message) if fatal_message begin - self.parse_options + parse_options rescue OptionParser::InvalidOption => e puts "#{e}\n" end - puts self.opt_parser + puts opt_parser puts Chef::Knife.list_commands exit exitcode diff --git a/lib/chef/application/windows_service.rb b/lib/chef/application/windows_service.rb index 2f1456ac45..7bc68a586d 100644 --- a/lib/chef/application/windows_service.rb +++ b/lib/chef/application/windows_service.rb @@ -183,39 +183,38 @@ class Chef # The chef client will be started in a new process. We have used shell_out to start the chef-client. # The log_location and config_file of the parent process is passed to the new chef-client process. # We need to add the --no-fork, as by default it is set to fork=true. - begin - Chef::Log.info "Starting chef-client in a new process" - # Pass config params to the new process - config_params = " --no-fork" - config_params += " -c #{Chef::Config[:config_file]}" unless Chef::Config[:config_file].nil? - # log_location might be an event logger and if so we cannot pass as a command argument - # but shed no tears! If the logger is an event logger, it must have been configured - # as such in the config file and chef-client will use that when no arg is passed here - config_params += " -L #{resolve_log_location}" if resolve_log_location.is_a?(String) - - # Starts a new process and waits till the process exits - - result = shell_out( - "chef-client.bat #{config_params}", - :timeout => Chef::Config[:windows_service][:watchdog_timeout], - :logger => Chef::Log - ) - Chef::Log.debug "#{result.stdout}" - Chef::Log.debug "#{result.stderr}" - rescue Mixlib::ShellOut::CommandTimeout => e - Chef::Log.error "chef-client timed out\n(#{e})" - Chef::Log.error(<<-EOF) + + Chef::Log.info "Starting chef-client in a new process" + # Pass config params to the new process + config_params = " --no-fork" + config_params += " -c #{Chef::Config[:config_file]}" unless Chef::Config[:config_file].nil? + # log_location might be an event logger and if so we cannot pass as a command argument + # but shed no tears! If the logger is an event logger, it must have been configured + # as such in the config file and chef-client will use that when no arg is passed here + config_params += " -L #{resolve_log_location}" if resolve_log_location.is_a?(String) + + # Starts a new process and waits till the process exits + + result = shell_out( + "chef-client.bat #{config_params}", + :timeout => Chef::Config[:windows_service][:watchdog_timeout], + :logger => Chef::Log + ) + Chef::Log.debug "#{result.stdout}" + Chef::Log.debug "#{result.stderr}" + rescue Mixlib::ShellOut::CommandTimeout => e + Chef::Log.error "chef-client timed out\n(#{e})" + Chef::Log.error(<<-EOF) Your chef-client run timed out. You can increase the time chef-client is given to complete by configuring windows_service.watchdog_timeout in your client.rb. EOF - rescue Mixlib::ShellOut::ShellCommandFailed => e - Chef::Log.warn "Not able to start chef-client in new process (#{e})" - rescue => e - Chef::Log.error e - ensure - # Once process exits, we log the current process' pid - Chef::Log.info "Child process exited (pid: #{Process.pid})" - end + rescue Mixlib::ShellOut::ShellCommandFailed => e + Chef::Log.warn "Not able to start chef-client in new process (#{e})" + rescue => e + Chef::Log.error e + ensure + # Once process exits, we log the current process' pid + Chef::Log.info "Child process exited (pid: #{Process.pid})" end def apply_config(config_file_path) diff --git a/lib/chef/application/windows_service_manager.rb b/lib/chef/application/windows_service_manager.rb index fd0ce0b174..5c572bc260 100644 --- a/lib/chef/application/windows_service_manager.rb +++ b/lib/chef/application/windows_service_manager.rb @@ -168,7 +168,7 @@ class Chef PAUSED = "paused" def service_exists? - return ::Win32::Service.exists?(@service_name) + ::Win32::Service.exists?(@service_name) end def take_action(action = nil, desired_state = nil) diff --git a/lib/chef/audit/audit_event_proxy.rb b/lib/chef/audit/audit_event_proxy.rb index c4d67fa8f4..25ff31ecb1 100644 --- a/lib/chef/audit/audit_event_proxy.rb +++ b/lib/chef/audit/audit_event_proxy.rb @@ -78,14 +78,14 @@ class Chef # We know all of our examples each live in a top-level `control_group` block - get this name now outermost_group_desc = describe_groups.shift - return outermost_group_desc, { + [outermost_group_desc, { :name => example.description, :desc => example.full_description, :resource_type => resource_type, :resource_name => resource_name, :context => describe_groups, :line_number => example.metadata[:line_number], - } + }] end end diff --git a/lib/chef/audit/control_group_data.rb b/lib/chef/audit/control_group_data.rb index 4dffbdf3dd..476ebe95e9 100644 --- a/lib/chef/audit/control_group_data.rb +++ b/lib/chef/audit/control_group_data.rb @@ -118,7 +118,7 @@ class Chef def initialize(control_data = {}) control_data.each do |k, v| - self.instance_variable_set("@#{k}", v) + instance_variable_set("@#{k}", v) end end diff --git a/lib/chef/chef_fs/chef_fs_data_store.rb b/lib/chef/chef_fs/chef_fs_data_store.rb index 9893cf7245..46fe5c4dd3 100644 --- a/lib/chef/chef_fs/chef_fs_data_store.rb +++ b/lib/chef/chef_fs/chef_fs_data_store.rb @@ -611,7 +611,7 @@ class Chef private def use_memory_store?(path) - return path[0] == "sandboxes" || path[0] == "file_store" && path[1] == "checksums" || path == %w{environments _default} + path[0] == "sandboxes" || path[0] == "file_store" && path[1] == "checksums" || path == %w{environments _default} end def write_cookbook(path, data, *options) @@ -779,15 +779,13 @@ class Chef end def path_always_exists?(path) - return path.length == 1 && BASE_DIRNAMES.include?(path[0]) + path.length == 1 && BASE_DIRNAMES.include?(path[0]) end def with_entry(path) - begin - yield Chef::ChefFS::FileSystem.resolve_path(chef_fs, to_chef_fs_path(path)) - rescue Chef::ChefFS::FileSystem::NotFoundError => e - raise ChefZero::DataStore::DataNotFoundError.new(to_zero_path(e.entry), e) - end + yield Chef::ChefFS::FileSystem.resolve_path(chef_fs, to_chef_fs_path(path)) + rescue Chef::ChefFS::FileSystem::NotFoundError => e + raise ChefZero::DataStore::DataNotFoundError.new(to_zero_path(e.entry), e) end def with_parent_dir(path, *options) diff --git a/lib/chef/chef_fs/command_line.rb b/lib/chef/chef_fs/command_line.rb index 1b6884514a..2aefe2fa88 100644 --- a/lib/chef/chef_fs/command_line.rb +++ b/lib/chef/chef_fs/command_line.rb @@ -266,26 +266,25 @@ class Chef def diff_text(old_path, new_path, old_value, new_value) # Copy to tempfiles before diffing # TODO don't copy things that are already in files! Or find an in-memory diff algorithm - begin - new_tempfile = Tempfile.new("new") - new_tempfile.write(new_value) - new_tempfile.close - begin - old_tempfile = Tempfile.new("old") - old_tempfile.write(old_value) - old_tempfile.close + new_tempfile = Tempfile.new("new") + new_tempfile.write(new_value) + new_tempfile.close - result = Chef::Util::Diff.new.udiff(old_tempfile.path, new_tempfile.path) - result = result.gsub(/^--- #{old_tempfile.path}/, "--- #{old_path}") - result = result.gsub(/^\+\+\+ #{new_tempfile.path}/, "+++ #{new_path}") - result - ensure - old_tempfile.close! - end + begin + old_tempfile = Tempfile.new("old") + old_tempfile.write(old_value) + old_tempfile.close + + result = Chef::Util::Diff.new.udiff(old_tempfile.path, new_tempfile.path) + result = result.gsub(/^--- #{old_tempfile.path}/, "--- #{old_path}") + result = result.gsub(/^\+\+\+ #{new_tempfile.path}/, "+++ #{new_path}") + result ensure - new_tempfile.close! + old_tempfile.close! end + ensure + new_tempfile.close! end end end diff --git a/lib/chef/chef_fs/data_handler/client_data_handler.rb b/lib/chef/chef_fs/data_handler/client_data_handler.rb index 5e120035ac..6c01d8d54c 100644 --- a/lib/chef/chef_fs/data_handler/client_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/client_data_handler.rb @@ -25,7 +25,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/container_data_handler.rb b/lib/chef/chef_fs/data_handler/container_data_handler.rb index 04973b5135..a8bd5f084c 100644 --- a/lib/chef/chef_fs/data_handler/container_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/container_data_handler.rb @@ -12,7 +12,7 @@ class Chef end def preserve_key?(key) - return key == "containername" + key == "containername" end # Verify that the JSON hash for this type has a key that matches its name. diff --git a/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb b/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb index 156c1eef4e..2861c5d3eb 100644 --- a/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb @@ -24,7 +24,7 @@ class Chef end def preserve_key?(key) - return key == "cookbook_name" || key == "version" + key == "cookbook_name" || key == "version" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb b/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb index c6b6449d52..e799e72e36 100644 --- a/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb @@ -35,7 +35,7 @@ class Chef end def preserve_key?(key) - return key == "id" + key == "id" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/environment_data_handler.rb b/lib/chef/chef_fs/data_handler/environment_data_handler.rb index 68f6daee9a..ab8104b483 100644 --- a/lib/chef/chef_fs/data_handler/environment_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/environment_data_handler.rb @@ -18,7 +18,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/group_data_handler.rb b/lib/chef/chef_fs/data_handler/group_data_handler.rb index 7f38784826..8daced2e2e 100644 --- a/lib/chef/chef_fs/data_handler/group_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/group_data_handler.rb @@ -41,7 +41,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/node_data_handler.rb b/lib/chef/chef_fs/data_handler/node_data_handler.rb index 36a7bf545b..a0087ec5d6 100644 --- a/lib/chef/chef_fs/data_handler/node_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/node_data_handler.rb @@ -22,7 +22,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/organization_data_handler.rb b/lib/chef/chef_fs/data_handler/organization_data_handler.rb index 0facd5d55d..0a697ab69a 100644 --- a/lib/chef/chef_fs/data_handler/organization_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/organization_data_handler.rb @@ -16,7 +16,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end # Verify that the JSON hash for this type has a key that matches its name. diff --git a/lib/chef/chef_fs/data_handler/role_data_handler.rb b/lib/chef/chef_fs/data_handler/role_data_handler.rb index b09c146a5d..b26271f3e8 100644 --- a/lib/chef/chef_fs/data_handler/role_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/role_data_handler.rb @@ -24,7 +24,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end def chef_class diff --git a/lib/chef/chef_fs/data_handler/user_data_handler.rb b/lib/chef/chef_fs/data_handler/user_data_handler.rb index c2df4db49d..4da2f8225d 100644 --- a/lib/chef/chef_fs/data_handler/user_data_handler.rb +++ b/lib/chef/chef_fs/data_handler/user_data_handler.rb @@ -19,7 +19,7 @@ class Chef end def preserve_key?(key) - return key == "name" + key == "name" end # There is no chef_class for users, nor does to_ruby work. diff --git a/lib/chef/chef_fs/file_pattern.rb b/lib/chef/chef_fs/file_pattern.rb index 9c12bd4b96..835e06eab7 100644 --- a/lib/chef/chef_fs/file_pattern.rb +++ b/lib/chef/chef_fs/file_pattern.rb @@ -84,7 +84,7 @@ class Chef # Otherwise, it's possible we could match: the path matches to this point, and the pattern is longer than the path. # TODO There is one edge case where the double star comes after some characters like abc**def--we could check whether the next # bit of path starts with abc in that case. - return true + true end # Returns the immediate child of a path that would be matched @@ -114,7 +114,7 @@ class Chef path = path[1, path.length - 1] if Chef::ChefFS::PathUtils.is_absolute?(path) dirs_in_path = Chef::ChefFS::PathUtils.split(path).length return nil if exact_parts.length <= dirs_in_path - return exact_parts[dirs_in_path] + exact_parts[dirs_in_path] end # If this pattern represents an exact path, returns the exact path. diff --git a/lib/chef/chef_fs/file_system.rb b/lib/chef/chef_fs/file_system.rb index 1a8da2fd6b..cbd8aa71d9 100644 --- a/lib/chef/chef_fs/file_system.rb +++ b/lib/chef/chef_fs/file_system.rb @@ -419,7 +419,7 @@ class Chef ui.output "Created #{parent_path}" if ui end end - return parent + parent end def parallel_do(enum, options = {}, &block) diff --git a/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb b/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb index 3fa5b49eb1..8f5faf2183 100644 --- a/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +++ b/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb @@ -73,17 +73,16 @@ class Chef # Since we're ignoring the rules and doing a network request here, # we need to make sure we don't rethrow the exception. (child(name) # is not supposed to fail.) - begin - children.find { |child| child.name == name } - rescue Chef::ChefFS::FileSystem::NotFoundError - nil - end + + children.find { |child| child.name == name } + rescue Chef::ChefFS::FileSystem::NotFoundError + nil end def can_have_child?(name, is_dir) # A cookbook's root may not have directories unless they are segment directories return name != "root_files" && COOKBOOK_SEGMENT_INFO.keys.include?(name.to_sym) if is_dir - return true + true end def children diff --git a/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb b/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb index ad50054dc9..6b4657ae6a 100644 --- a/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +++ b/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb @@ -37,16 +37,14 @@ class Chef end def read - begin - tmpfile = rest.streaming_request(file[:url]) - File.open(tmpfile, "rb") { |f| f.read } - rescue Timeout::Error => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "Timeout reading #{file[:url]}: #{e}") - rescue Net::HTTPServerException => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "#{e.message} retrieving #{file[:url]}") - rescue Errno::ENOENT - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) - end + tmpfile = rest.streaming_request(file[:url]) + File.open(tmpfile, "rb") { |f| f.read } + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "Timeout reading #{file[:url]}: #{e}") + rescue Net::HTTPServerException => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "#{e.message} retrieving #{file[:url]}") + rescue Errno::ENOENT + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) end def rest diff --git a/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb b/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb index ec382e60ef..205aa9fd86 100644 --- a/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb +++ b/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb @@ -30,16 +30,14 @@ class Chef end def children - begin - @children ||= root.get_json(api_path).keys.sort.map { |entry| make_child_entry(entry, true) } - rescue Timeout::Error => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout getting children: #{e}") - rescue Net::HTTPServerException => e - if e.response.code == "404" - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, e) - else - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error getting children: #{e}") - end + @children ||= root.get_json(api_path).keys.sort.map { |entry| make_child_entry(entry, true) } + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout getting children: #{e}") + rescue Net::HTTPServerException => e + if e.response.code == "404" + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, e) + else + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error getting children: #{e}") end end diff --git a/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb b/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb index df2388f1df..c81e880744 100644 --- a/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +++ b/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb @@ -28,18 +28,16 @@ class Chef class NodesDir < RestListDir # Identical to RestListDir.children, except supports environments def children - begin - @children ||= root.get_json(env_api_path).keys.sort.map do |key| - make_child_entry(key, true) - end - rescue Timeout::Error => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout retrieving children: #{e}") - rescue Net::HTTPServerException => e - if $!.response.code == "404" - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) - else - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") - end + @children ||= root.get_json(env_api_path).keys.sort.map do |key| + make_child_entry(key, true) + end + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout retrieving children: #{e}") + rescue Net::HTTPServerException => e + if $!.response.code == "404" + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) + else + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") end end diff --git a/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb b/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb index 4a4be19fe4..a4add1378d 100644 --- a/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +++ b/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb @@ -66,42 +66,40 @@ class Chef # } # } def children - begin # Grab the names of the children, append json, and make child entries - @children ||= begin - result = [] - data = root.get_json(api_path) - data.keys.sort.each do |policy_name| - data[policy_name]["revisions"].keys.each do |policy_revision| - filename = "#{policy_name}-#{policy_revision}.json" - result << make_child_entry(filename, true) - end + @children ||= begin + result = [] + data = root.get_json(api_path) + data.keys.sort.each do |policy_name| + data[policy_name]["revisions"].keys.each do |policy_revision| + filename = "#{policy_name}-#{policy_revision}.json" + result << make_child_entry(filename, true) end - result end - rescue Timeout::Error => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout retrieving children: #{e}") - rescue Net::HTTPServerException => e - # 404 = NotFoundError - if $!.response.code == "404" - # GET /organizations/ORG/policies returned 404, but that just might be because - # we are talking to an older version of the server that doesn't support policies. - # Do GET /orgqanizations/ORG to find out if the org exists at all. - # TODO use server API version instead of a second network request. - begin - root.get_json(parent.api_path) - # Return empty list if the organization exists but /policies didn't work - [] - rescue Net::HTTPServerException => e - if e.response.code == "404" - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) - end - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") + result + end + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout retrieving children: #{e}") + rescue Net::HTTPServerException => e + # 404 = NotFoundError + if $!.response.code == "404" + # GET /organizations/ORG/policies returned 404, but that just might be because + # we are talking to an older version of the server that doesn't support policies. + # Do GET /orgqanizations/ORG to find out if the org exists at all. + # TODO use server API version instead of a second network request. + begin + root.get_json(parent.api_path) + # Return empty list if the organization exists but /policies didn't work + [] + rescue Net::HTTPServerException => e + if e.response.code == "404" + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) end - # Anything else is unexpected (OperationFailedError) - else raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") end + # Anything else is unexpected (OperationFailedError) + else + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") end end diff --git a/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb b/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb index b7413c44c5..df3d393d35 100644 --- a/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb +++ b/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb @@ -93,7 +93,7 @@ class Chef end begin - existing_group = Chef::JSONCompat.parse(self.read) + existing_group = Chef::JSONCompat.parse(read) rescue NotFoundError # It's OK if the group doesn't already exist, just means no existing policies end diff --git a/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb b/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb index dfd26a0241..6ba53fab4b 100644 --- a/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +++ b/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb @@ -71,40 +71,38 @@ class Chef # Children are foo.json and bar.json in this case. # def children - begin # Grab the names of the children, append json, and make child entries - @children ||= root.get_json(api_path).keys.sort.map do |key| - make_child_entry(key, true) - end - rescue Timeout::Error => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout retrieving children: #{e}") - rescue Net::HTTPServerException => e - # 404 = NotFoundError - if $!.response.code == "404" - - if parent.is_a?(ChefServerRootDir) - # GET /organizations/ORG/<container> returned 404, but that just might be because - # we are talking to an older version of the server that doesn't support policies. - # Do GET /organizations/ORG to find out if the org exists at all. - # TODO use server API version instead of a second network request. - begin - root.get_json(parent.api_path) - # Return empty list if the organization exists but /policies didn't work - [] - rescue Net::HTTPServerException => e - if e.response.code == "404" - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) - end - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") + @children ||= root.get_json(api_path).keys.sort.map do |key| + make_child_entry(key, true) + end + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "Timeout retrieving children: #{e}") + rescue Net::HTTPServerException => e + # 404 = NotFoundError + if $!.response.code == "404" + + if parent.is_a?(ChefServerRootDir) + # GET /organizations/ORG/<container> returned 404, but that just might be because + # we are talking to an older version of the server that doesn't support policies. + # Do GET /organizations/ORG to find out if the org exists at all. + # TODO use server API version instead of a second network request. + begin + root.get_json(parent.api_path) + # Return empty list if the organization exists but /policies didn't work + [] + rescue Net::HTTPServerException => e + if e.response.code == "404" + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) end - else - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") end - - # Anything else is unexpected (OperationFailedError) else - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) end + + # Anything else is unexpected (OperationFailedError) + else + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:children, self, e, "HTTP error retrieving children: #{e}") end end diff --git a/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb b/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb index eb793d5e87..8f9e554526 100644 --- a/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +++ b/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb @@ -85,16 +85,14 @@ class Chef end def delete(recurse) - begin - rest.delete(api_path) - rescue Timeout::Error => e + rest.delete(api_path) + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:delete, self, e, "Timeout deleting: #{e}") + rescue Net::HTTPServerException => e + if e.response.code == "404" + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, e) + else raise Chef::ChefFS::FileSystem::OperationFailedError.new(:delete, self, e, "Timeout deleting: #{e}") - rescue Net::HTTPServerException => e - if e.response.code == "404" - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, e) - else - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:delete, self, e, "Timeout deleting: #{e}") - end end end @@ -103,17 +101,15 @@ class Chef end def _read_json - begin # Minimize the value (get rid of defaults) so the results don't look terrible - root.get_json(api_path) - rescue Timeout::Error => e - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "Timeout reading: #{e}") - rescue Net::HTTPServerException => e - if $!.response.code == "404" - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, e) - else - raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "HTTP error reading: #{e}") - end + root.get_json(api_path) + rescue Timeout::Error => e + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "Timeout reading: #{e}") + rescue Net::HTTPServerException => e + if $!.response.code == "404" + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, e) + else + raise Chef::ChefFS::FileSystem::OperationFailedError.new(:read, self, e, "HTTP error reading: #{e}") end end @@ -190,11 +186,9 @@ class Chef end def api_error_text(response) - begin - Chef::JSONCompat.parse(response.body)["error"].join("\n") - rescue - response.body - end + Chef::JSONCompat.parse(response.body)["error"].join("\n") + rescue + response.body end end diff --git a/lib/chef/chef_fs/file_system/memory/memory_file.rb b/lib/chef/chef_fs/file_system/memory/memory_file.rb index 7eabc8fcb1..6dcefc72eb 100644 --- a/lib/chef/chef_fs/file_system/memory/memory_file.rb +++ b/lib/chef/chef_fs/file_system/memory/memory_file.rb @@ -11,7 +11,7 @@ class Chef end def read - return @value + @value end end end diff --git a/lib/chef/chef_fs/file_system/multiplexed_dir.rb b/lib/chef/chef_fs/file_system/multiplexed_dir.rb index 21abc012f8..cf1fb34345 100644 --- a/lib/chef/chef_fs/file_system/multiplexed_dir.rb +++ b/lib/chef/chef_fs/file_system/multiplexed_dir.rb @@ -17,22 +17,20 @@ class Chef end def children - begin - result = [] - seen = {} + result = [] + seen = {} # If multiple things have the same name, the first one wins. - multiplexed_dirs.each do |dir| - dir.children.each do |child| - if seen[child.name] - Chef::Log.warn("Child with name '#{child.name}' found in multiple directories: #{seen[child.name].path_for_printing} and #{child.path_for_printing}") unless seen[child.name].path_for_printing == child.path_for_printing - else - result << child - seen[child.name] = child - end + multiplexed_dirs.each do |dir| + dir.children.each do |child| + if seen[child.name] + Chef::Log.warn("Child with name '#{child.name}' found in multiple directories: #{seen[child.name].path_for_printing} and #{child.path_for_printing}") unless seen[child.name].path_for_printing == child.path_for_printing + else + result << child + seen[child.name] = child end end - result end + result end def make_child_entry(name) diff --git a/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb b/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb index 1b640bc076..31b538b9ce 100644 --- a/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +++ b/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb @@ -80,18 +80,16 @@ class Chef # Customizations of base class def chef_object - begin - cb = cookbook_version - if !cb - Chef::Log.error("Cookbook #{file_path} empty.") - raise "Cookbook #{file_path} empty." - end - cb - rescue => e - Chef::Log.error("Could not read #{path_for_printing} into a Chef object: #{e}") - Chef::Log.error(e.backtrace.join("\n")) - raise + cb = cookbook_version + if !cb + Chef::Log.error("Cookbook #{file_path} empty.") + raise "Cookbook #{file_path} empty." end + cb + rescue => e + Chef::Log.error("Could not read #{path_for_printing} into a Chef object: #{e}") + Chef::Log.error(e.backtrace.join("\n")) + raise end def children @@ -112,7 +110,7 @@ class Chef def self.canonical_cookbook_name(entry_name) name_match = Chef::ChefFS::FileSystem::ChefServer::VersionedCookbookDir::VALID_VERSIONED_COOKBOOK_NAME.match(entry_name) return nil if name_match.nil? - return name_match[1] + name_match[1] end def canonical_cookbook_name(entry_name) diff --git a/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb b/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb index 4019c6985b..90b8c88cff 100644 --- a/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +++ b/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb @@ -52,14 +52,12 @@ class Chef end def children - begin - entries = Dir.entries(file_path).sort. - map { |child_name| make_child_entry(child_name) }. - select { |child| child && can_have_child?(child.name, child.dir?) } - entries.select { |entry| !(entry.dir? && entry.children.size == 0 ) } - rescue Errno::ENOENT - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) - end + entries = Dir.entries(file_path).sort. + map { |child_name| make_child_entry(child_name) }. + select { |child| child && can_have_child?(child.name, child.dir?) } + entries.select { |entry| !(entry.dir? && entry.children.size == 0 ) } + rescue Errno::ENOENT + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) end def can_have_child?(name, is_dir) @@ -140,11 +138,9 @@ class Chef end def read - begin - File.open(file_path, "rb") { |f| f.read } - rescue Errno::ENOENT - raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) - end + File.open(file_path, "rb") { |f| f.read } + rescue Errno::ENOENT + raise Chef::ChefFS::FileSystem::NotFoundError.new(self, $!) end def write(content) diff --git a/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb b/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb index 0fd249a2c4..86eca95ba8 100644 --- a/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb +++ b/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb @@ -28,7 +28,7 @@ class Chef class CookbooksDir < Repository::Directory def chefignore - @chefignore ||= Chef::Cookbook::Chefignore.new(self.file_path) + @chefignore ||= Chef::Cookbook::Chefignore.new(file_path) rescue Errno::EISDIR, Errno::EACCES # Work around a bug in Chefignore when chefignore is a directory end diff --git a/lib/chef/chef_fs/parallelizer.rb b/lib/chef/chef_fs/parallelizer.rb index ccbf7ad96e..32de61e048 100644 --- a/lib/chef/chef_fs/parallelizer.rb +++ b/lib/chef/chef_fs/parallelizer.rb @@ -86,19 +86,17 @@ class Chef private def worker_loop - begin - until @stop_thread[Thread.current] - begin - task = @tasks.pop - task.call - rescue - puts "ERROR #{$!}" - puts $!.backtrace - end + until @stop_thread[Thread.current] + begin + task = @tasks.pop + task.call + rescue + puts "ERROR #{$!}" + puts $!.backtrace end - ensure - @stop_thread.delete(Thread.current) end + ensure + @stop_thread.delete(Thread.current) end end end diff --git a/lib/chef/cookbook/cookbook_version_loader.rb b/lib/chef/cookbook/cookbook_version_loader.rb index b2305d3870..b9de9a7482 100644 --- a/lib/chef/cookbook/cookbook_version_loader.rb +++ b/lib/chef/cookbook/cookbook_version_loader.rb @@ -305,40 +305,34 @@ class Chef end def apply_ruby_metadata(file) - begin - @metadata.from_file(file) - rescue Chef::Exceptions::JSON::ParseError - Chef::Log.error("Error evaluating metadata.rb for #{@inferred_cookbook_name} in " + file) - raise - end + @metadata.from_file(file) + rescue Chef::Exceptions::JSON::ParseError + Chef::Log.error("Error evaluating metadata.rb for #{@inferred_cookbook_name} in " + file) + raise end def apply_json_metadata(file) - begin - @metadata.from_json(IO.read(file)) - rescue Chef::Exceptions::JSON::ParseError - Chef::Log.error("Couldn't parse cookbook metadata JSON for #{@inferred_cookbook_name} in " + file) - raise - end + @metadata.from_json(IO.read(file)) + rescue Chef::Exceptions::JSON::ParseError + Chef::Log.error("Couldn't parse cookbook metadata JSON for #{@inferred_cookbook_name} in " + file) + raise end def apply_json_cookbook_version_metadata(file) - begin - data = Chef::JSONCompat.parse(IO.read(file)) - @metadata.from_hash(data["metadata"]) - # the JSON cookbok metadata file is only used by chef-zero. - # The Chef Server API currently does not enforce that the metadata - # have a `name` field, but that will cause an error when attempting - # to load the cookbook. To keep compatibility, we fake it by setting - # the metadata name from the cookbook version object's name. - # - # This behavior can be removed if/when Chef Server enforces that the - # metadata contains a name key. - @metadata.name(data["cookbook_name"]) unless data["metadata"].key?("name") - rescue Chef::Exceptions::JSON::ParseError - Chef::Log.error("Couldn't parse cookbook metadata JSON for #{@inferred_cookbook_name} in " + file) - raise - end + data = Chef::JSONCompat.parse(IO.read(file)) + @metadata.from_hash(data["metadata"]) + # the JSON cookbok metadata file is only used by chef-zero. + # The Chef Server API currently does not enforce that the metadata + # have a `name` field, but that will cause an error when attempting + # to load the cookbook. To keep compatibility, we fake it by setting + # the metadata name from the cookbook version object's name. + # + # This behavior can be removed if/when Chef Server enforces that the + # metadata contains a name key. + @metadata.name(data["cookbook_name"]) unless data["metadata"].key?("name") + rescue Chef::Exceptions::JSON::ParseError + Chef::Log.error("Couldn't parse cookbook metadata JSON for #{@inferred_cookbook_name} in " + file) + raise end def set_frozen diff --git a/lib/chef/cookbook/metadata.rb b/lib/chef/cookbook/metadata.rb index c3698f3315..3f23bc2056 100644 --- a/lib/chef/cookbook/metadata.rb +++ b/lib/chef/cookbook/metadata.rb @@ -462,7 +462,7 @@ class Chef cookbook.fully_qualified_recipe_names.map do |recipe_name| unqualified_name = if recipe_name =~ /::default$/ - self.name.to_s + name.to_s else recipe_name end @@ -567,29 +567,29 @@ class Chef def to_hash { - NAME => self.name, - DESCRIPTION => self.description, - LONG_DESCRIPTION => self.long_description, - MAINTAINER => self.maintainer, - MAINTAINER_EMAIL => self.maintainer_email, - LICENSE => self.license, - PLATFORMS => self.platforms, - DEPENDENCIES => self.dependencies, - RECOMMENDATIONS => self.recommendations, - SUGGESTIONS => self.suggestions, - CONFLICTING => self.conflicting, - PROVIDING => self.providing, - REPLACING => self.replacing, - ATTRIBUTES => self.attributes, - GROUPINGS => self.groupings, - RECIPES => self.recipes, - VERSION => self.version, - SOURCE_URL => self.source_url, - ISSUES_URL => self.issues_url, - PRIVACY => self.privacy, - CHEF_VERSIONS => gem_requirements_to_array(*self.chef_versions), - OHAI_VERSIONS => gem_requirements_to_array(*self.ohai_versions), - GEMS => self.gems, + NAME => name, + DESCRIPTION => description, + LONG_DESCRIPTION => long_description, + MAINTAINER => maintainer, + MAINTAINER_EMAIL => maintainer_email, + LICENSE => license, + PLATFORMS => platforms, + DEPENDENCIES => dependencies, + RECOMMENDATIONS => recommendations, + SUGGESTIONS => suggestions, + CONFLICTING => conflicting, + PROVIDING => providing, + REPLACING => replacing, + ATTRIBUTES => attributes, + GROUPINGS => groupings, + RECIPES => recipes, + VERSION => version, + SOURCE_URL => source_url, + ISSUES_URL => issues_url, + PRIVACY => privacy, + CHEF_VERSIONS => gem_requirements_to_array(*chef_versions), + OHAI_VERSIONS => gem_requirements_to_array(*ohai_versions), + GEMS => gems, } end @@ -598,7 +598,7 @@ class Chef end def self.from_hash(o) - cm = self.new() + cm = new() cm.from_hash(o) cm end @@ -632,7 +632,7 @@ class Chef def self.from_json(string) o = Chef::JSONCompat.from_json(string) - self.from_hash(o) + from_hash(o) end def self.validate_json(json_str) diff --git a/lib/chef/cookbook_version.rb b/lib/chef/cookbook_version.rb index 33226a7de5..2037b5f972 100644 --- a/lib/chef/cookbook_version.rb +++ b/lib/chef/cookbook_version.rb @@ -549,7 +549,7 @@ class Chef end def chef_server_rest - @chef_server_rest ||= self.chef_server_rest + @chef_server_rest ||= chef_server_rest end def self.chef_server_rest @@ -600,11 +600,11 @@ class Chef end def <=>(other) - raise Chef::Exceptions::CookbookVersionNameMismatch if self.name != other.name + raise Chef::Exceptions::CookbookVersionNameMismatch if name != other.name # FIXME: can we change the interface to the Metadata class such # that metadata.version returns a Chef::Version instance instead # of a string? - Chef::Version.new(self.version) <=> Chef::Version.new(other.version) + Chef::Version.new(version) <=> Chef::Version.new(other.version) end private diff --git a/lib/chef/data_bag.rb b/lib/chef/data_bag.rb index 7b32340f6a..4bb656a2c8 100644 --- a/lib/chef/data_bag.rb +++ b/lib/chef/data_bag.rb @@ -137,7 +137,7 @@ class Chef end end end - return data_bag + data_bag else Chef::ServerAPI.new(Chef::Config[:chef_server_url]).get("data/#{name}") end diff --git a/lib/chef/data_bag_item.rb b/lib/chef/data_bag_item.rb index 83c568e6f3..2bd27e3eef 100644 --- a/lib/chef/data_bag_item.rb +++ b/lib/chef/data_bag_item.rb @@ -107,9 +107,9 @@ class Chef end def to_hash - result = self.raw_data.dup + result = raw_data.dup result["chef_type"] = "data_bag_item" - result["data_bag"] = self.data_bag.to_s + result["data_bag"] = data_bag.to_s result end @@ -207,7 +207,7 @@ class Chef end def pretty_print(pretty_printer) - pretty_printer.pp({ "data_bag_item('#{data_bag}', '#{id}')" => self.to_hash }) + pretty_printer.pp({ "data_bag_item('#{data_bag}', '#{id}')" => to_hash }) end def id diff --git a/lib/chef/decorator.rb b/lib/chef/decorator.rb index 546c49baed..ac0f8fdfbb 100644 --- a/lib/chef/decorator.rb +++ b/lib/chef/decorator.rb @@ -52,7 +52,7 @@ class Chef # adding the define_singleton_method call and @__defined_methods__ tracking def method_missing(m, *args, &block) r = true - target = self.__getobj__ { r = false } + target = __getobj__ { r = false } if r && target.respond_to?(m) # these next 4 lines are the patched code diff --git a/lib/chef/dsl/audit.rb b/lib/chef/dsl/audit.rb index 98271dc5cb..9ef798df91 100644 --- a/lib/chef/dsl/audit.rb +++ b/lib/chef/dsl/audit.rb @@ -38,8 +38,8 @@ class Chef cookbook_name = self.cookbook_name metadata = { cookbook_name: cookbook_name, - cookbook_version: self.run_context.cookbook_collection[cookbook_name].version, - recipe_name: self.recipe_name, + cookbook_version: run_context.cookbook_collection[cookbook_name].version, + recipe_name: recipe_name, line_number: block.source_location[1], } diff --git a/lib/chef/dsl/declare_resource.rb b/lib/chef/dsl/declare_resource.rb index 5bd1f7fb8e..e48d741c60 100644 --- a/lib/chef/dsl/declare_resource.rb +++ b/lib/chef/dsl/declare_resource.rb @@ -287,7 +287,7 @@ class Chef run_context: run_context, cookbook_name: cookbook_name, recipe_name: recipe_name, - enclosing_provider: self.is_a?(Chef::Provider) ? self : nil + enclosing_provider: is_a?(Chef::Provider) ? self : nil ).build(&resource_attrs_block) end end diff --git a/lib/chef/dsl/platform_introspection.rb b/lib/chef/dsl/platform_introspection.rb index f99ab970c5..dc309f9acb 100644 --- a/lib/chef/dsl/platform_introspection.rb +++ b/lib/chef/dsl/platform_introspection.rb @@ -68,41 +68,39 @@ class Chef private def match_versions(node) - begin - platform, version = node[:platform].to_s, node[:platform_version].to_s - return nil unless @values.key?(platform) - node_version = Chef::Version::Platform.new(version) - key_matches = [] - keys = @values[platform].keys - keys.each do |k| - begin - if Chef::VersionConstraint::Platform.new(k).include?(node_version) - key_matches << k - end - rescue Chef::Exceptions::InvalidVersionConstraint => e - Chef::Log.debug "Caught InvalidVersionConstraint. This means that a key in value_for_platform cannot be interpreted as a Chef::VersionConstraint::Platform." - Chef::Log.debug(e) + platform, version = node[:platform].to_s, node[:platform_version].to_s + return nil unless @values.key?(platform) + node_version = Chef::Version::Platform.new(version) + key_matches = [] + keys = @values[platform].keys + keys.each do |k| + begin + if Chef::VersionConstraint::Platform.new(k).include?(node_version) + key_matches << k end + rescue Chef::Exceptions::InvalidVersionConstraint => e + Chef::Log.debug "Caught InvalidVersionConstraint. This means that a key in value_for_platform cannot be interpreted as a Chef::VersionConstraint::Platform." + Chef::Log.debug(e) end - return @values[platform][version] if key_matches.include?(version) - case key_matches.length - when 0 - return nil - when 1 - return @values[platform][key_matches.first] - else - raise "Multiple matches detected for #{platform} with values #{@values}. The matches are: #{key_matches}" - end - rescue Chef::Exceptions::InvalidCookbookVersion => e - # Lets not break because someone passes a weird string like 'default' :) - Chef::Log.debug(e) - Chef::Log.debug "InvalidCookbookVersion exceptions are common and expected here: the generic constraint matcher attempted to match something which is not a constraint. Moving on to next version or constraint" - return nil - rescue Chef::Exceptions::InvalidPlatformVersion => e - Chef::Log.debug "Caught InvalidPlatformVersion, this means that Chef::Version::Platform does not know how to turn #{node_version} into an x.y.z format" - Chef::Log.debug(e) + end + return @values[platform][version] if key_matches.include?(version) + case key_matches.length + when 0 return nil + when 1 + return @values[platform][key_matches.first] + else + raise "Multiple matches detected for #{platform} with values #{@values}. The matches are: #{key_matches}" end + rescue Chef::Exceptions::InvalidCookbookVersion => e + # Lets not break because someone passes a weird string like 'default' :) + Chef::Log.debug(e) + Chef::Log.debug "InvalidCookbookVersion exceptions are common and expected here: the generic constraint matcher attempted to match something which is not a constraint. Moving on to next version or constraint" + return nil + rescue Chef::Exceptions::InvalidPlatformVersion => e + Chef::Log.debug "Caught InvalidPlatformVersion, this means that Chef::Version::Platform does not know how to turn #{node_version} into an x.y.z format" + Chef::Log.debug(e) + return nil end def set(platforms, value) diff --git a/lib/chef/dsl/reboot_pending.rb b/lib/chef/dsl/reboot_pending.rb index e8982d290e..fdd0f5a62b 100644 --- a/lib/chef/dsl/reboot_pending.rb +++ b/lib/chef/dsl/reboot_pending.rb @@ -30,7 +30,7 @@ class Chef # Note that we will silently miss any other platform-specific reboot notices besides Windows+Ubuntu. def reboot_pending? # don't break when used as a mixin in contexts without #node (e.g. specs). - if self.respond_to?(:node, true) && node.run_context.reboot_requested? + if respond_to?(:node, true) && node.run_context.reboot_requested? true elsif platform?("windows") # PendingFileRenameOperations contains pairs (REG_MULTI_SZ) of filenames that cannot be updated diff --git a/lib/chef/dsl/resources.rb b/lib/chef/dsl/resources.rb index 0d654316d8..1401e3ed53 100644 --- a/lib/chef/dsl/resources.rb +++ b/lib/chef/dsl/resources.rb @@ -33,19 +33,17 @@ class Chef include Chef::DSL::ChefProvisioning def self.add_resource_dsl(dsl_name) - begin - module_eval(<<-EOM, __FILE__, __LINE__ + 1) + module_eval(<<-EOM, __FILE__, __LINE__ + 1) def #{dsl_name}(*args, &block) Chef.deprecated(:internal_api, "Cannot create resource #{dsl_name} with more than one argument. All arguments except the name (\#{args[0].inspect}) will be ignored. This will cause an error in Chef 13. Arguments: \#{args}") if args.size > 1 declare_resource(#{dsl_name.inspect}, args[0], caller[0], &block) end EOM - rescue SyntaxError - # Handle the case where dsl_name has spaces, etc. - define_method(dsl_name.to_sym) do |*args, &block| - Chef.deprecated(:internal_api, "Cannot create resource #{dsl_name} with more than one argument. All arguments except the name (#{args[0].inspect}) will be ignored. This will cause an error in Chef 13. Arguments: #{args}") if args.size > 1 - declare_resource(dsl_name, args[0], caller[0], &block) - end + rescue SyntaxError + # Handle the case where dsl_name has spaces, etc. + define_method(dsl_name.to_sym) do |*args, &block| + Chef.deprecated(:internal_api, "Cannot create resource #{dsl_name} with more than one argument. All arguments except the name (#{args[0].inspect}) will be ignored. This will cause an error in Chef 13. Arguments: #{args}") if args.size > 1 + declare_resource(dsl_name, args[0], caller[0], &block) end end diff --git a/lib/chef/encrypted_data_bag_item.rb b/lib/chef/encrypted_data_bag_item.rb index d30c7945e9..c7c6145f61 100644 --- a/lib/chef/encrypted_data_bag_item.rb +++ b/lib/chef/encrypted_data_bag_item.rb @@ -121,8 +121,8 @@ class Chef::EncryptedDataBagItem # def self.load(data_bag, name, secret = nil) raw_hash = Chef::DataBagItem.load(data_bag, name) - secret ||= self.load_secret - self.new(raw_hash, secret) + secret ||= load_secret + new(raw_hash, secret) end def self.load_secret(path = nil) diff --git a/lib/chef/environment.rb b/lib/chef/environment.rb index eb335b0237..545a2e51eb 100644 --- a/lib/chef/environment.rb +++ b/lib/chef/environment.rb @@ -247,7 +247,7 @@ class Chef if Chef::Config[:solo_legacy_mode] load_from_file(name) else - self.from_hash(chef_server_rest.get("environments/#{name}")) + from_hash(chef_server_rest.get("environments/#{name}")) end end @@ -309,17 +309,15 @@ class Chef end def self.validate_cookbook_version(version) - begin - if Chef::Config[:solo_legacy_mode] - raise Chef::Exceptions::IllegalVersionConstraint, - "Environment cookbook version constraints not allowed in chef-solo" - else - Chef::VersionConstraint.new version - true - end - rescue ArgumentError - false + if Chef::Config[:solo_legacy_mode] + raise Chef::Exceptions::IllegalVersionConstraint, + "Environment cookbook version constraints not allowed in chef-solo" + else + Chef::VersionConstraint.new version + true end + rescue ArgumentError + false end end diff --git a/lib/chef/event_loggers/windows_eventlog.rb b/lib/chef/event_loggers/windows_eventlog.rb index f8c3d346c5..1ff87945e7 100644 --- a/lib/chef/event_loggers/windows_eventlog.rb +++ b/lib/chef/event_loggers/windows_eventlog.rb @@ -38,7 +38,7 @@ class Chef SOURCE = "Chef" def self.available? - return Chef::Platform.windows? + Chef::Platform.windows? end def initialize diff --git a/lib/chef/exceptions.rb b/lib/chef/exceptions.rb index 864268a85e..ae62f42b09 100644 --- a/lib/chef/exceptions.rb +++ b/lib/chef/exceptions.rb @@ -315,7 +315,7 @@ class Chef def raise! unless empty? - raise self.for_raise + raise for_raise end end diff --git a/lib/chef/file_access_control/unix.rb b/lib/chef/file_access_control/unix.rb index 0dfbff8422..66f724ddd8 100644 --- a/lib/chef/file_access_control/unix.rb +++ b/lib/chef/file_access_control/unix.rb @@ -80,19 +80,19 @@ class Chef if target_uid.nil? # the user has not specified a permission on the new resource, so we never manage it with FAC Chef::Log.debug("Found target_uid == nil, so no owner was specified on resource, not managing owner") - return false + false elsif current_uid.nil? # the user has specified a permission, and we are creating a file, so always enforce permissions Chef::Log.debug("Found current_uid == nil, so we are creating a new file, updating owner") - return true + true elsif target_uid != current_uid # the user has specified a permission, and it does not match the file, so fix the permission Chef::Log.debug("Found target_uid != current_uid, updating owner") - return true + true else Chef::Log.debug("Found target_uid == current_uid, not updating owner") # the user has specified a permission, but it matches the file, so behave idempotently - return false + false end end @@ -139,19 +139,19 @@ class Chef if target_gid.nil? # the user has not specified a permission on the new resource, so we never manage it with FAC Chef::Log.debug("Found target_gid == nil, so no group was specified on resource, not managing group") - return false + false elsif current_gid.nil? # the user has specified a permission, and we are creating a file, so always enforce permissions Chef::Log.debug("Found current_gid == nil, so we are creating a new file, updating group") - return true + true elsif target_gid != current_gid # the user has specified a permission, and it does not match the file, so fix the permission Chef::Log.debug("Found target_gid != current_gid, updating group") - return true + true else Chef::Log.debug("Found target_gid == current_gid, not updating group") # the user has specified a permission, but it matches the file, so behave idempotently - return false + false end end @@ -188,21 +188,21 @@ class Chef if target_mode.nil? # the user has not specified a permission on the new resource, so we never manage it with FAC Chef::Log.debug("Found target_mode == nil, so no mode was specified on resource, not managing mode") - return false + false elsif current_mode.nil? # the user has specified a permission, and we are creating a file, so always enforce permissions Chef::Log.debug("Found current_mode == nil, so we are creating a new file, updating mode") - return true + true elsif target_mode != current_mode # the user has specified a permission, and it does not match the file, so fix the permission Chef::Log.debug("Found target_mode != current_mode, updating mode") - return true + true elsif suid_bit_set? && (should_update_group? || should_update_owner?) - return true + true else Chef::Log.debug("Found target_mode == current_mode, not updating mode") # the user has specified a permission, but it matches the file, so behave idempotently - return false + false end end @@ -283,7 +283,7 @@ class Chef end def suid_bit_set? - return target_mode & 04000 > 0 + target_mode & 04000 > 0 end end end diff --git a/lib/chef/file_access_control/windows.rb b/lib/chef/file_access_control/windows.rb index 6f1ac5f581..2c6b69c257 100644 --- a/lib/chef/file_access_control/windows.rb +++ b/lib/chef/file_access_control/windows.rb @@ -100,7 +100,7 @@ class Chef new_target_acl << children_ace end end - return actual_acl == new_target_acl + actual_acl == new_target_acl end def existing_descriptor diff --git a/lib/chef/formatters/error_inspectors/api_error_formatting.rb b/lib/chef/formatters/error_inspectors/api_error_formatting.rb index 2415d0f4bb..53549ee77c 100644 --- a/lib/chef/formatters/error_inspectors/api_error_formatting.rb +++ b/lib/chef/formatters/error_inspectors/api_error_formatting.rb @@ -172,11 +172,10 @@ E # .../lib/ruby/1.9.1/net/http.rb:2709:in `read_body' # .../lib/ruby/1.9.1/net/http.rb:2736:in `body' # .../lib/chef/formatters/error_inspectors/api_error_formatting.rb:91:in `rescue in format_rest_error' - begin - exception.response.body - rescue Exception - "Cannot fetch the contents of the response." - end + + exception.response.body + rescue Exception + "Cannot fetch the contents of the response." end end diff --git a/lib/chef/formatters/error_mapper.rb b/lib/chef/formatters/error_mapper.rb index 4786a20465..eb89662308 100644 --- a/lib/chef/formatters/error_mapper.rb +++ b/lib/chef/formatters/error_mapper.rb @@ -30,7 +30,7 @@ class Chef headline = "Chef encountered an error attempting to create the client \"#{node_name}\"" description = ErrorDescription.new(headline) error_inspector.add_explanation(description) - return description + description end def self.node_load_failed(node_name, exception, config) @@ -38,7 +38,7 @@ class Chef headline = "Chef encountered an error attempting to load the node data for \"#{node_name}\"" description = ErrorDescription.new(headline) error_inspector.add_explanation(description) - return description + description end def self.run_list_expand_failed(node, exception) @@ -46,7 +46,7 @@ class Chef headline = "Error expanding the run_list:" description = ErrorDescription.new(headline) error_inspector.add_explanation(description) - return description + description end def self.cookbook_resolution_failed(expanded_run_list, exception) @@ -54,7 +54,7 @@ class Chef headline = "Error Resolving Cookbooks for Run List:" description = ErrorDescription.new(headline) error_inspector.add_explanation(description) - return description + description end def self.cookbook_sync_failed(cookbooks, exception) @@ -62,7 +62,7 @@ class Chef headline = "Error Syncing Cookbooks:" description = ErrorDescription.new(headline) error_inspector.add_explanation(description) - return description + description end def self.resource_failed(resource, action, exception) @@ -70,7 +70,7 @@ class Chef headline = "Error executing action `#{action}` on resource '#{resource}'" description = ErrorDescription.new(headline) error_inspector.add_explanation(description) - return description + description end def self.file_load_failed(path, exception) diff --git a/lib/chef/http/validate_content_length.rb b/lib/chef/http/validate_content_length.rb index c1073867d3..3a8d3bda2b 100644 --- a/lib/chef/http/validate_content_length.rb +++ b/lib/chef/http/validate_content_length.rb @@ -50,7 +50,7 @@ class Chef def handle_response(http_response, rest_request, return_value) validate(http_response, http_response.body.bytesize) if http_response && http_response.body - return [http_response, rest_request, return_value] + [http_response, rest_request, return_value] end def handle_stream_complete(http_response, rest_request, return_value) @@ -63,7 +63,7 @@ class Chef # Make sure the counter is reset since this object might get used # again. See CHEF-5100 @content_length_counter = nil - return [http_response, rest_request, return_value] + [http_response, rest_request, return_value] end def stream_response_handler(response) diff --git a/lib/chef/json_compat.rb b/lib/chef/json_compat.rb index f8f05a0074..c8f5496345 100644 --- a/lib/chef/json_compat.rb +++ b/lib/chef/json_compat.rb @@ -47,11 +47,9 @@ class Chef # API to use to avoid create_addtions def parse(source, opts = {}) - begin - FFI_Yajl::Parser.parse(source, opts) - rescue FFI_Yajl::ParseError => e - raise Chef::Exceptions::JSON::ParseError, e.message - end + FFI_Yajl::Parser.parse(source, opts) + rescue FFI_Yajl::ParseError => e + raise Chef::Exceptions::JSON::ParseError, e.message end # Just call the JSON gem's parse method with a modified :max_nesting field @@ -102,11 +100,9 @@ class Chef end def to_json(obj, opts = nil) - begin - FFI_Yajl::Encoder.encode(obj, opts) - rescue FFI_Yajl::EncodeError => e - raise Chef::Exceptions::JSON::EncodeError, e.message - end + FFI_Yajl::Encoder.encode(obj, opts) + rescue FFI_Yajl::EncodeError => e + raise Chef::Exceptions::JSON::EncodeError, e.message end def to_json_pretty(obj, opts = nil) diff --git a/lib/chef/key.rb b/lib/chef/key.rb index d19ff433a3..c68fe1039c 100644 --- a/lib/chef/key.rb +++ b/lib/chef/key.rb @@ -155,7 +155,7 @@ class Chef result = chef_rest.post("#{api_base}/#{@actor}/keys", payload) # append the private key to the current key if the server returned one, # since the POST endpoint just returns uri and private_key if needed. - new_key = self.to_hash + new_key = to_hash new_key["private_key"] = result["private_key"] if result["private_key"] Chef::Key.from_hash(new_key) end @@ -178,9 +178,9 @@ class Chef new_key = chef_rest.put("#{api_base}/#{@actor}/keys/#{put_name}", to_hash) # if the server returned a public_key, remove the create_key field, as we now have a key if new_key["public_key"] - self.delete_create_key + delete_create_key end - Chef::Key.from_hash(self.to_hash.merge(new_key)) + Chef::Key.from_hash(to_hash.merge(new_key)) end def save @@ -229,12 +229,12 @@ class Chef def list_by_user(actor, inflate = false) keys = Chef::ServerAPI.new(Chef::Config[:chef_server_root]).get("users/#{actor}/keys") - self.list(keys, actor, :load_by_user, inflate) + list(keys, actor, :load_by_user, inflate) end def list_by_client(actor, inflate = false) keys = Chef::ServerAPI.new(Chef::Config[:chef_server_url]).get("clients/#{actor}/keys") - self.list(keys, actor, :load_by_client, inflate) + list(keys, actor, :load_by_client, inflate) end def load_by_user(actor, key_name) diff --git a/lib/chef/knife.rb b/lib/chef/knife.rb index f8d56a43c2..47ce85b9e3 100644 --- a/lib/chef/knife.rb +++ b/lib/chef/knife.rb @@ -430,11 +430,11 @@ class Chef end def show_usage - stdout.puts("USAGE: " + self.opt_parser.to_s) + stdout.puts("USAGE: " + opt_parser.to_s) end def run_with_pretty_exceptions(raise_exception = false) - unless self.respond_to?(:run) + unless respond_to?(:run) ui.error "You need to add a #run method to your knife command before you can use it" end enforce_path_sanity @@ -553,7 +553,7 @@ class Chef pretty_name ||= output - self.msg("Created #{pretty_name}") + msg("Created #{pretty_name}") output(output) if config[:print_after] end @@ -572,7 +572,7 @@ class Chef output(format_for_display(object)) if config[:print_after] obj_name = delete_name ? "#{delete_name}[#{name}]" : object - self.msg("Deleted #{obj_name}") + msg("Deleted #{obj_name}") end # helper method for testing if a field exists diff --git a/lib/chef/knife/cookbook_site_install.rb b/lib/chef/knife/cookbook_site_install.rb index 5b2d7d3517..72fb426554 100644 --- a/lib/chef/knife/cookbook_site_install.rb +++ b/lib/chef/knife/cookbook_site_install.rb @@ -161,9 +161,9 @@ class Chef def convert_path(upstream_file) # converts a Windows path (C:\foo) to a mingw path (/c/foo) if ENV["MSYSTEM"] == "MINGW32" - return upstream_file.sub(/^([[:alpha:]]):/, '/\1') + upstream_file.sub(/^([[:alpha:]]):/, '/\1') else - return Shellwords.escape upstream_file + Shellwords.escape upstream_file end end diff --git a/lib/chef/knife/core/cookbook_scm_repo.rb b/lib/chef/knife/core/cookbook_scm_repo.rb index 2c678e07b9..38f432e5bb 100644 --- a/lib/chef/knife/core/cookbook_scm_repo.rb +++ b/lib/chef/knife/core/cookbook_scm_repo.rb @@ -131,9 +131,9 @@ class Chef def git_repo?(directory) if File.directory?(File.join(directory, ".git")) - return true + true elsif File.dirname(directory) == directory - return false + false else git_repo?(File.dirname(directory)) end diff --git a/lib/chef/knife/core/gem_glob_loader.rb b/lib/chef/knife/core/gem_glob_loader.rb index 34c5c53d75..c4523d69ad 100644 --- a/lib/chef/knife/core/gem_glob_loader.rb +++ b/lib/chef/knife/core/gem_glob_loader.rb @@ -98,7 +98,7 @@ class Chef files.concat gem_files files.uniq! if check_load_path - return files + files end def latest_gem_specs diff --git a/lib/chef/knife/core/status_presenter.rb b/lib/chef/knife/core/status_presenter.rb index 68c1acf4f1..df6c2fe942 100644 --- a/lib/chef/knife/core/status_presenter.rb +++ b/lib/chef/knife/core/status_presenter.rb @@ -148,7 +148,7 @@ class Chef difference = difference % 3600 minutes = (difference / 60).to_i seconds = (difference % 60) - return [hours, minutes, seconds] + [hours, minutes, seconds] end end diff --git a/lib/chef/knife/core/ui.rb b/lib/chef/knife/core/ui.rb index e9a9a236c2..1fc6d3d0e2 100644 --- a/lib/chef/knife/core/ui.rb +++ b/lib/chef/knife/core/ui.rb @@ -65,22 +65,18 @@ class Chef # Prints a message to stdout. Aliased as +info+ for compatibility with # the logger API. def msg(message) - begin - stdout.puts message - rescue Errno::EPIPE => e - raise e if @config[:verbosity] >= 2 - exit 0 - end + stdout.puts message + rescue Errno::EPIPE => e + raise e if @config[:verbosity] >= 2 + exit 0 end # Prints a msg to stderr. Used for info, warn, error, and fatal. def log(message) - begin - stderr.puts message - rescue Errno::EPIPE => e - raise e if @config[:verbosity] >= 2 - exit 0 - end + stderr.puts message + rescue Errno::EPIPE => e + raise e if @config[:verbosity] >= 2 + exit 0 end alias :info :log @@ -155,12 +151,10 @@ class Chef end def pretty_print(data) - begin - stdout.puts data - rescue Errno::EPIPE => e - raise e if @config[:verbosity] >= 2 - exit 0 - end + stdout.puts data + rescue Errno::EPIPE => e + raise e if @config[:verbosity] >= 2 + exit 0 end # Hash -> Hash @@ -215,9 +209,9 @@ class Chef output_parsed_again = Chef::JSONCompat.parse(Chef::JSONCompat.to_json(output)) if object_parsed_again != output_parsed_again output.save - self.msg("Saved #{output}") + msg("Saved #{output}") else - self.msg("Object unchanged, not saving") + msg("Object unchanged, not saving") end output(format_for_display(object)) if config[:print_after] end @@ -247,19 +241,19 @@ class Chef when "Y", "y" true when "N", "n" - self.msg("You said no, so I'm done here.") + msg("You said no, so I'm done here.") false when "" unless default_choice.nil? default_choice else - self.msg("I have no idea what to do with '#{answer}'") - self.msg("Just say Y or N, please.") + msg("I have no idea what to do with '#{answer}'") + msg("Just say Y or N, please.") confirm_without_exit(question, append_instructions, default_choice) end else - self.msg("I have no idea what to do with '#{answer}'") - self.msg("Just say Y or N, please.") + msg("I have no idea what to do with '#{answer}'") + msg("Just say Y or N, please.") confirm_without_exit(question, append_instructions, default_choice) end end diff --git a/lib/chef/knife/data_bag_secret_options.rb b/lib/chef/knife/data_bag_secret_options.rb index b426cd442c..4246c9edfa 100644 --- a/lib/chef/knife/data_bag_secret_options.rb +++ b/lib/chef/knife/data_bag_secret_options.rb @@ -114,7 +114,7 @@ class Chef # Certain situations (show and bootstrap) don't need a --encrypt flag to use the config file secret return true end - return false + false end def has_cl_secret? diff --git a/lib/chef/knife/deps.rb b/lib/chef/knife/deps.rb index e773f65106..b5c6d6379a 100644 --- a/lib/chef/knife/deps.rb +++ b/lib/chef/knife/deps.rb @@ -72,49 +72,47 @@ class Chef end def get_dependencies(entry) - begin - if entry.parent && entry.parent.path == "/cookbooks" - return entry.chef_object.metadata.dependencies.keys.map { |cookbook| "/cookbooks/#{cookbook}" } + if entry.parent && entry.parent.path == "/cookbooks" + return entry.chef_object.metadata.dependencies.keys.map { |cookbook| "/cookbooks/#{cookbook}" } - elsif entry.parent && entry.parent.path == "/nodes" - node = Chef::JSONCompat.parse(entry.read) - result = [] - if node["chef_environment"] && node["chef_environment"] != "_default" - result << "/environments/#{node['chef_environment']}.json" - end - if node["run_list"] - result += dependencies_from_runlist(node["run_list"]) - end - result + elsif entry.parent && entry.parent.path == "/nodes" + node = Chef::JSONCompat.parse(entry.read) + result = [] + if node["chef_environment"] && node["chef_environment"] != "_default" + result << "/environments/#{node['chef_environment']}.json" + end + if node["run_list"] + result += dependencies_from_runlist(node["run_list"]) + end + result - elsif entry.parent && entry.parent.path == "/roles" - role = Chef::JSONCompat.parse(entry.read) - result = [] - if role["run_list"] - dependencies_from_runlist(role["run_list"]).each do |dependency| - result << dependency if !result.include?(dependency) - end + elsif entry.parent && entry.parent.path == "/roles" + role = Chef::JSONCompat.parse(entry.read) + result = [] + if role["run_list"] + dependencies_from_runlist(role["run_list"]).each do |dependency| + result << dependency if !result.include?(dependency) end - if role["env_run_lists"] - role["env_run_lists"].each_pair do |env, run_list| - dependencies_from_runlist(run_list).each do |dependency| - result << dependency if !result.include?(dependency) - end + end + if role["env_run_lists"] + role["env_run_lists"].each_pair do |env, run_list| + dependencies_from_runlist(run_list).each do |dependency| + result << dependency if !result.include?(dependency) end end - result + end + result - elsif !entry.exists? - raise Chef::ChefFS::FileSystem::NotFoundError.new(entry) + elsif !entry.exists? + raise Chef::ChefFS::FileSystem::NotFoundError.new(entry) - else - [] - end - rescue Chef::ChefFS::FileSystem::NotFoundError => e - ui.error "#{format_path(e.entry)}: No such file or directory" - self.exit_code = 2 + else [] end + rescue Chef::ChefFS::FileSystem::NotFoundError => e + ui.error "#{format_path(e.entry)}: No such file or directory" + self.exit_code = 2 + [] end def dependencies_from_runlist(run_list) diff --git a/lib/chef/knife/help.rb b/lib/chef/knife/help.rb index e45b54eec8..075bf4b310 100644 --- a/lib/chef/knife/help.rb +++ b/lib/chef/knife/help.rb @@ -90,7 +90,7 @@ MOAR_HELP def find_manpage_path(topic) if ::File.exists?(::File.expand_path("../distro/common/man/man1/#{topic}.1", CHEF_ROOT)) # If we've provided the man page in the gem, give that - return ::File.expand_path("../distro/common/man/man1/#{topic}.1", CHEF_ROOT) + ::File.expand_path("../distro/common/man/man1/#{topic}.1", CHEF_ROOT) else # Otherwise, we'll just be using MANPATH topic diff --git a/lib/chef/knife/list.rb b/lib/chef/knife/list.rb index fcfde0eb45..6f314eb86d 100644 --- a/lib/chef/knife/list.rb +++ b/lib/chef/knife/list.rb @@ -97,7 +97,7 @@ class Chef print_results(children.map { |result| maybe_add_slash(result.display_name, result.dir?) }.sort, "") end - exit self.exit_code if self.exit_code + exit exit_code if exit_code end def add_dir_result(result) diff --git a/lib/chef/knife/search.rb b/lib/chef/knife/search.rb index d102c1e955..046d1c7c52 100644 --- a/lib/chef/knife/search.rb +++ b/lib/chef/knife/search.rb @@ -183,7 +183,7 @@ class Chef return_id, attr_path = f.split("=") final_filter[return_id.to_sym] = attr_path.split(".") end - return final_filter + final_filter end def create_result_filter_from_attributes(filter_array) @@ -193,7 +193,7 @@ class Chef end # adding magic filter so we can actually pull the name as before final_filter["__display_name"] = [ "name" ] - return final_filter + final_filter end end diff --git a/lib/chef/knife/ssl_check.rb b/lib/chef/knife/ssl_check.rb index 82ccb76ad7..b3374e0999 100644 --- a/lib/chef/knife/ssl_check.rb +++ b/lib/chef/knife/ssl_check.rb @@ -276,7 +276,7 @@ ADVICE rescue OpenSSL::X509::StoreError => e return e.message end - return nil + nil end end end diff --git a/lib/chef/knife/user_delete.rb b/lib/chef/knife/user_delete.rb index ce4575ceab..cc92b4b36c 100644 --- a/lib/chef/knife/user_delete.rb +++ b/lib/chef/knife/user_delete.rb @@ -60,7 +60,7 @@ EOF end output(format_for_display(object)) if config[:print_after] - self.msg("Deleted #{user_name}") + msg("Deleted #{user_name}") end def run diff --git a/lib/chef/mash.rb b/lib/chef/mash.rb index 3858ff09dd..4e4f06634d 100644 --- a/lib/chef/mash.rb +++ b/lib/chef/mash.rb @@ -149,7 +149,7 @@ class Mash < Hash # # @return [Mash] A new mash with the hash values merged in. def merge(hash) - self.dup.update(hash) + dup.update(hash) end # @param key<Object> diff --git a/lib/chef/mixin/command.rb b/lib/chef/mixin/command.rb index 269f1d1194..b1fa7ebd89 100644 --- a/lib/chef/mixin/command.rb +++ b/lib/chef/mixin/command.rb @@ -103,7 +103,7 @@ class Chef command_output << "STDERR: #{stderr}" handle_command_failures(status, command_output, args) - return status, stdout, stderr + [status, stdout, stderr] end def output_of_command(command, args) @@ -141,7 +141,7 @@ class Chef Chef::Log.debug("Ran #{command} returned #{status.exitstatus}") end - return status, stdout_string, stderr_string + [status, stdout_string, stderr_string] end def handle_command_failures(status, command_output, opts = {}) diff --git a/lib/chef/mixin/create_path.rb b/lib/chef/mixin/create_path.rb index 233f7b9521..21a945d2ae 100644 --- a/lib/chef/mixin/create_path.rb +++ b/lib/chef/mixin/create_path.rb @@ -53,7 +53,6 @@ class Chef private def create_dir(path) - begin # When doing multithreaded downloads into the file cache, the following # interleaving raises an error here: # @@ -62,10 +61,9 @@ class Chef # File.directory?(create_path) <- false # Dir.mkdir(create_path) # Dir.mkdir(create_path) <- raises Errno::EEXIST - Chef::Log.debug("Creating directory #{path}") - Dir.mkdir(path) - rescue Errno::EEXIST - end + Chef::Log.debug("Creating directory #{path}") + Dir.mkdir(path) + rescue Errno::EEXIST end end diff --git a/lib/chef/mixin/from_file.rb b/lib/chef/mixin/from_file.rb index a6692d798d..4afea5d9f4 100644 --- a/lib/chef/mixin/from_file.rb +++ b/lib/chef/mixin/from_file.rb @@ -27,7 +27,7 @@ class Chef # Raises an IOError if the file cannot be found, or is not readable. def from_file(filename) if File.exists?(filename) && File.readable?(filename) - self.instance_eval(IO.read(filename), filename, 1) + instance_eval(IO.read(filename), filename, 1) else raise IOError, "Cannot open or read #{filename}!" end @@ -39,7 +39,7 @@ class Chef # Raises an IOError if the file cannot be found, or is not readable. def class_from_file(filename) if File.exists?(filename) && File.readable?(filename) - self.class_eval(IO.read(filename), filename, 1) + class_eval(IO.read(filename), filename, 1) else raise IOError, "Cannot open or read #{filename}!" end diff --git a/lib/chef/mixin/notifying_block.rb b/lib/chef/mixin/notifying_block.rb index 2d6a82f493..d3f235f968 100644 --- a/lib/chef/mixin/notifying_block.rb +++ b/lib/chef/mixin/notifying_block.rb @@ -20,15 +20,13 @@ class Chef module NotifyingBlock def notifying_block(&block) - begin - subcontext = subcontext_block(&block) - Chef::Runner.new(subcontext).converge - ensure - # recipes don't have a new_resource - if respond_to?(:new_resource) - if subcontext && subcontext.resource_collection.any?(&:updated?) - new_resource.updated_by_last_action(true) - end + subcontext = subcontext_block(&block) + Chef::Runner.new(subcontext).converge + ensure + # recipes don't have a new_resource + if respond_to?(:new_resource) + if subcontext && subcontext.resource_collection.any?(&:updated?) + new_resource.updated_by_last_action(true) end end end diff --git a/lib/chef/mixin/params_validate.rb b/lib/chef/mixin/params_validate.rb index b16df41c8e..0db058c3ab 100644 --- a/lib/chef/mixin/params_validate.rb +++ b/lib/chef/mixin/params_validate.rb @@ -102,8 +102,8 @@ class Chef when Hash validation.each do |check, carg| check_method = "_pv_#{check}" - if self.respond_to?(check_method, true) - self.send(check_method, opts, key, carg) + if respond_to?(check_method, true) + send(check_method, opts, key, carg) else raise ArgumentError, "Validation map has unknown check: #{check}" end @@ -333,7 +333,7 @@ class Chef if is_name_property if opts[key].nil? raise CannotValidateStaticallyError, "name_property cannot be evaluated without a resource." if self == Chef::Mixin::ParamsValidate - opts[key] = self.instance_variable_get(:"@name") + opts[key] = instance_variable_get(:"@name") end end end diff --git a/lib/chef/mixin/securable.rb b/lib/chef/mixin/securable.rb index 55b4e0a6d1..85c9dea1d4 100644 --- a/lib/chef/mixin/securable.rb +++ b/lib/chef/mixin/securable.rb @@ -110,7 +110,7 @@ class Chef # equivalent to something like: # def rights(permissions=nil, principals=nil, args_hash=nil) define_method(name) do |permissions = nil, principals = nil, args_hash = nil| - rights = self.instance_variable_get("@#{name}".to_sym) + rights = instance_variable_get("@#{name}".to_sym) unless permissions.nil? input = { :permissions => permissions, diff --git a/lib/chef/mixin/shell_out.rb b/lib/chef/mixin/shell_out.rb index 92518a1e11..18bd067989 100644 --- a/lib/chef/mixin/shell_out.rb +++ b/lib/chef/mixin/shell_out.rb @@ -148,7 +148,7 @@ class Chef my_options[new_option] = value end - return my_command_args + my_command_args end # Helper for sublcasses to convert an array of string args into a string. It diff --git a/lib/chef/mixin/unformatter.rb b/lib/chef/mixin/unformatter.rb index 7dad56b270..5663749e58 100644 --- a/lib/chef/mixin/unformatter.rb +++ b/lib/chef/mixin/unformatter.rb @@ -22,9 +22,9 @@ class Chef def write(message) data = message.match(/(\[.+?\] )?([\w]+):(.*)$/) - self.send(data[2].downcase.chomp.to_sym, data[3].strip) + send(data[2].downcase.chomp.to_sym, data[3].strip) rescue NoMethodError - self.send(:info, message) + send(:info, message) end end diff --git a/lib/chef/mixin/uris.rb b/lib/chef/mixin/uris.rb index 7dc04d662b..ea55eefd8f 100644 --- a/lib/chef/mixin/uris.rb +++ b/lib/chef/mixin/uris.rb @@ -31,12 +31,10 @@ class Chef end def as_uri(source) - begin - URI.parse(source) - rescue URI::InvalidURIError - Chef::Log.warn("#{source} was an invalid URI. Trying to escape invalid characters") - URI.parse(Addressable::URI.encode(source)) - end + URI.parse(source) + rescue URI::InvalidURIError + Chef::Log.warn("#{source} was an invalid URI. Trying to escape invalid characters") + URI.parse(Addressable::URI.encode(source)) end end diff --git a/lib/chef/mixin/windows_architecture_helper.rb b/lib/chef/mixin/windows_architecture_helper.rb index 49252af484..67c34a85a1 100644 --- a/lib/chef/mixin/windows_architecture_helper.rb +++ b/lib/chef/mixin/windows_architecture_helper.rb @@ -74,11 +74,11 @@ class Chef def node_supports_windows_architecture?(node, desired_architecture) assert_valid_windows_architecture!(desired_architecture) - return ( node_windows_architecture(node) == :x86_64 ) || ( desired_architecture == :i386 ) + ( node_windows_architecture(node) == :x86_64 ) || ( desired_architecture == :i386 ) end def valid_windows_architecture?(architecture) - return ( architecture == :x86_64 ) || ( architecture == :i386 ) + ( architecture == :x86_64 ) || ( architecture == :i386 ) end def assert_valid_windows_architecture!(architecture) diff --git a/lib/chef/mixin/xml_escape.rb b/lib/chef/mixin/xml_escape.rb index f9a41b9fd0..243bb7f044 100644 --- a/lib/chef/mixin/xml_escape.rb +++ b/lib/chef/mixin/xml_escape.rb @@ -103,11 +103,9 @@ class Chef (0xE000..0xFFFD), (0x10000..0x10FFFF)] def xml_escape(unescaped_str) - begin - unescaped_str.unpack("U*").map { |char| xml_escape_char!(char) }.join - rescue - unescaped_str.unpack("C*").map { |char| xml_escape_char!(char) }.join - end + unescaped_str.unpack("U*").map { |char| xml_escape_char!(char) }.join + rescue + unescaped_str.unpack("C*").map { |char| xml_escape_char!(char) }.join end private diff --git a/lib/chef/monkey_patches/webrick-utils.rb b/lib/chef/monkey_patches/webrick-utils.rb index ccca5825e2..7f525f122f 100644 --- a/lib/chef/monkey_patches/webrick-utils.rb +++ b/lib/chef/monkey_patches/webrick-utils.rb @@ -44,7 +44,7 @@ module WEBrick end end raise last_error if sockets.empty? - return sockets + sockets end module_function :create_listeners end diff --git a/lib/chef/node.rb b/lib/chef/node.rb index 087a173880..808fb1dc6e 100644 --- a/lib/chef/node.rb +++ b/lib/chef/node.rb @@ -333,8 +333,8 @@ class Chef platform, version = Chef::Platform.find_platform_and_version(self) Chef::Log.debug("Platform is #{platform} version #{version}") - self.automatic[:platform] = platform - self.automatic[:platform_version] = version + automatic[:platform] = platform + automatic[:platform_version] = version end # Consumes the combined run_list and other attributes in +attrs+ @@ -343,7 +343,7 @@ class Chef normal_attrs_to_merge = consume_chef_environment(normal_attrs_to_merge) Chef::Log.debug("Applying attributes from json file") self.normal_attrs = Chef::Mixin::DeepMerge.merge(normal_attrs, normal_attrs_to_merge) - self.tags # make sure they're defined + tags # make sure they're defined end # Lazy initializer for tags attribute @@ -394,8 +394,8 @@ class Chef # Clear defaults and overrides, so that any deleted attributes # between runs are still gone. def reset_defaults_and_overrides - self.default.clear - self.override.clear + default.clear + override.clear end # Expands the node's run list and sets the default and override @@ -414,7 +414,7 @@ class Chef expansion = run_list.expand(chef_environment, data_source) raise Chef::Exceptions::MissingRole, expansion if expansion.errors? - self.tags # make sure they're defined + tags # make sure they're defined automatic_attrs[:recipes] = expansion.recipes.with_duplicate_names automatic_attrs[:expanded_run_list] = expansion.recipes.with_fully_qualified_names_and_version_constraints @@ -632,14 +632,14 @@ class Chef def ==(other) if other.kind_of?(self.class) - self.name == other.name + name == other.name else false end end def <=>(other) - self.name <=> other.name + name <=> other.name end private diff --git a/lib/chef/node/attribute.rb b/lib/chef/node/attribute.rb index 0ee720daf4..4febd47b44 100644 --- a/lib/chef/node/attribute.rb +++ b/lib/chef/node/attribute.rb @@ -454,19 +454,19 @@ class Chef end def write(level, *args, &block) - self.send(level).write(*args, &block) + send(level).write(*args, &block) end def write!(level, *args, &block) - self.send(level).write!(*args, &block) + send(level).write!(*args, &block) end def unlink(level, *path) - self.send(level).unlink(*path) + send(level).unlink(*path) end def unlink!(level, *path) - self.send(level).unlink!(*path) + send(level).unlink!(*path) end alias :attribute? :has_key? diff --git a/lib/chef/node/common_api.rb b/lib/chef/node/common_api.rb index c9786807e9..a703c1ef54 100644 --- a/lib/chef/node/common_api.rb +++ b/lib/chef/node/common_api.rb @@ -24,7 +24,7 @@ class Chef # method-style access to attributes def valid_container?(obj, key) - return obj.is_a?(Hash) || (obj.is_a?(Array) && key.is_a?(Integer)) + obj.is_a?(Hash) || (obj.is_a?(Array) && key.is_a?(Integer)) end private :valid_container? @@ -85,16 +85,14 @@ class Chef end end end - return true + true end # this is a safe non-autovivifying reader that returns nil if the attribute does not exist def read(*path) - begin - read!(*path) - rescue Chef::Exceptions::NoSuchAttribute - nil - end + read!(*path) + rescue Chef::Exceptions::NoSuchAttribute + nil end # non-autovivifying reader that throws an exception if the attribute does not exist diff --git a/lib/chef/org.rb b/lib/chef/org.rb index cf6f605370..bed5600920 100644 --- a/lib/chef/org.rb +++ b/lib/chef/org.rb @@ -73,15 +73,15 @@ class Chef end def create - payload = { :name => self.name, :full_name => self.full_name } + payload = { :name => name, :full_name => full_name } new_org = chef_rest.post("organizations", payload) - Chef::Org.from_hash(self.to_hash.merge(new_org)) + Chef::Org.from_hash(to_hash.merge(new_org)) end def update - payload = { :name => self.name, :full_name => self.full_name } + payload = { :name => name, :full_name => full_name } new_org = chef_rest.put("organizations/#{name}", payload) - Chef::Org.from_hash(self.to_hash.merge(new_org)) + Chef::Org.from_hash(to_hash.merge(new_org)) end def destroy @@ -89,14 +89,12 @@ class Chef end def save - begin - create - rescue Net::HTTPServerException => e - if e.response.code == "409" - update - else - raise e - end + create + rescue Net::HTTPServerException => e + if e.response.code == "409" + update + else + raise e end end diff --git a/lib/chef/platform/provider_mapping.rb b/lib/chef/platform/provider_mapping.rb index 7f7b022e8b..55e831c343 100644 --- a/lib/chef/platform/provider_mapping.rb +++ b/lib/chef/platform/provider_mapping.rb @@ -87,11 +87,11 @@ class Chef raise ArgumentError, "Cannot find a version for #{node}" unless version - return platform, version + [platform, version] end def provider_for_resource(resource, action = :nothing) - Chef.deprecated(:chef_platform_methods, "#{self.name}.provider_for_resource is deprecated") + Chef.deprecated(:chef_platform_methods, "#{name}.provider_for_resource is deprecated") node = resource.run_context && resource.run_context.node raise ArgumentError, "Cannot find the provider for a resource with no run context set" unless node provider = find_provider_for_node(node, resource).new(resource, resource.run_context) @@ -100,17 +100,17 @@ class Chef end def provider_for_node(node, resource_type) - raise NotImplementedError, "#{self.name} no longer supports #provider_for_node" + raise NotImplementedError, "#{name} no longer supports #provider_for_node" end def find_provider_for_node(node, resource_type) - Chef.deprecated(:chef_platform_methods, "#{self.name}.find_provider_for_node is deprecated") + Chef.deprecated(:chef_platform_methods, "#{name}.find_provider_for_node is deprecated") platform, version = find_platform_and_version(node) find_provider(platform, version, resource_type) end def set(args) - Chef.deprecated(:chef_platform_methods, "#{self.name}.set is deprecated") + Chef.deprecated(:chef_platform_methods, "#{name}.set is deprecated") validate( args, { @@ -176,7 +176,7 @@ class Chef end def find_provider(platform, version, resource_type) - Chef.deprecated(:chef_platform_methods, "#{self.name}.find_provider is deprecated") + Chef.deprecated(:chef_platform_methods, "#{name}.find_provider is deprecated") provider_klass = explicit_provider(platform, version, resource_type) || platform_provider(platform, version, resource_type) || resource_matching_provider(platform, version, resource_type) diff --git a/lib/chef/platform/query_helpers.rb b/lib/chef/platform/query_helpers.rb index 7d522072a3..624dc05e9c 100644 --- a/lib/chef/platform/query_helpers.rb +++ b/lib/chef/platform/query_helpers.rb @@ -55,7 +55,7 @@ class Chef # If accessing the registry key failed, then we're probably not on # nano. Fail through. end - return nano == 1 + nano == 1 end def supports_msi? diff --git a/lib/chef/provider/deploy/revision.rb b/lib/chef/provider/deploy/revision.rb index f61e439486..06138e4f05 100644 --- a/lib/chef/provider/deploy/revision.rb +++ b/lib/chef/provider/deploy/revision.rb @@ -91,11 +91,9 @@ class Chef end def load_cache - begin - Chef::JSONCompat.parse(Chef::FileCache.load("revision-deploys/#{new_resource.name}")) - rescue Chef::Exceptions::FileNotFound - sorted_releases_from_filesystem - end + Chef::JSONCompat.parse(Chef::FileCache.load("revision-deploys/#{new_resource.name}")) + rescue Chef::Exceptions::FileNotFound + sorted_releases_from_filesystem end def save_cache(cache) diff --git a/lib/chef/provider/env/windows.rb b/lib/chef/provider/env/windows.rb index a217590af5..e25cab31d2 100644 --- a/lib/chef/provider/env/windows.rb +++ b/lib/chef/provider/env/windows.rb @@ -54,7 +54,7 @@ class Chef def env_value(key_name) obj = env_obj(key_name) - return obj ? obj.variablevalue : ENV[key_name] + obj ? obj.variablevalue : ENV[key_name] end def env_obj(key_name) diff --git a/lib/chef/provider/file.rb b/lib/chef/provider/file.rb index f77986fa03..d87004d543 100644 --- a/lib/chef/provider/file.rb +++ b/lib/chef/provider/file.rb @@ -312,11 +312,9 @@ class Chef # like real_file? that follows (sane) symlinks def symlink_to_real_file?(path) - begin - real_file?(::File.realpath(path)) - rescue Errno::ELOOP, Errno::ENOENT - false - end + real_file?(::File.realpath(path)) + rescue Errno::ELOOP, Errno::ENOENT + false end # Similar to File.exist?, but also returns true in the case that the diff --git a/lib/chef/provider/mount/aix.rb b/lib/chef/provider/mount/aix.rb index 12f0d67e6b..73460e84a1 100644 --- a/lib/chef/provider/mount/aix.rb +++ b/lib/chef/provider/mount/aix.rb @@ -116,9 +116,9 @@ class Chef def remount_command if !(@new_resource.options.nil? || @new_resource.options.empty?) - return "mount -o remount,#{@new_resource.options.join(',')} #{@new_resource.device} #{@new_resource.mount_point}" + "mount -o remount,#{@new_resource.options.join(',')} #{@new_resource.device} #{@new_resource.mount_point}" else - return "mount -o remount #{@new_resource.device} #{@new_resource.mount_point}" + "mount -o remount #{@new_resource.device} #{@new_resource.mount_point}" end end diff --git a/lib/chef/provider/mount/mount.rb b/lib/chef/provider/mount/mount.rb index e00f3290fa..c3b1cc0141 100644 --- a/lib/chef/provider/mount/mount.rb +++ b/lib/chef/provider/mount/mount.rb @@ -47,7 +47,7 @@ class Chef elsif @new_resource.mount_point != "none" && !::File.exists?(@new_resource.mount_point) raise Chef::Exceptions::Mount, "Mount point #{@new_resource.mount_point} does not exist" end - return true + true end def enabled? @@ -129,7 +129,7 @@ class Chef end def remount_command - return "mount -o remount,#{@new_resource.options.join(',')} #{@new_resource.mount_point}" + "mount -o remount,#{@new_resource.options.join(',')} #{@new_resource.mount_point}" end def remount_fs diff --git a/lib/chef/provider/osx_profile.rb b/lib/chef/provider/osx_profile.rb index a25ac9539f..437e29b392 100644 --- a/lib/chef/provider/osx_profile.rb +++ b/lib/chef/provider/osx_profile.rb @@ -128,9 +128,9 @@ class Chef raise Chef::Exceptions::FileNotFound, error_string end cookbook_profile = cache_cookbook_profile(new_profile) - return read_plist(cookbook_profile) + read_plist(cookbook_profile) else - return nil + nil end end @@ -170,9 +170,9 @@ class Chef def get_profile_hash(new_profile) if new_profile.is_a?(Hash) - return new_profile + new_profile elsif new_profile.is_a?(String) - return load_profile_hash(new_profile) + load_profile_hash(new_profile) end end diff --git a/lib/chef/provider/powershell_script.rb b/lib/chef/provider/powershell_script.rb index 0cace362df..db12f61a0b 100644 --- a/lib/chef/provider/powershell_script.rb +++ b/lib/chef/provider/powershell_script.rb @@ -74,7 +74,7 @@ class Chef def add_exit_status_wrapper self.code = wrapper_script Chef::Log.debug("powershell_script provider called with script code:\n\n#{@new_resource.code}\n") - Chef::Log.debug("powershell_script provider will execute transformed code:\n\n#{self.code}\n") + Chef::Log.debug("powershell_script provider will execute transformed code:\n\n#{code}\n") end def validate_script_syntax! diff --git a/lib/chef/provider/service.rb b/lib/chef/provider/service.rb index e693bd2eed..e048b2e43b 100644 --- a/lib/chef/provider/service.rb +++ b/lib/chef/provider/service.rb @@ -218,7 +218,7 @@ class Chef def default_init_command if @new_resource.init_command @new_resource.init_command - elsif self.instance_variable_defined?(:@init_command) + elsif instance_variable_defined?(:@init_command) @init_command end end diff --git a/lib/chef/provider/service/solaris.rb b/lib/chef/provider/service/solaris.rb index 868b3e1ac1..f7f8eaf31b 100644 --- a/lib/chef/provider/service/solaris.rb +++ b/lib/chef/provider/service/solaris.rb @@ -73,7 +73,7 @@ class Chef def restart_service ## svcadm restart doesn't supports sync(-s) option disable_service - return enable_service + enable_service end def service_status diff --git a/lib/chef/provider/service/systemd.rb b/lib/chef/provider/service/systemd.rb index 712f0f60c3..deec25b187 100644 --- a/lib/chef/provider/service/systemd.rb +++ b/lib/chef/provider/service/systemd.rb @@ -89,7 +89,7 @@ class Chef::Provider::Service::Systemd < Chef::Provider::Service::Simple args = "--system" end - return options, args + [options, args] end def start_service diff --git a/lib/chef/resource.rb b/lib/chef/resource.rb index 0335b6f903..40911cd2cc 100644 --- a/lib/chef/resource.rb +++ b/lib/chef/resource.rb @@ -579,7 +579,7 @@ class Chef def load_from(resource) resource.instance_variables.each do |iv| unless iv == :@source_line || iv == :@action || iv == :@not_if || iv == :@only_if - self.instance_variable_set(iv, resource.instance_variable_get(iv)) + instance_variable_set(iv, resource.instance_variable_get(iv)) end end end @@ -739,7 +739,7 @@ class Chef end def self.json_create(o) - resource = self.new(o["instance_vars"]["@name"]) + resource = new(o["instance_vars"]["@name"]) o["instance_vars"].each do |k, v| resource.instance_variable_set("@#{k}".to_sym, v) end @@ -1049,7 +1049,7 @@ class Chef # A::B::BlahDBlah -> blah_d_blah # def self.use_automatic_resource_name - automatic_name = convert_to_snake_case(self.name.split("::")[-1]) + automatic_name = convert_to_snake_case(name.split("::")[-1]) resource_name automatic_name end @@ -1499,7 +1499,7 @@ class Chef if args.size == 1 args.first else - return *args + args end end @@ -1580,14 +1580,12 @@ class Chef # @api private def lookup_provider_constant(name, action = :nothing) - begin - self.class.provider_base.const_get(convert_to_class_name(name.to_s)) - rescue NameError => e - if e.to_s =~ /#{Regexp.escape(self.class.provider_base.to_s)}/ - raise ArgumentError, "No provider found to match '#{name}'" - else - raise e - end + self.class.provider_base.const_get(convert_to_class_name(name.to_s)) + rescue NameError => e + if e.to_s =~ /#{Regexp.escape(self.class.provider_base.to_s)}/ + raise ArgumentError, "No provider found to match '#{name}'" + else + raise e end end diff --git a/lib/chef/resource/chef_gem.rb b/lib/chef/resource/chef_gem.rb index c7c6d91752..5f51c9e208 100644 --- a/lib/chef/resource/chef_gem.rb +++ b/lib/chef/resource/chef_gem.rb @@ -40,7 +40,7 @@ class Chef if compile_time || compile_time.nil? Array(action).each do |action| - self.run_action(action) + run_action(action) end Gem.clear_paths end diff --git a/lib/chef/resource/dsc_resource.rb b/lib/chef/resource/dsc_resource.rb index f55f8d2c8c..d3b579e428 100644 --- a/lib/chef/resource/dsc_resource.rb +++ b/lib/chef/resource/dsc_resource.rb @@ -29,7 +29,7 @@ class Chef # to dump the actual ivars class ToTextHash < Hash def to_text - descriptions = self.map do |(property, obj)| + descriptions = map do |(property, obj)| obj_text = if obj.respond_to?(:to_text) obj.to_text else diff --git a/lib/chef/resource/registry_key.rb b/lib/chef/resource/registry_key.rb index da09b9668b..549897bb1d 100644 --- a/lib/chef/resource/registry_key.rb +++ b/lib/chef/resource/registry_key.rb @@ -96,7 +96,7 @@ class Chef end end @unscrubbed_values = @values - elsif self.instance_variable_defined?(:@values) + elsif instance_variable_defined?(:@values) scrub_values(@values) end end diff --git a/lib/chef/resource_collection/resource_collection_serialization.rb b/lib/chef/resource_collection/resource_collection_serialization.rb index 0e76296a4a..647d28dfd0 100644 --- a/lib/chef/resource_collection/resource_collection_serialization.rb +++ b/lib/chef/resource_collection/resource_collection_serialization.rb @@ -21,8 +21,8 @@ class Chef # Serialize this object as a hash def to_hash instance_vars = Hash.new - self.instance_variables.each do |iv| - instance_vars[iv] = self.instance_variable_get(iv) + instance_variables.each do |iv| + instance_vars[iv] = instance_variable_get(iv) end { "json_class" => self.class.name, @@ -40,7 +40,7 @@ class Chef module ClassMethods def json_create(o) - collection = self.new() + collection = new() o["instance_vars"].each do |k, v| collection.instance_variable_set(k.to_sym, v) end diff --git a/lib/chef/resource_collection/resource_set.rb b/lib/chef/resource_collection/resource_set.rb index 99be025cd5..1a73818790 100644 --- a/lib/chef/resource_collection/resource_set.rb +++ b/lib/chef/resource_collection/resource_set.rb @@ -146,7 +146,7 @@ class Chef results << lookup(create_key(resource_type, instance_name)) end end - return results + results end def find_resource_by_string(arg) @@ -166,7 +166,7 @@ class Chef else raise ArgumentError, "Bad string format #{arg}, you must have a string like resource_type[name]!" end - return results + results end end end diff --git a/lib/chef/resource_reporter.rb b/lib/chef/resource_reporter.rb index 368e66245f..afc8500a2a 100644 --- a/lib/chef/resource_reporter.rb +++ b/lib/chef/resource_reporter.rb @@ -87,7 +87,7 @@ class Chef end def success? - !self.exception + !exception end end # End class ResouceReport diff --git a/lib/chef/run_context.rb b/lib/chef/run_context.rb index aa6280e5be..6d84b7773d 100644 --- a/lib/chef/run_context.rb +++ b/lib/chef/run_context.rb @@ -253,7 +253,7 @@ class Chef # @return [Array[Notification]] # def before_notifications(resource) - return before_notification_collection[resource.declared_key] + before_notification_collection[resource.declared_key] end # @@ -262,7 +262,7 @@ class Chef # @return [Array[Notification]] # def immediate_notifications(resource) - return immediate_notification_collection[resource.declared_key] + immediate_notification_collection[resource.declared_key] end # @@ -272,7 +272,7 @@ class Chef # @return [Array[Notification]] # def delayed_notifications(resource) - return delayed_notification_collection[resource.declared_key] + delayed_notification_collection[resource.declared_key] end # diff --git a/lib/chef/run_list/run_list_item.rb b/lib/chef/run_list/run_list_item.rb index 0abfb106ff..1c75907dd8 100644 --- a/lib/chef/run_list/run_list_item.rb +++ b/lib/chef/run_list/run_list_item.rb @@ -81,7 +81,7 @@ class Chef def ==(other) if other.kind_of?(String) - self.to_s == other.to_s + to_s == other.to_s else other.respond_to?(:type) && other.respond_to?(:name) && other.respond_to?(:version) && other.type == @type && other.name == @name && other.version == @version end diff --git a/lib/chef/run_list/versioned_recipe_list.rb b/lib/chef/run_list/versioned_recipe_list.rb index 7845568aaa..ccd7351eeb 100644 --- a/lib/chef/run_list/versioned_recipe_list.rb +++ b/lib/chef/run_list/versioned_recipe_list.rb @@ -36,17 +36,17 @@ class Chef end end @versions[name] = version if version - self << name unless self.include?(name) + self << name unless include?(name) end def with_versions - self.map { |recipe_name| { :name => recipe_name, :version => @versions[recipe_name] } } + map { |recipe_name| { :name => recipe_name, :version => @versions[recipe_name] } } end # Return an Array of Hashes, each of the form: # {:name => RECIPE_NAME, :version_constraint => Chef::VersionConstraint } def with_version_constraints - self.map do |recipe_name| + map do |recipe_name| constraint = Chef::VersionConstraint.new(@versions[recipe_name]) { :name => recipe_name, :version_constraint => constraint } end @@ -55,7 +55,7 @@ class Chef # Return an Array of Strings, each of the form: # "NAME@VERSION" def with_version_constraints_strings - self.map do |recipe_name| + map do |recipe_name| if @versions[recipe_name] "#{recipe_name}@#{@versions[recipe_name]}" else @@ -69,7 +69,7 @@ class Chef # # @return [Array] Array of strings with fully-qualified recipe names def with_fully_qualified_names_and_version_constraints - self.map do |recipe_name| + map do |recipe_name| qualified_recipe = if recipe_name.include?("::") recipe_name else @@ -89,7 +89,7 @@ class Chef # # @return [Array] Array of strings with fully-qualified and unexpanded recipe names def with_duplicate_names - self.map do |recipe_name| + map do |recipe_name| if recipe_name.include?("::") recipe_name else diff --git a/lib/chef/shell.rb b/lib/chef/shell.rb index 26683cc25d..e8c3704553 100644 --- a/lib/chef/shell.rb +++ b/lib/chef/shell.rb @@ -281,7 +281,7 @@ FOOTER end def self.setup! - self.new.parse_opts + new.parse_opts end def parse_opts diff --git a/lib/chef/shell/ext.rb b/lib/chef/shell/ext.rb index 9e0c3a749c..fb0733e96e 100644 --- a/lib/chef/shell/ext.rb +++ b/lib/chef/shell/ext.rb @@ -73,7 +73,7 @@ module Shell banner << "| " + "Command".ljust(25) + "| " + "Description" banner << "".ljust(80, "=") - self.all_help_descriptions.each do |help_text| + all_help_descriptions.each do |help_text| banner << "| " + help_text.cmd.ljust(25) + "| " + help_text.desc end banner << "".ljust(80, "=") @@ -84,7 +84,7 @@ module Shell end def explain_command(method_name) - help = self.all_help_descriptions.find { |h| h.cmd.to_s == method_name.to_s } + help = all_help_descriptions.find { |h| h.cmd.to_s == method_name.to_s } if help puts "" puts "Command: #{method_name}" @@ -159,7 +159,7 @@ module Shell module Symbol def on_off_to_bool - self.to_s.on_off_to_bool + to_s.on_off_to_bool end end diff --git a/lib/chef/shell/shell_session.rb b/lib/chef/shell/shell_session.rb index a458286157..3034e1cf5d 100644 --- a/lib/chef/shell/shell_session.rb +++ b/lib/chef/shell/shell_session.rb @@ -127,7 +127,7 @@ module Shell def shorten_node_inspect def @node.inspect # rubocop:disable Lint/NestedMethodDefinition - "<Chef::Node:0x#{self.object_id.to_s(16)} @name=\"#{self.name}\">" + "<Chef::Node:0x#{object_id.to_s(16)} @name=\"#{name}\">" end end diff --git a/lib/chef/user.rb b/lib/chef/user.rb index 261ce43ef2..fffaa106f8 100644 --- a/lib/chef/user.rb +++ b/lib/chef/user.rb @@ -97,10 +97,10 @@ class Chef end def create - payload = { :name => self.name, :admin => self.admin, :password => self.password } + payload = { :name => name, :admin => admin, :password => password } payload[:public_key] = public_key if public_key new_user = chef_rest_v0.post("users", payload) - Chef::User.from_hash(self.to_hash.merge(new_user)) + Chef::User.from_hash(to_hash.merge(new_user)) end def update(new_key = false) @@ -108,18 +108,16 @@ class Chef payload[:private_key] = new_key if new_key payload[:password] = password if password updated_user = chef_rest_v0.put("users/#{name}", payload) - Chef::User.from_hash(self.to_hash.merge(updated_user)) + Chef::User.from_hash(to_hash.merge(updated_user)) end def save(new_key = false) - begin - create - rescue Net::HTTPServerException => e - if e.response.code == "409" - update(new_key) - else - raise e - end + create + rescue Net::HTTPServerException => e + if e.response.code == "409" + update(new_key) + else + raise e end end diff --git a/lib/chef/user_v1.rb b/lib/chef/user_v1.rb index fc01057888..b408bbe667 100644 --- a/lib/chef/user_v1.rb +++ b/lib/chef/user_v1.rb @@ -180,7 +180,7 @@ class Chef new_user = chef_root_rest_v0.post("users", payload) end - Chef::UserV1.from_hash(self.to_hash.merge(new_user)) + Chef::UserV1.from_hash(to_hash.merge(new_user)) end def update(new_key = false) @@ -213,25 +213,23 @@ class Chef end updated_user = chef_root_rest_v0.put("users/#{username}", payload) end - Chef::UserV1.from_hash(self.to_hash.merge(updated_user)) + Chef::UserV1.from_hash(to_hash.merge(updated_user)) end def save(new_key = false) - begin - create - rescue Net::HTTPServerException => e - if e.response.code == "409" - update(new_key) - else - raise e - end + create + rescue Net::HTTPServerException => e + if e.response.code == "409" + update(new_key) + else + raise e end end # Note: remove after API v0 no longer supported by client (and knife command). def reregister begin - payload = self.to_hash.merge({ "private_key" => true }) + payload = to_hash.merge({ "private_key" => true }) reregistered_self = chef_root_rest_v0.put("users/#{username}", payload) private_key(reregistered_self["private_key"]) # only V0 supported for reregister diff --git a/lib/chef/util/diff.rb b/lib/chef/util/diff.rb index bb1b4e2b95..61bc2bf666 100644 --- a/lib/chef/util/diff.rb +++ b/lib/chef/util/diff.rb @@ -117,7 +117,7 @@ class Chef end end diff_str << old_hunk.diff(:unified) << "\n" - return diff_str + diff_str end private diff --git a/lib/chef/util/dsc/lcm_output_parser.rb b/lib/chef/util/dsc/lcm_output_parser.rb index bdcedff7f8..9473ca8a86 100644 --- a/lib/chef/util/dsc/lcm_output_parser.rb +++ b/lib/chef/util/dsc/lcm_output_parser.rb @@ -119,7 +119,7 @@ class Chef end end info.strip! # Because this was formatted for humans - return [op_action, op_type, info] + [op_action, op_type, info] end private_class_method :parse_line diff --git a/lib/chef/util/selinux.rb b/lib/chef/util/selinux.rb index edca589034..0ff76c6407 100644 --- a/lib/chef/util/selinux.rb +++ b/lib/chef/util/selinux.rb @@ -83,7 +83,7 @@ class Chef else # We assume selinux is not enabled if selinux utils are not # installed. - return false + false end end diff --git a/lib/chef/util/windows/net_group.rb b/lib/chef/util/windows/net_group.rb index 0a351fbc6f..214881df56 100644 --- a/lib/chef/util/windows/net_group.rb +++ b/lib/chef/util/windows/net_group.rb @@ -35,50 +35,38 @@ class Chef::Util::Windows::NetGroup end def local_get_members - begin - Chef::ReservedNames::Win32::NetUser.net_local_group_get_members(nil, groupname) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::NetUser.net_local_group_get_members(nil, groupname) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def local_add - begin - Chef::ReservedNames::Win32::NetUser.net_local_group_add(nil, groupname) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::NetUser.net_local_group_add(nil, groupname) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def local_set_members(members) - begin - Chef::ReservedNames::Win32::NetUser.net_local_group_set_members(nil, groupname, members) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::NetUser.net_local_group_set_members(nil, groupname, members) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def local_add_members(members) - begin - Chef::ReservedNames::Win32::NetUser.net_local_group_add_members(nil, groupname, members) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::NetUser.net_local_group_add_members(nil, groupname, members) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def local_delete_members(members) - begin - Chef::ReservedNames::Win32::NetUser.net_local_group_del_members(nil, groupname, members) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::NetUser.net_local_group_del_members(nil, groupname, members) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def local_delete - begin - Chef::ReservedNames::Win32::NetUser.net_local_group_del(nil, groupname) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::NetUser.net_local_group_del(nil, groupname) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end end diff --git a/lib/chef/util/windows/net_use.rb b/lib/chef/util/windows/net_use.rb index b9c3ecc783..196ce42215 100644 --- a/lib/chef/util/windows/net_use.rb +++ b/lib/chef/util/windows/net_use.rb @@ -59,12 +59,10 @@ class Chef::Util::Windows::NetUse < Chef::Util::Windows end def get_info - begin - ui2 = Chef::ReservedNames::Win32::Net.net_use_get_info_l2(nil, use_name) - from_use_info_struct(ui2) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + ui2 = Chef::ReservedNames::Win32::Net.net_use_get_info_l2(nil, use_name) + from_use_info_struct(ui2) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def device @@ -72,11 +70,9 @@ class Chef::Util::Windows::NetUse < Chef::Util::Windows end def delete - begin - Chef::ReservedNames::Win32::Net.net_use_del(nil, use_name, :use_noforce) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::Net.net_use_del(nil, use_name, :use_noforce) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def use_name diff --git a/lib/chef/util/windows/net_user.rb b/lib/chef/util/windows/net_user.rb index 009252c4c1..f9f8f011af 100644 --- a/lib/chef/util/windows/net_user.rb +++ b/lib/chef/util/windows/net_user.rb @@ -78,11 +78,9 @@ class Chef::Util::Windows::NetUser < Chef::Util::Windows end def set_info(args) - begin - rc = NetUser.net_user_set_info_l3(nil, @username, transform_usri3(args)) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + rc = NetUser.net_user_set_info_l3(nil, @username, transform_usri3(args)) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end public @@ -95,13 +93,11 @@ class Chef::Util::Windows::NetUser < Chef::Util::Windows LOGON32_LOGON_NETWORK = Security::LOGON32_LOGON_NETWORK #XXX for an extra painful alternative, see: http://support.microsoft.com/kb/180548 def validate_credentials(passwd) - begin - token = Security.logon_user(@username, nil, passwd, - LOGON32_LOGON_NETWORK, LOGON32_PROVIDER_DEFAULT) - return true - rescue Chef::Exceptions::Win32APIError - return false - end + token = Security.logon_user(@username, nil, passwd, + LOGON32_LOGON_NETWORK, LOGON32_PROVIDER_DEFAULT) + return true + rescue Chef::Exceptions::Win32APIError + return false end def get_info @@ -137,11 +133,9 @@ class Chef::Util::Windows::NetUser < Chef::Util::Windows end def delete - begin - NetUser.net_user_del(nil, @username) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + NetUser.net_user_del(nil, @username) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def disable_account diff --git a/lib/chef/util/windows/volume.rb b/lib/chef/util/windows/volume.rb index a18644cece..dc9c0ca1d0 100644 --- a/lib/chef/util/windows/volume.rb +++ b/lib/chef/util/windows/volume.rb @@ -30,27 +30,21 @@ class Chef::Util::Windows::Volume < Chef::Util::Windows end def device - begin - Chef::ReservedNames::Win32::File.get_volume_name_for_volume_mount_point(mount_point) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::File.get_volume_name_for_volume_mount_point(mount_point) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def delete - begin - Chef::ReservedNames::Win32::File.delete_volume_mount_point(mount_point) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::File.delete_volume_mount_point(mount_point) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def add(args) - begin - Chef::ReservedNames::Win32::File.set_volume_mount_point(mount_point, args[:remote]) - rescue Chef::Exceptions::Win32APIError => e - raise ArgumentError, e - end + Chef::ReservedNames::Win32::File.set_volume_mount_point(mount_point, args[:remote]) + rescue Chef::Exceptions::Win32APIError => e + raise ArgumentError, e end def mount_point diff --git a/lib/chef/version_class.rb b/lib/chef/version_class.rb index f26368902d..f98673b019 100644 --- a/lib/chef/version_class.rb +++ b/lib/chef/version_class.rb @@ -34,7 +34,7 @@ class Chef def <=>(other) [:major, :minor, :patch].each do |method| - version = self.send(method) + version = send(method) begin ans = (version <=> other.send(method)) rescue NoMethodError # if the other thing isn't a version object, return nil diff --git a/lib/chef/win32/api.rb b/lib/chef/win32/api.rb index 64db9d2b63..503920a0ed 100644 --- a/lib/chef/win32/api.rb +++ b/lib/chef/win32/api.rb @@ -29,12 +29,10 @@ class Chef # function into the calling module. If this fails a dummy method is # defined which when called, raises a helpful exception to the end-user. def safe_attach_function(win32_func, *args) - begin - attach_function(win32_func.to_sym, *args) - rescue FFI::NotFoundError - define_method(win32_func.to_sym) do |*margs| - raise Chef::Exceptions::Win32APIFunctionNotImplemented, "This version of Windows does not implement the Win32 function [#{win32_func}]." - end + attach_function(win32_func.to_sym, *args) + rescue FFI::NotFoundError + define_method(win32_func.to_sym) do |*margs| + raise Chef::Exceptions::Win32APIFunctionNotImplemented, "This version of Windows does not implement the Win32 function [#{win32_func}]." end end diff --git a/lib/chef/win32/api/file.rb b/lib/chef/win32/api/file.rb index 7489c94fd9..355cc81378 100644 --- a/lib/chef/win32/api/file.rb +++ b/lib/chef/win32/api/file.rb @@ -537,24 +537,22 @@ BOOL WINAPI VerQueryValue( # ensures the handle is closed on exit of the block # FIXME: yard with @yield def file_search_handle(path) - begin # Workaround for CHEF-4419: # Make sure paths starting with "/" has a drive letter # assigned from the current working diretory. # Note: With CHEF-4427 this issue will be fixed with a # broader fix to map all the paths starting with "/" to # SYSTEM_DRIVE on windows. - path = ::File.expand_path(path) if path.start_with? "/" - path = canonical_encode_path(path) - find_data = WIN32_FIND_DATA.new - handle = FindFirstFileW(path, find_data) - if handle == INVALID_HANDLE_VALUE - Chef::ReservedNames::Win32::Error.raise! - end - yield(handle, find_data) - ensure - FindClose(handle) if handle && handle != INVALID_HANDLE_VALUE + path = ::File.expand_path(path) if path.start_with? "/" + path = canonical_encode_path(path) + find_data = WIN32_FIND_DATA.new + handle = FindFirstFileW(path, find_data) + if handle == INVALID_HANDLE_VALUE + Chef::ReservedNames::Win32::Error.raise! end + yield(handle, find_data) + ensure + FindClose(handle) if handle && handle != INVALID_HANDLE_VALUE end # retrieves a file handle and passes it @@ -562,34 +560,30 @@ BOOL WINAPI VerQueryValue( # ensures the handle is closed on exit of the block # FIXME: yard with @yield def file_handle(path) - begin - path = canonical_encode_path(path) - handle = CreateFileW(path, GENERIC_READ, FILE_SHARE_READ, - nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, nil) + path = canonical_encode_path(path) + handle = CreateFileW(path, GENERIC_READ, FILE_SHARE_READ, + nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, nil) - if handle == INVALID_HANDLE_VALUE - Chef::ReservedNames::Win32::Error.raise! - end - yield(handle) - ensure - CloseHandle(handle) if handle && handle != INVALID_HANDLE_VALUE + if handle == INVALID_HANDLE_VALUE + Chef::ReservedNames::Win32::Error.raise! end + yield(handle) + ensure + CloseHandle(handle) if handle && handle != INVALID_HANDLE_VALUE end # FIXME: yard with @yield def symlink_file_handle(path) - begin - path = encode_path(path) - handle = CreateFileW(path, FILE_READ_EA, FILE_SHARE_READ, - nil, OPEN_EXISTING, FILE_FLAG_OPEN_REPARSE_POINT | FILE_FLAG_BACKUP_SEMANTICS, nil) + path = encode_path(path) + handle = CreateFileW(path, FILE_READ_EA, FILE_SHARE_READ, + nil, OPEN_EXISTING, FILE_FLAG_OPEN_REPARSE_POINT | FILE_FLAG_BACKUP_SEMANTICS, nil) - if handle == INVALID_HANDLE_VALUE - Chef::ReservedNames::Win32::Error.raise! - end - yield(handle) - ensure - CloseHandle(handle) if handle && handle != INVALID_HANDLE_VALUE + if handle == INVALID_HANDLE_VALUE + Chef::ReservedNames::Win32::Error.raise! end + yield(handle) + ensure + CloseHandle(handle) if handle && handle != INVALID_HANDLE_VALUE end def retrieve_file_info(file_name) diff --git a/lib/chef/win32/api/installer.rb b/lib/chef/win32/api/installer.rb index caf7b23f59..46930b65fc 100644 --- a/lib/chef/win32/api/installer.rb +++ b/lib/chef/win32/api/installer.rb @@ -107,7 +107,7 @@ UINT MsiCloseHandle( end msi_close_handle(pkg_ptr.read_pointer) - return buffer.chomp(0.chr) + buffer.chomp(0.chr) end # Opens a Microsoft Installer (MSI) file from an absolute path and returns a pointer to a handle @@ -124,7 +124,7 @@ UINT MsiCloseHandle( else raise Chef::Exceptions::Package, "msi_open_package: unexpected status #{status}: #{Chef::ReservedNames::Win32::Error.format_message(status)}" end - return pkg_ptr + pkg_ptr end # All installed product_codes should have a VersionString diff --git a/lib/chef/win32/file.rb b/lib/chef/win32/file.rb index 1009f8c5a9..fa3d0f7a9d 100644 --- a/lib/chef/win32/file.rb +++ b/lib/chef/win32/file.rb @@ -155,13 +155,11 @@ class Chef end def self.verify_links_supported! - begin - CreateSymbolicLinkW(nil) - rescue Chef::Exceptions::Win32APIFunctionNotImplemented => e - raise e - rescue Exception + CreateSymbolicLinkW(nil) + rescue Chef::Exceptions::Win32APIFunctionNotImplemented => e + raise e + rescue Exception # things are ok. - end end def self.file_access_check(path, desired_access) diff --git a/lib/chef/win32/registry.rb b/lib/chef/win32/registry.rb index 613994295c..6f1eb9ff12 100644 --- a/lib/chef/win32/registry.rb +++ b/lib/chef/win32/registry.rb @@ -170,7 +170,7 @@ class Chef rescue Chef::Exceptions::Win32RegHiveMissing => e return false end - return true + true end def has_subkeys?(key_path) @@ -179,7 +179,7 @@ class Chef hive.open(key, ::Win32::Registry::KEY_READ | registry_system_architecture) do |reg| reg.each_key { |key| return true } end - return false + false end def get_subkeys(key_path) @@ -189,7 +189,7 @@ class Chef hive.open(key, ::Win32::Registry::KEY_READ | registry_system_architecture) do |reg| reg.each_key { |current_key| subkeys << current_key } end - return subkeys + subkeys end # 32-bit chef clients running on 64-bit machines will default to reading the 64-bit registry @@ -204,7 +204,7 @@ class Chef hive.open(key, ::Win32::Registry::KEY_READ | registry_system_architecture) do |reg| return true if reg.any? { |val| safely_downcase(val) == safely_downcase(value[:name]) } end - return false + false end def data_exists?(key_path, value) @@ -219,7 +219,7 @@ class Chef end end end - return false + false end def value_exists!(key_path, value) @@ -249,7 +249,7 @@ class Chef end end end - return false + false end def type_matches!(key_path, value) @@ -279,7 +279,7 @@ class Chef if val.is_a? String return val.downcase end - return val + val end def node @@ -316,7 +316,7 @@ class Chef raise Chef::Exceptions::Win32RegHiveMissing, "Registry Hive #{hive_name} does not exist" unless hive - return hive, key + [hive, key] end def _type_name_map @@ -345,7 +345,7 @@ class Chef 5 => ::Win32::Registry::REG_DWORD_BIG_ENDIAN, 11 => ::Win32::Registry::REG_QWORD, }[val_type] - return value + value end def create_missing(key_path) diff --git a/lib/chef/win32/security/acl.rb b/lib/chef/win32/security/acl.rb index 8a04987e44..0d9f7decd0 100644 --- a/lib/chef/win32/security/acl.rb +++ b/lib/chef/win32/security/acl.rb @@ -48,7 +48,7 @@ class Chef 0.upto(length - 1) do |i| return false if self[i] != other[i] end - return true + true end def pointer @@ -88,7 +88,7 @@ class Chef end def to_s - "[#{self.collect { |ace| ace.to_s }.join(", ")}]" + "[#{collect { |ace| ace.to_s }.join(", ")}]" end def self.align_dword(size) diff --git a/lib/chef/win32/unicode.rb b/lib/chef/win32/unicode.rb index d531463be0..dd5a197f71 100644 --- a/lib/chef/win32/unicode.rb +++ b/lib/chef/win32/unicode.rb @@ -40,13 +40,13 @@ module FFI last_char = nil while last_char != "\000\000" length += 1 - last_char = self.get_bytes(0, length * 2)[-2..-1] + last_char = get_bytes(0, length * 2)[-2..-1] end num_wchars = length end - wide_to_utf8(self.get_bytes(0, num_wchars * 2)) + wide_to_utf8(get_bytes(0, num_wchars * 2)) end end end diff --git a/lib/chef/win32/version.rb b/lib/chef/win32/version.rb index 303fe1531d..3e2d6bc1fe 100644 --- a/lib/chef/win32/version.rb +++ b/lib/chef/win32/version.rb @@ -100,7 +100,7 @@ class Chef define_method(:marketing_name) do marketing_names.each do |mn| - break mn[0] if self.send(mn[1]) + break mn[0] if send(mn[1]) end end diff --git a/omnibus/config/projects/angrychef.rb b/omnibus/config/projects/angrychef.rb index 48902e6607..ff83f41327 100644 --- a/omnibus/config/projects/angrychef.rb +++ b/omnibus/config/projects/angrychef.rb @@ -21,7 +21,7 @@ # current_file = __FILE__ chef_project_contents = IO.read(File.expand_path("../chef.rb", __FILE__)) -self.instance_eval chef_project_contents +instance_eval chef_project_contents name "angrychef" friendly_name "Angry Chef Client" diff --git a/spec/functional/resource/dsc_script_spec.rb b/spec/functional/resource/dsc_script_spec.rb index 8afcdbb590..ce92c468f0 100644 --- a/spec/functional/resource/dsc_script_spec.rb +++ b/spec/functional/resource/dsc_script_spec.rb @@ -65,10 +65,8 @@ describe Chef::Resource::DscScript, :windows_powershell_dsc_only do end def delete_user(target_user) - begin - shell_out!("net user #{target_user} /delete") - rescue Mixlib::ShellOut::ShellCommandFailed - end + shell_out!("net user #{target_user} /delete") + rescue Mixlib::ShellOut::ShellCommandFailed end let(:dsc_env_variable) { "chefenvtest" } diff --git a/spec/functional/resource/user/dscl_spec.rb b/spec/functional/resource/user/dscl_spec.rb index bedb37838c..ed96e31bac 100644 --- a/spec/functional/resource/user/dscl_spec.rb +++ b/spec/functional/resource/user/dscl_spec.rb @@ -28,11 +28,9 @@ describe "Chef::Resource::User with Chef::Provider::User::Dscl provider", metada include Chef::Mixin::ShellOut def clean_user - begin - shell_out!("/usr/bin/dscl . -delete '/Users/#{username}'") - rescue Mixlib::ShellOut::ShellCommandFailed + shell_out!("/usr/bin/dscl . -delete '/Users/#{username}'") + rescue Mixlib::ShellOut::ShellCommandFailed # Raised when the user is already cleaned - end end def user_should_exist diff --git a/spec/integration/recipes/recipe_dsl_spec.rb b/spec/integration/recipes/recipe_dsl_spec.rb index ce784b11ca..370d202678 100644 --- a/spec/integration/recipes/recipe_dsl_spec.rb +++ b/spec/integration/recipes/recipe_dsl_spec.rb @@ -861,7 +861,7 @@ describe "Recipe DSL methods" do before { resource_class_a } # pull on it so it gets defined before the recipe runs it "two_classes_one_dsl resolves to A (alphabetically earliest)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -891,7 +891,7 @@ describe "Recipe DSL methods" do before { resource_class_z } # pull on it so it gets defined before the recipe runs it "two_classes_one_dsl resolves to B (alphabetically earliest)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -909,7 +909,7 @@ describe "Recipe DSL methods" do end it "two_classes_one_dsl resolves to Z (respects the priority array)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -927,7 +927,7 @@ describe "Recipe DSL methods" do end it "two_classes_one_dsl resolves to B (picks the next thing in the priority array)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -948,7 +948,7 @@ describe "Recipe DSL methods" do end it "two_classes_one_dsl resolves to Z (respects the most recent priority array)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -966,7 +966,7 @@ describe "Recipe DSL methods" do end it "two_classes_one_dsl resolves to B (picks the first match from the other priority array)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -991,7 +991,7 @@ describe "Recipe DSL methods" do end it "two_classes_one_dsl resolves to B (picks the first match outside the priority array)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1044,7 +1044,7 @@ describe "Recipe DSL methods" do before { provider_class_a.provides two_classes_one_dsl } it "two_classes_one_dsl resolves to A (alphabetically earliest)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1056,7 +1056,7 @@ describe "Recipe DSL methods" do before { provider_class_a.provides(two_classes_one_dsl) { false } } it "two_classes_one_dsl resolves to B (since A declined)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1085,7 +1085,7 @@ describe "Recipe DSL methods" do before { provider_class_z.provides two_classes_one_dsl } it "two_classes_one_dsl resolves to B (alphabetically earliest)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1097,7 +1097,7 @@ describe "Recipe DSL methods" do before { Chef.set_provider_priority_array two_classes_one_dsl, [ provider_class_z, provider_class ] } it "two_classes_one_dsl resolves to Z (respects the priority map)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1114,7 +1114,7 @@ describe "Recipe DSL methods" do before { Chef.set_provider_priority_array two_classes_one_dsl, [ provider_class_z, provider_class ] } it "two_classes_one_dsl resolves to B (the next one in the priority map)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1128,7 +1128,7 @@ describe "Recipe DSL methods" do before { Chef.set_provider_priority_array two_classes_one_dsl, [ provider_class ] } it "two_classes_one_dsl resolves to B (the one in the next priority map)" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do instance_eval("#{two_classes_one_dsl} 'blah'") end @@ -1158,7 +1158,7 @@ describe "Recipe DSL methods" do before { resource_class_blarghle } # pull on it so it gets defined before the recipe runs it "on os = blarghle, two_classes_one_dsl resolves to Blarghle" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do # this is an ugly way to test, make Cheffish expose node attrs run_context.node.automatic[:os] = "blarghle" @@ -1169,7 +1169,7 @@ describe "Recipe DSL methods" do end it "on os = linux, two_classes_one_dsl resolves to B" do - two_classes_one_dsl = self.two_classes_one_dsl + two_classes_one_dsl = two_classes_one_dsl recipe = converge do # this is an ugly way to test, make Cheffish expose node attrs run_context.node.automatic[:os] = "linux" @@ -1202,7 +1202,7 @@ describe "Recipe DSL methods" do context "with provides? returning true to my_resource" do before do - my_resource = self.my_resource + my_resource = my_resource resource_class.define_singleton_method(:provides?) do |node, resource_name| @called_provides = true resource_name == my_resource @@ -1210,7 +1210,7 @@ describe "Recipe DSL methods" do end it "my_resource returns the resource and calls provides?, but does not emit a warning" do - dsl_name = self.my_resource + dsl_name = my_resource recipe = converge do instance_eval("#{dsl_name} 'foo'") end @@ -1222,7 +1222,7 @@ describe "Recipe DSL methods" do context "with provides? returning true to blarghle_blarghle_little_star and not resource_name" do before do - blarghle_blarghle_little_star = self.blarghle_blarghle_little_star + blarghle_blarghle_little_star = blarghle_blarghle_little_star resource_class.define_singleton_method(:provides?) do |node, resource_name| @called_provides = true resource_name == blarghle_blarghle_little_star @@ -1230,7 +1230,7 @@ describe "Recipe DSL methods" do end it "my_resource does not return the resource" do - dsl_name = self.my_resource + dsl_name = my_resource expect_converge do instance_eval("#{dsl_name} 'foo'") end.to raise_error(Chef::Exceptions::NoSuchResourceType) @@ -1239,7 +1239,7 @@ describe "Recipe DSL methods" do it "blarghle_blarghle_little_star 'foo' returns the resource and emits a warning" do Chef::Config[:treat_deprecation_warnings_as_errors] = false - dsl_name = self.blarghle_blarghle_little_star + dsl_name = blarghle_blarghle_little_star recipe = converge do instance_eval("#{dsl_name} 'foo'") end @@ -1281,7 +1281,7 @@ describe "Recipe DSL methods" do end it "my_resource runs the provider and does not emit a warning" do - my_resource = self.my_resource + my_resource = my_resource recipe = converge do instance_eval("#{my_resource} 'foo'") end @@ -1311,7 +1311,7 @@ describe "Recipe DSL methods" do end it "my_resource runs the first provider" do - my_resource = self.my_resource + my_resource = my_resource recipe = converge do instance_eval("#{my_resource} 'foo'") end @@ -1328,7 +1328,7 @@ describe "Recipe DSL methods" do # TODO no warning? ick it "my_resource runs the provider anyway" do - my_resource = self.my_resource + my_resource = my_resource recipe = converge do instance_eval("#{my_resource} 'foo'") end @@ -1338,7 +1338,7 @@ describe "Recipe DSL methods" do context "and another provider supporting :my_resource with supports? true" do let(:provider_class2) do - my_resource = self.my_resource + my_resource = my_resource Class.new(BaseThingy::Provider) do def self.name "MyProvider2" @@ -1360,7 +1360,7 @@ describe "Recipe DSL methods" do before { provider_class2 } # make sure the provider class shows up it "my_resource runs the other provider" do - my_resource = self.my_resource + my_resource = my_resource recipe = converge do instance_eval("#{my_resource} 'foo'") end @@ -1373,7 +1373,7 @@ describe "Recipe DSL methods" do context "with provides? returning true" do before do - my_resource = self.my_resource + my_resource = my_resource provider_class.define_singleton_method(:provides?) do |node, resource| @called_provides = true resource.declared_type == my_resource @@ -1386,7 +1386,7 @@ describe "Recipe DSL methods" do end it "my_resource calls the provider (and calls provides?), but does not emit a warning" do - my_resource = self.my_resource + my_resource = my_resource recipe = converge do instance_eval("#{my_resource} 'foo'") end @@ -1399,7 +1399,7 @@ describe "Recipe DSL methods" do context "that does not call provides :my_resource" do it "my_resource calls the provider (and calls provides?), and emits a warning" do Chef::Config[:treat_deprecation_warnings_as_errors] = false - my_resource = self.my_resource + my_resource = my_resource recipe = converge do instance_eval("#{my_resource} 'foo'") end @@ -1412,7 +1412,7 @@ describe "Recipe DSL methods" do context "with provides? returning false to my_resource" do before do - my_resource = self.my_resource + my_resource = my_resource provider_class.define_singleton_method(:provides?) do |node, resource| @called_provides = true false @@ -1426,7 +1426,7 @@ describe "Recipe DSL methods" do it "my_resource fails to find a provider (and calls provides)" do Chef::Config[:treat_deprecation_warnings_as_errors] = false - my_resource = self.my_resource + my_resource = my_resource expect_converge do instance_eval("#{my_resource} 'foo'") end.to raise_error(Chef::Exceptions::ProviderNotFound) @@ -1437,7 +1437,7 @@ describe "Recipe DSL methods" do context "that does not provide :my_resource" do it "my_resource fails to find a provider (and calls provides)" do Chef::Config[:treat_deprecation_warnings_as_errors] = false - my_resource = self.my_resource + my_resource = my_resource expect_converge do instance_eval("#{my_resource} 'foo'") end.to raise_error(Chef::Exceptions::ProviderNotFound) diff --git a/spec/support/chef_helpers.rb b/spec/support/chef_helpers.rb index d0b5ad0bfd..444e5a30c8 100644 --- a/spec/support/chef_helpers.rb +++ b/spec/support/chef_helpers.rb @@ -53,13 +53,11 @@ end # This is a temporary fix to get tests passing on systems that have no `diff` # until we can replace shelling out to `diff` with ruby diff-lcs def has_diff? - begin - diff_cmd = Mixlib::ShellOut.new("diff -v") - diff_cmd.run_command - true - rescue Errno::ENOENT - false - end + diff_cmd = Mixlib::ShellOut.new("diff -v") + diff_cmd.run_command + true +rescue Errno::ENOENT + false end # This is a helper to determine if the ruby in the PATH contains diff --git a/spec/support/platforms/prof/gc.rb b/spec/support/platforms/prof/gc.rb index 2e1b45c294..b494ff9646 100644 --- a/spec/support/platforms/prof/gc.rb +++ b/spec/support/platforms/prof/gc.rb @@ -35,12 +35,10 @@ module RSpec end def working_set_size - begin - ::GC.start - ::GC::Profiler.result.scan(LINE_PATTERN)[-1][2].to_i if ::GC::Profiler.enabled? - ensure - ::GC::Profiler.clear - end + ::GC.start + ::GC::Profiler.result.scan(LINE_PATTERN)[-1][2].to_i if ::GC::Profiler.enabled? + ensure + ::GC::Profiler.clear end def handle_count diff --git a/spec/unit/provider/deploy_spec.rb b/spec/unit/provider/deploy_spec.rb index b30ddb736a..b0ede7e260 100644 --- a/spec/unit/provider/deploy_spec.rb +++ b/spec/unit/provider/deploy_spec.rb @@ -595,7 +595,7 @@ describe Chef::Provider::Deploy do callback_code = Proc.new do snitch = 42 - temp_collection = self.resource_collection + temp_collection = resource_collection run("tehMice") snitch = temp_collection.lookup("execute[tehMice]") end diff --git a/spec/unit/provider/package/ips_spec.rb b/spec/unit/provider/package/ips_spec.rb index 156adf402a..3bbdd26ce3 100644 --- a/spec/unit/provider/package/ips_spec.rb +++ b/spec/unit/provider/package/ips_spec.rb @@ -41,7 +41,7 @@ installed on the system. Try specifying -r to query remotely: crypto/gnupg PKG_STATUS - return OpenStruct.new(:stdout => stdout, :stdin => stdin, :stderr => stderr, :status => @status, :exitstatus => 1) + OpenStruct.new(:stdout => stdout, :stdin => stdin, :stderr => stderr, :status => @status, :exitstatus => 1) end def remote_output @@ -59,7 +59,7 @@ Packaging Date: April 1, 2012 05:55:52 PM PKG_STATUS stdin = StringIO.new stderr = "" - return OpenStruct.new(:stdout => stdout, :stdin => stdin, :stderr => stderr, :status => @status, :exitstatus => 0) + OpenStruct.new(:stdout => stdout, :stdin => stdin, :stderr => stderr, :status => @status, :exitstatus => 0) end context "when loading current resource" do |