Sha256: f7766940a057808b27733e3e19df86761e9f2bc36c6c5a0a62178432c1aace9a
Contents?: true
Size: 1.3 KB
Versions: 1
Compression:
Stored size: 1.3 KB
Contents
module Capistrano module Releases # Command line interface class for Manager class. class CLI def run options = {} parser = OptionParser.new do |opts| opts.banner = 'Usage: manager [options]' opts.on('-bBUCKET', '--bucket=BUCKET', 'S3 bucket to pull/push releases.') do |v| options[:bucket] = v end opts.on('-dDEPLOY_TO', '--deploy-to=DEPLOY_TO', 'App directory to deploy to.') do |v| options[:deploy_to] = v end opts.on('-mMODE', '--mode=MODE', "Mode to run: 'push' or 'pull'") do |v| options[:mode] = v end end parser.parse! unless options[:bucket] puts('-b or --bucket is a required option.') && exit(1) end unless options[:deploy_to] puts('-d or --deploy-to is a required option.') && exit(1) end puts('-m or --mode is a required option.') && exit(1) unless options[:mode] manager = ::Capistrano::Releases::Manager.new(options) case options[:mode] when 'push' manager.push when 'pull' manager.pull else puts 'Invalid mode.' exit(1) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
capistrano-releases-0.1.0 | lib/capistrano/releases/cli.rb |