Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

51 lines (41 sloc) 1.848 kb
require 'capistrano/logger'
require 'capistrano/configuration/alias_task'
require 'capistrano/configuration/callbacks'
require 'capistrano/configuration/connections'
require 'capistrano/configuration/execution'
require 'capistrano/configuration/loading'
require 'capistrano/configuration/log_formatters'
require 'capistrano/configuration/namespaces'
require 'capistrano/configuration/roles'
require 'capistrano/configuration/servers'
require 'capistrano/configuration/variables'
require 'capistrano/configuration/actions/file_transfer'
require 'capistrano/configuration/actions/inspect'
require 'capistrano/configuration/actions/invocation'
module Capistrano
# Represents a specific Capistrano configuration. A Configuration instance
# may be used to load multiple recipe files, define and describe tasks,
# define roles, and set configuration variables.
class Configuration
# The logger instance defined for this configuration.
attr_accessor :debug, :logger, :dry_run, :preserve_roles
def initialize(options={}) #:nodoc:
@debug = false
@dry_run = false
@preserve_roles = false
@logger = Logger.new(options)
end
# make the DSL easier to read when using lazy evaluation via lambdas
alias defer lambda
# The includes must come at the bottom, since they may redefine methods
# defined in the base class.
include AliasTask, Connections, Execution, Loading, LogFormatters, Namespaces, Roles, Servers, Variables
# Mix in the actions
include Actions::FileTransfer, Actions::Inspect, Actions::Invocation
# Must mix last, because it hooks into previously defined methods
include Callbacks
((self.instance_methods & Kernel.methods) - Namespaces::Namespace.instance_methods).each do |name|
Namespaces::Namespace.send(:undef_method, name)
end
end
end
Jump to Line
Something went wrong with that request. Please try again.