lib/shelly/cli/file.rb in shelly-0.1.35 vs lib/shelly/cli/file.rb in shelly-0.1.36

- old
+ new

@@ -4,11 +4,11 @@ module CLI class File < Command namespace :file include Helpers - before_hook :logged_in?, :only => [:upload, :download] + before_hook :logged_in?, :only => [:upload, :download, :delete] before_hook :require_rsync, :only => [:upload, :download] class_option :cloud, :type => :string, :aliases => "-c", :desc => "Specify cloud" desc "upload PATH", "Upload files to persistent data storage" def upload(path) @@ -27,9 +27,22 @@ def download(relative_source = ".", destination = ".") app = multiple_clouds(options[:cloud], "file download #{relative_source} #{destination}") app.download(relative_source, destination) rescue Client::ConflictException say_error "Cloud #{app} is not running. Cannot download files." + end + + desc "delete PATH", "Delete files from persistent data storage" + def delete(path) + app = multiple_clouds(options[:cloud], "file delete #{path}") + + question = "Do you want to permanently delete #{path} (yes/no):" + delete_files = ask(question) + exit 1 unless delete_files == "yes" + + app.delete_file(path) + rescue Client::ConflictException + say_error "Cloud #{app} is not running. Cannot delete files." end no_tasks do def require_rsync unless command_exists?("rsync")