Class: Capistrano::Distribution
- Inherits:
-
Object
- Object
- Capistrano::Distribution
- Defined in:
- lib/capistrano/distribution.rb,
lib/capistrano/distribution/version.rb,
lib/capistrano/distribution/distributor.rb,
lib/capistrano/distribution/distributor/tar.rb,
lib/capistrano/distribution/distributor/zip.rb,
lib/capistrano/distribution/distributor/abstract.rb,
lib/capistrano/distribution/distributor/curl_tar.rb,
lib/capistrano/distribution/distributor/curl_zip.rb,
lib/capistrano/distribution/distributor/git_pull.rb,
lib/capistrano/distribution/distributor/git_push.rb,
lib/capistrano/distribution/distributor/tar_helper.rb,
lib/capistrano/distribution/distributor/abstract_git.rb,
lib/capistrano/distribution/distributor/abstract_curl.rb,
lib/capistrano/distribution/distributor/abstract_archiver.rb
Overview
A list of distributors to run.
Defined Under Namespace
Modules: Distributor
Constant Summary collapse
- VERSION =
The release version of this gem.
'0.4.3'
Instance Attribute Summary collapse
-
#context ⇒ Object
readonly
private
The Capistrano context object.
-
#distributors ⇒ Object
readonly
private
The list of distributors.
Instance Method Summary collapse
-
#check ⇒ Object
Calls the #check method of each distributor in the list.
-
#distribute ⇒ Object
Calls the #distribute method of each distributor in the list.
-
#initialize(context) ⇒ Distribution
constructor
Creates the list of distributors to run based on the definition found in the
:distribution
key of context. -
#release_id ⇒ Object
An identifier for a release.
Constructor Details
#initialize(context) ⇒ Distribution
Creates the list of distributors to run based on the definition found in the :distribution
key of context. The value associated the distribution
can be 1 of 3 types:
-
String
-
Array of Arrays of distributor initialization arguments
-
Array of distributor instances
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/capistrano/distribution.rb', line 27 def initialize(context) @context = context distributor_list = context.fetch(:distribution) case distributor_list when String distributor_list = [[distributor_list]] when Array unless distributor_list.all? { |distributor| Array === distributor } distributor_list = [distributor_list] end end @distributors = distributor_list.map do |distributor| Distributor.create(context, distributor) end end |
Instance Attribute Details
#context ⇒ Object (readonly, private)
The Capistrano context object.
71 72 73 |
# File 'lib/capistrano/distribution.rb', line 71 def context @context end |
#distributors ⇒ Object (readonly, private)
The list of distributors.
67 68 69 |
# File 'lib/capistrano/distribution.rb', line 67 def distributors @distributors end |
Instance Method Details
#check ⇒ Object
Calls the #check method of each distributor in the list.
53 54 55 |
# File 'lib/capistrano/distribution.rb', line 53 def check distributors.all? { |distributor| distributor.check } end |
#distribute ⇒ Object
Calls the #distribute method of each distributor in the list.
59 60 61 |
# File 'lib/capistrano/distribution.rb', line 59 def distribute distributors.each { |distributor| distributor.distribute } end |
#release_id ⇒ Object
An identifier for a release.
47 48 49 |
# File 'lib/capistrano/distribution.rb', line 47 def release_id context.fetch(:release_id) end |