Parent

Methods

Files

Class/Module Index [+]

Quicksearch

Capistrano::CLI

The CLI class encapsulates the behavior of capistrano when it is invoked as a command-line utility. This allows other programs to embed Capistrano and preserve its command-line semantics.

Attributes

args[R]

The array of (unparsed) command-line options

Public Class Methods

new(args) click to toggle source

Create a new CLI instance using the given array of command-line parameters to initialize it. By default, ARGV is used, but you can specify a different set of parameters (such as when embedded cap in a program):

require 'capistrano/cli'
Capistrano::CLI.parse(%W(-vvvv -f config/deploy update_code)).execute!

Note that you can also embed cap directly by creating a new Configuration instance and setting it up, The above snippet, redone using the Configuration class directly, would look like:

require 'capistrano'
require 'capistrano/cli'
config = Capistrano::Configuration.new
config.logger.level = Capistrano::Logger::TRACE
config.set(:password) { Capistrano::CLI.password_prompt }
config.load "config/deploy"
config.update_code

There may be times that you want/need the additional control offered by manipulating the Configuration directly, but generally interfacing with the CLI class is recommended.

# File lib/capistrano/cli.rb, line 37
def initialize(args)
  @args = args.dup
  $stdout.sync = true # so that Net::SSH prompts show up
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.