Sha256: fd89cb7b829594795554d4f8cf2d75bfc5bd6c08ff3e30ef4a34e43224a6be69

Contents?: true

Size: 1.64 KB

Versions: 18

Compression:

Stored size: 1.64 KB

Contents

require 'securerandom'

module Kontena::Cli::Master::Azure
  class CreateCommand < Clamp::Command
    include Kontena::Cli::Common

    option "--subscription-id", "SUBSCRIPTION ID", "Azure subscription id", required: true
    option "--subscription-cert", "CERTIFICATE", "Path to Azure management certificate", attribute_name: :certificate, required: true
    option "--size", "SIZE", "SIZE", default: 'Small'
    option "--network", "NETWORK", "Virtual Network name"
    option "--subnet", "SUBNET", "Subnet name"
    option "--ssh-key", "SSH KEY", "SSH private key file", required: true
    option "--password", "PASSWORD", "Password"
    option "--location", "LOCATION", "Location", default: 'West Europe'
    option "--ssl-cert", "SSL CERT", "SSL certificate file"
    option "--vault-secret", "VAULT_SECRET", "Secret key for Vault"
    option "--vault-iv", "VAULT_IV", "Initialization vector for Vault"
    option "--auth-provider-url", "AUTH_PROVIDER_URL", "Define authentication provider url"
    option "--version", "VERSION", "Define installed Kontena version", default: 'latest'

    def execute
      require 'kontena/machine/azure'
      provisioner = Kontena::Machine::Azure::MasterProvisioner.new(subscription_id, certificate)
      provisioner.run!(
          password: password,
          ssh_key: ssh_key,
          ssl_cert: ssl_cert,
          size: size,
          virtual_network: network,
          subnet: subnet,
          location: location,
          auth_server: auth_provider_url,
          version: version,
          vault_secret: vault_secret || SecureRandom.hex(24),
          vault_iv: vault_iv || SecureRandom.hex(24)
      )
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
kontena-cli-0.13.4 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.13.3 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.13.2 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.13.1 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.13.0.1 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.13.0 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.12.3 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.12.2 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.12.1 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.12.0 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.7 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.6 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.5 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.4 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.3 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.2 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.1 lib/kontena/cli/master/azure/create_command.rb
kontena-cli-0.11.0 lib/kontena/cli/master/azure/create_command.rb