class Mist::Config
Attributes
default_distro[R]
Server config attributes
default_release[R]
Server config attributes
instance_name[R]
machine_type[R]
network[R]
servers[R]
Client
config attributes
ssh_private_key[R]
ssh_public_key[R]
startup_script_path[R]
subnet[R]
use_public_ip[R]
username[R]
zone[R]
Public Class Methods
new(path)
click to toggle source
# File lib/mist/config.rb, line 27 def initialize(path) config = YAML.load(File.read(path)) server_config = config['server'] || nil client_config = config['client'] || nil if server_config @default_distro = server_config['default_distro'] || 'ubuntu' @default_release = server_config['default_release'] || 'trusty' @username = server_config['username'] || 'mist' @ssh_public_key = server_config['ssh_public_key'] || File.join(%w(/ etc mist id_rsa.pub)) @ssh_private_key = server_config['ssh_private_key'] || File.join(%w(/ etc mist id_rsa)) @network = server_config['network'] || 'default' @subnet = server_config['subnet'] || nil @zone = server_config['zone'] || 'us-central1-a' @machine_type = server_config['machine_type'] || 'f1-micro' @instance_name = server_config['instance_name'] || 'mist' @startup_script_path = server_config['startup_scripts'] || File.join(%w(/ etc mist startup-scripts)) @use_public_ip = server_config['use_public_ip'] || true end if client_config @servers = client_config['servers'] @ssh_private_key = client_config['ssh_private_key'] || File.join(%w(/ etc mist id_rsa)) end rescue StandardError => ex Mist.logger.error "Failed to load configuration file #{path}: #{ex}" abort 'could not load configuration file' end