Class: Kontena::Plugin::Azure::Nodes::CreateCommand

Inherits:
Command
  • Object
show all
Includes:
Cli::Common, Cli::GridOptions
Defined in:
lib/kontena/plugin/azure/nodes/create_command.rb

Instance Method Summary collapse

Instance Method Details

#executeObject



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/kontena/plugin/azure/nodes/create_command.rb', line 17

def execute
  require_api_url
  require_current_grid

  require 'kontena/machine/azure'
  grid = fetch_grid
  provisioner = provisioner(client(require_token), subscription_id, certificate)
  provisioner.run!(
    master_uri: api_url,
    grid_token: grid['token'],
    grid: current_grid,
    ssh_key: ssh_key,
    name: name,
    size: size,
    virtual_network: network,
    subnet: subnet,
    location: location,
    version: version
  )
end

#fetch_gridHash

Returns:

  • (Hash)


47
48
49
# File 'lib/kontena/plugin/azure/nodes/create_command.rb', line 47

def fetch_grid
  client(require_token).get("grids/#{current_grid}")
end

#provisioner(client, subscription_id, certificate) ⇒ Kontena::Machine::Azure::NodeProvisioner

Parameters:

  • client (Kontena::Client)
  • subscription_id (String)
  • certificate (String)

Returns:



42
43
44
# File 'lib/kontena/plugin/azure/nodes/create_command.rb', line 42

def provisioner(client, subscription_id, certificate)
  Kontena::Machine::Azure::NodeProvisioner.new client, subscription_id, certificate
end