Class: Central::Cli::Nodes::DigitalOcean::RestartCommand
- Inherits:
-
Clamp::Command
- Object
- Clamp::Command
- Central::Cli::Nodes::DigitalOcean::RestartCommand
- Includes:
- Common, StackOptions
- Defined in:
- lib/central/cli/nodes/digital_ocean/restart_command.rb
Instance Method Summary collapse
Methods included from StackOptions
Methods included from Common
#access_token=, #add_master, #api_url, #api_url=, #clear_current_stack, #client, #current_master, #current_master=, #current_master_index, #current_stack, #current_stack=, #ensure_custom_ssl_ca, #require_api_url, #require_current_stack, #require_token, #reset_client, #save_settings, #settings, #settings_filename
Instance Method Details
#execute ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/central/cli/nodes/digital_ocean/restart_command.rb', line 9 def execute require_api_url require_current_stack require 'central/machine/digital_ocean' client = DropletKit::Client.new(access_token: token) droplet = client.droplets.all.find { |d| d.name == name } if droplet ShellSpinner "Restarting DigitalOcean droplet #{name.colorize(:cyan)} " do client.droplet_actions.reboot(droplet_id: droplet.id) sleep 5 until client.droplets.find(id: droplet.id).status == 'active' end else abort "Cannot find droplet #{name.colorize(:cyan)} in DigitalOcean" end end |