class Scalemail
Attributes
configuration[R]
options[R]
Public Class Methods
new(args)
click to toggle source
# File lib/scalemail.rb, line 9 def initialize(args) @options = OpenStruct.new opt_parser = OptionParser.new do |opts| opts.banner = 'Usage: scalemail -m DOCKER_MACHINE_CONFIG_PATH [options]' opts.separator '' opts.separator 'Specific options:' if args.empty? args << '-h' end opts.on('-m', '--docker-machine-config FILE', 'Docker Machine config file to load') { |cfile| @options.docker_machine_config_file = cfile } # opts.on('-c FILE', 'Docker Compose config file to load') { |cfile| @options.docker_compose_config_file = cfile } opts.on_tail('-h', '--help', 'Show this message') do puts opts exit end end opt_parser.parse!(args) config = get_config provision config end
Public Instance Methods
configure(config_file)
click to toggle source
# File lib/scalemail.rb, line 43 def configure(config_file) configuration = Configurator::Config.new(config_file) configuration end
get_config()
click to toggle source
# File lib/scalemail.rb, line 34 def get_config if @configuration.nil? config = configure @options.docker_machine_config_file return config else return @configuration end end
provision(config_tree)
click to toggle source
# File lib/scalemail.rb, line 48 def provision(config_tree) provisioner = Provisioner.new(config_tree) provisioner.provision_hosts end