class Chef::Knife::SupermarketUnshare
def run
def run @cookbook_name = @name_args[0] if @cookbook_name.nil? show_usage ui.fatal "You must provide the name of the cookbook to unshare" exit 1 end confirm "Do you really want to unshare all versions of the cookbook #{@cookbook_name}" begin rest.delete "#{config[:supermarket_site]}/api/v1/cookbooks/#{@name_args[0]}" rescue Net::HTTPClientException => e raise e unless /Forbidden/.match?(e.message) ui.error "Forbidden: You must be the maintainer of #{@cookbook_name} to unshare it & #{config[:supermarket_site]} must allow maintainers to unshare cookbooks." ui.warn "The default supermarket #{default_config[:supermarket_site]} does not allow maintainers to unshare cookbooks." exit 1 end ui.info "Unshared all versions of the cookbook #{@cookbook_name}" end