class Kontena::Plugin::Azure::Master::CreateCommand

Public Instance Methods

default_location() click to toggle source
# File lib/kontena/plugin/azure/master/create_command.rb, line 47
def default_location
  prompt.select("Choose location: ") do |menu|
    locations.each do |l|
      menu.choice l
    end
  end
end
default_size() click to toggle source
# File lib/kontena/plugin/azure/master/create_command.rb, line 55
def default_size
  size = prompt.select("Choose virtual machine size: ") do |menu|
    menu.default 2
    sizes.each do |s|
      menu.choice s
    end
    menu.choice 'Other'
  end
  if size == 'Other'
    size = prompt.ask("Virtual machine size? (see https://docs.microsoft.com/en-us/azure/virtual-machines/virtual-machines-windows-sizes#size-tables)")
  end
  size
end
execute() click to toggle source
# File lib/kontena/plugin/azure/master/create_command.rb, line 22
def execute
  require_relative '../../../machine/azure'
  provisioner = provisioner(subscription_id, certificate)
  provisioner.run!(
      name: name,
      ssh_key: ssh_key,
      ssl_cert: ssl_cert,
      size: size,
      virtual_network: network,
      subnet: subnet,
      location: location,
      version: version,
      vault_secret: vault_secret || SecureRandom.hex(24),
      vault_iv: vault_iv || SecureRandom.hex(24),
      initial_admin_code: SecureRandom.hex(16)
  )
end
provisioner(subscription_id, certificate) click to toggle source

@param [String] subscription_id @param [String] certificate @return [Kontena::Machine::Azure::MasterProvisioner]

# File lib/kontena/plugin/azure/master/create_command.rb, line 43
def provisioner(subscription_id, certificate)
  Kontena::Machine::Azure::MasterProvisioner.new subscription_id, certificate
end