class Oc::Run::Droplets

Public Instance Methods

change_kernel(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 391
def change_kernel(*args)
  id = args[0]
  kernel_id = args[1]
  if id.nil? or kernel_id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets change-kernel [DROPLET_ID] [KERNEL_ID]"
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    raise ArgumentError, "Argument Error - #{kernel_id}" unless kernel_id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.change_kernel(id, kernel: kernel_id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplet kernel changed".green
    end
  end
end
create_snapshot(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 217
def create_snapshot(*args)
  id = args[0]
  name = args[1]
  if id.nil? or name.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets snaphot [DROPLET_ID] [SNAPSHOT_NAME]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.snapshot(id, name: name)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Snapshot generated.".green
    end
  end
end
cycle(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 97
def cycle(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets cycle [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.power_cycle(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Power cycle has been successful".green
    end
  end
end
destroy(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 59
def destroy(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets destroy [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.destroy(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplet destroyed".green
    end
  end
end
disable_backup(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 412
def disable_backup(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets disable-backup [DROPLET_ID]"
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.disable_backups(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Backup disabled".green
    end
  end
end
down(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 117
def down(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets down [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.shutdown(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Shut down has been successful".green
    end
  end
end
enable_ipv6(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 336
def enable_ipv6(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets enable-ipv6 [DROPLET_ID]"
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.enable_ipv6(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "IPv6 Enabled".green
    end
  end
end
enable_private_network(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 431
def enable_private_network(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets enable-private-network [DROPLET_ID]"
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.enable_private_networking(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Backup disabled".green
    end
  end
end
kernels(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 355
def kernels(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets kernels [DROPLET_ID]"
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.kernels(id)
    if !result.success?
      puts "#{result.message}".red
    else
       puts "Kernels".yellow
        kernels = []

        kernels << [
          'ID',
          'Name',
          'Version'
        ]

        result.kernels.each do |kernel|
          kernels << [
            kernel.id,
            kernel.name.to_s.red,
            kernel.version.to_s
          ]
        end
      table = Terminal::Table.new :rows => kernels
      puts table
    end
  end
end
new(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 38
def new(*args)
  name = args[0]
  size = args[1]
  image_id = args[2]
  region_id = args[3]
  if name.nil? or size.nil? or image_id.nil? or region_id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets new [DROPLET_NAME] [SIZE_ID] [IMAGE_ID] [REGION_ID]".yellow
  else
    result = barge.droplet.create({:name => name, :region => region_id, :size => size, :image => image_id})
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplet created".green
    end
  end
end
off(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 137
def off(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets off [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.power_off(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Power off has been successful".green
    end
  end
end
on(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 157
def on(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets on [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.power_on(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Power on has been successful".green
    end
  end
end
reboot(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 78
def reboot(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets reboot [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.reboot(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplet rebooted".green
    end
  end
end
rebuild(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 295
def rebuild(*args)
  id = args[0]
  image_id = args[1]
  if id.nil? or image_id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets rebuild [DROPLET_ID] [IMAGE_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    raise ArgumentError, "Argument Error - #{image_id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.rebuild(id, image: image_id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplets rebuilded.".green
    end
  end
end
rename(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 316
def rename(*args)
  id = args[0]
  name = args[1]
  if id.nil? or name.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets rename [DROPLET_ID] [NEW_NAME]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.rename(id, name: name)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplets renamed.".green
    end
  end
end
reset_password(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 177
def reset_password(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets reset_password [DROPLET_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.password_reset(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Password restored. Please check your email".green
    end
  end
end
resize(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 196
def resize(*args)
  id = args[0]
  size_id = args[1]
  if id.nil? or size_id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets resize [DROPLET_ID] [SIZE_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    raise ArgumentError, "Argument Error - #{id}" unless size_id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.resize(id, size: size_id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplet resized".green
    end
  end
end
restore(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 274
def restore(*args)
  id = args[0]
  image_id = args[1]
  if id.nil? or image_id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets restore [DROPLET_ID] [IMAGE_ID]".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    raise ArgumentError, "Argument Error - #{image_id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.restore(id, image: image_id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Droplets restored.".green
    end
  end
end
run() click to toggle source
# File lib/system/run/commands/droplets.rb, line 6
def run
  result = barge.droplet.all
  if !result.success?
    puts "Error: Please check your information".red
  else
    puts "Your Droplets".yellow
    droplets = []

    droplets << [
      'ID',
      'Name',
      'IP Address',
      'Status',
      'Created At'
    ]

    result.droplets.each do |droplet|
      droplets << [
        droplet.id,
        droplet.name.to_s.red,
        droplet.networks.v4[0].ip_address.to_s.red,
        droplet.status == "active" ? "Active".green : "Deactive".red,
        droplet.created_at
      ]
    end
    table = Terminal::Table.new :rows => droplets
    puts table
  end
end
snapshots(*args) click to toggle source
# File lib/system/run/commands/droplets.rb, line 237
def snapshots(*args)
  id = args[0]
  if id.nil?
    puts "Argument Error".red
    puts "Usage".yellow
    puts "$ oc droplets snaphots [DROPLET_ID] ".yellow
  else
    raise ArgumentError, "Argument Error - #{id}" unless id =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/
    result = barge.droplet.snapshots(id)
    if !result.success?
      puts "#{result.message}".red
    else
      puts "Your Droplets".yellow
      snapshots = []
      snapshots << [
        'Name',
        'Distribution',
        'Public',
        'Created At'
      ]
      result.snapshots.each do |snapshot|
        snapshots << [
          snapshot.name.to_s.red,
          snapshot.distribution.to_s.red,
          snapshot.status.to_s == "active" ? "Active".green : "Deactive".red,
          snapshot.created_at
        ]
      end
      table = Terminal::Table.new :rows => snapshots
      puts table
    end

  end
end

Private Instance Methods

barge() click to toggle source
# File lib/system/run/commands/droplets.rb, line 453
def barge
  puts "I'm thinking, please wait..".blue
  Oc::Config.get_barge
end
config(value) click to toggle source
# File lib/system/run/commands/droplets.rb, line 449
def config(value)
  @config ||= value
end