lib/chef/knife/cookbook_delete.rb in chef-0.9.6 vs lib/chef/knife/cookbook_delete.rb in chef-0.9.8.beta.1
- old
+ new
@@ -24,11 +24,11 @@
option :all, :short => '-a', :long => '--all', :boolean => true, :description => 'delete all versions'
option :purge, :short => '-p', :long => '--purge', :boolean => true, :description => 'Permanently remove files from backing data store'
- banner "Sub-Command: cookbook delete COOKBOOK VERSION (options)"
+ banner "knife cookbook delete COOKBOOK VERSION (options)"
def run
confirm("Files that are common to multiple cookbooks are shared, so purging the files may disable other cookbooks. Are you sure you want to purge files instead of just deleting the cookbook") if config[:purge]
@cookbook_name, @version = name_args
if @cookbook_name && @version
@@ -44,11 +44,11 @@
end
end
def delete_explicit_version
delete_object(Chef::CookbookVersion, "#{@cookbook_name} version #{@version}", "cookbook") do
- delete_request("cookbooks/#{@cookbook_name}/#{@version}", config[:purge])
+ delete_request("cookbooks/#{@cookbook_name}/#{@version}")
end
end
def delete_all_versions
confirm("Do you really want to delete all versions of #{@cookbook_name}")
@@ -113,11 +113,11 @@
end
versions.compact
end
def delete_version_without_confirmation(version)
- object = delete_request("cookbooks/#{@cookbook_name}/#{version}", config[:purge])
+ object = delete_request("cookbooks/#{@cookbook_name}/#{version}")
output(format_for_display(object)) if config[:print_after]
Chef::Log.info("Deleted cookbook[#{@cookbook_name}][#{version}]")
end
def delete_versions_without_confirmation(versions)
@@ -131,12 +131,12 @@
end
end
private
- def delete_request(path, purge)
- url = "cookbooks/#{@cookbook_name}/#{@version}#{purge ? "?purge=true" : ""}"
- rest.delete_rest(url)
+ def delete_request(path)
+ path += "?purge=true" if config[:purge]
+ rest.delete_rest(path)
end
end
end
end