Class: Central::Cli::Nodes::Aws::CreateCommand

Inherits:
Clamp::Command
  • Object
show all
Includes:
Common, StackOptions
Defined in:
lib/central/cli/nodes/aws/create_command.rb

Instance Method Summary collapse

Methods included from StackOptions

included

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

#executeObject



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/central/cli/nodes/aws/create_command.rb', line 18

def execute
  require_api_url
  require_current_stack

  require 'central/machine/aws'
  stack = client(require_token).get("stacks/#{current_stack}")
  provisioner = Central::Machine::Aws::NodeProvisioner.new(client(require_token), access_key, secret_key, region)
  provisioner.run!(
    master_uri: api_url,
    stack_token: stack['token'],
    stack: current_stack,
    name: name,
    type: type,
    vpc: vpc_id,
    zone: zone,
    subnet: subnet_id,
    storage: storage,
    version: version,
    key_pair: key_pair
  )
end