bin/forj in forj-0.0.26 vs bin/forj in forj-0.0.27
- old
+ new
@@ -23,14 +23,15 @@
include Boot
require_relative '../lib/down.rb'
include Down
require_relative '../lib/setup.rb'
include Setup
+require_relative '../lib/ssh.rb'
+include Ssh
class Forj < Thor
-
desc 'help', 'Display forj cli help'
def help
puts 'forj cli commands'
puts ' -action:'
puts ' boot: boot a Maestro box and instruct it to provision the blueprint'
@@ -45,59 +46,52 @@
puts ' -test: this will delete everything after it finish to install the forge'
puts ' example: forj boot redstone on hpcloud as redstone01'
puts ' down: delete the Maestro box and all systems installed by the blueprint'
puts ' -name: name for the maestro box'
puts ' setup: set the credentials for forj cli'
+ puts ' -credentials:'
+ puts ' hpcloud:'
+ puts ' access_key: access key from hpcloud'
+ puts ' secret_key: secret key from hpcloud'
+ puts ' auth_uri: identity endpoint'
+ puts ' tenant_id: id for the tenant you want to use'
+ puts ' availability_zone: which availability zone will be deployed'
puts ''
- puts ' -credentials:'
- puts ' hpcloud:'
- puts ' access_key: access key from hpcloud'
- puts ' secret_key: secret key from hpcloud'
- puts ' auth_uri: identity endpoint'
- puts ' tenant_id: id for the tenant you want to use'
- puts ' availability_zone: which availability zone will be deployed'
- puts ''
end
desc 'boot', 'boot a Maestro box and instruct it to provision the blueprint'
- method_option :build_conf_dir, :aliases => '-bcd', :desc => 'Defines the build configuration directory to load the build configuration file. You can set FORJ_BLD_CONF_DIR. By default, it will look in your current directory.'
- method_option :build_conf, :aliases => '-bc', :desc => 'The build config file to load <confdir>/<BoxName>.<Config>.env. By default, uses "master" as Config.'
- method_option :branch, :aliases => '-gb', :desc => 'The build will extract from git branch name. It sets the configuration build <config> to the branch name <branch>.'
- method_option :test_box, :aliases => '-tb', :desc => 'Create test-box meta from the repository path provided.'
- method_option :git_repo, :aliases => '-gr', :desc => 'The box built will use a different git repository sent out to <user_data>. This repository needs to be read only. No keys are sent.'
- method_option :boothook, :aliases => '-b', :desc => 'By default, boothook file used is build/bin/build-tools/boothook.sh. Use this option to set another one.'
- method_option :box_name, :aliases => '-bn', :desc => 'Defines the name of the box or box image to build.'
+ method_option :build, :aliases => '-b', :desc => 'Replace the default build.sh'
+ method_option :build_config_dir, :aliases => '-bcd', :desc => 'Defines the build configuration directory to load the build configuration file. You can set FORJ_BLD_CONF_DIR. By default, it will look in your current directory.'
+ method_option :build_config, :aliases => '-bc', :desc => 'The build config file to load <confdir>/<BoxName>.<Config>.env. By default, uses "master" as Config.'
+ method_option :branch, :aliases => '-gb', :desc => 'The build will extract from git branch name. It sets the configuration build <config> to the branch name <branch>.'
+ method_option :test_box, :aliases => '-tb', :desc => 'Create test-box meta from the repository path provided.'
+ method_option :git_repo, :aliases => '-gr', :desc => 'The box built will use a different git repository sent out to <user_data>. This repository needs to be read only. No keys are sent.'
+ method_option :boothook, :aliases => '-b', :desc => 'By default, boothook file used is build/bin/build-tools/boothook.sh. Use this option to set another one.'
+ method_option :box_name, :aliases => '-bn', :desc => 'Defines the name of the box or box image to build.'
def boot(blueprint, on, cloud_provider, as, name, test = false)
- build_conf_dir = options[:build_conf_dir]
- branch = options[:branch]
- unless branch
- branch = 'master'
- end
- if options[:build_conf_dir]
- Boot::boot(blueprint, cloud_provider, name, build_conf_dir, branch, test)
- else
- Boot::boot(blueprint, cloud_provider, name, nil, nil, test)
- end
-
+ Boot.boot(blueprint, cloud_provider, name,
+ options[:build], options[:build_config_dir],
+ options[:build_config], options[:branch],
+ options[:git_repo], options[:boothook],
+ options[:box_name], test)
end
desc 'down', 'delete the Maestro box and all systems installed by the blueprint'
def down(name)
- Down::down(name)
+ Down.down(name)
end
desc 'ssh', 'connect to your forge thru ssh'
def ssh
- puts 'ssh'
+ Ssh.connect
end
desc 'setup', 'set the credentials for forj cli'
def setup
- Setup::setup
+ Setup.setup
end
-
end
Forj.start