Class: Capistrano::Command

Class | Capistrano::Command
In: | lib/capistrano/command.rb
Parent: | Object

This class encapsulates a single command to be executed on a set of remote machines, in parallel.

### Methods

new process process! stop!

### Included Modules

Processable

### Classes and Modules

Class Capistrano::Command::Tree

### Attributes

options | [R] |
sessions | [R] |
tree | [R] |

### Public Class methods

new(tree, sessions, options={}, &block)

Instantiates a new command object. The `command` must be a string containing the command to execute. `sessions` is an array of Net::SSH session instances, and `options` must be a hash containing any of the following keys:

- `logger`: (optional), a Capistrano::Logger instance
- `data`: (optional), a string to be sent to the command via it‘s stdin
- `env`: (optional), a string or hash to be interpreted as environment variables that should be defined for this command invocation.

process(tree, sessions, options={})

### Public Instance methods

process!()

Processes the command in parallel on all specified hosts. If the command fails (non-zero return code) on any of the hosts, this will raise a Capistrano::CommandError.

stop!()

Force the command to stop processing, by closing all open channels associated with this command.

[Validate]