class Kontena::Plugin::DigitalOcean::Nodes::CreateCommand
Public Instance Methods
ask_droplet_count()
click to toggle source
# File lib/kontena/plugin/digital_ocean/nodes/create_command.rb, line 49 def ask_droplet_count if self.count.nil? prompt.ask('How many droplets?:', default: 1) else self.count end end
execute()
click to toggle source
# File lib/kontena/plugin/digital_ocean/nodes/create_command.rb, line 18 def execute suppress_warnings # until DO merges resource_kit pr #32 require 'kontena/machine/digital_ocean' require_api_url require_current_grid do_token = ask_do_token do_region = ask_droplet_region(do_token) coreos_channel = self.channel || ask_channel do_size = ask_droplet_size(do_token, do_region) do_count = ask_droplet_count do_ssh_key_id = ask_ssh_key(do_token) grid = fetch_grid provisioner = provisioner(client(require_token), do_token) provisioner.run!( master_uri: api_url, grid_token: grid['token'], grid: current_grid, ssh_key_id: do_ssh_key_id, name: name, size: do_size, count: do_count, region: do_region, version: version, channel: coreos_channel ) ensure resume_warnings end
fetch_grid()
click to toggle source
@return [Hash]
# File lib/kontena/plugin/digital_ocean/nodes/create_command.rb, line 64 def fetch_grid client(require_token).get("grids/#{current_grid}") end
provisioner(client, token)
click to toggle source
@param [Kontena::Client] client @param [String] token
# File lib/kontena/plugin/digital_ocean/nodes/create_command.rb, line 59 def provisioner(client, token) Kontena::Machine::DigitalOcean::NodeProvisioner.new(client, token) end