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.0'
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
:distributionkey 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
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/capistrano/distribution.rb', line 21 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.
65 66 67 |
# File 'lib/capistrano/distribution.rb', line 65 def context @context end |
#distributors ⇒ Object (readonly, private)
The list of distributors.
61 62 63 |
# File 'lib/capistrano/distribution.rb', line 61 def distributors @distributors end |
Instance Method Details
#check ⇒ Object
Calls the #check method of each distributor in the list.
47 48 49 |
# File 'lib/capistrano/distribution.rb', line 47 def check distributors.all? { |distributor| distributor.check } end |
#distribute ⇒ Object
Calls the #distribute method of each distributor in the list.
53 54 55 |
# File 'lib/capistrano/distribution.rb', line 53 def distribute distributors.each { |distributor| distributor.distribute } end |
#release_id ⇒ Object
An identifier for a release.
41 42 43 |
# File 'lib/capistrano/distribution.rb', line 41 def release_id context.fetch(:release_id) end |