capify-ec2 1.1.6.pre → 1.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/capify-ec2/capistrano.rb +17 -18
- data/lib/capify-ec2/version.rb +1 -1
- metadata +8 -11
@@ -1,43 +1,42 @@
|
|
1
1
|
require File.join(File.dirname(__FILE__), '../capify-ec2')
|
2
2
|
|
3
3
|
Capistrano::Configuration.instance(:must_exist).load do
|
4
|
-
def ec2_role(
|
5
|
-
|
6
|
-
instances = CapifyEc2.get_instances_by_role(
|
4
|
+
def ec2_role(role_name_or_hash)
|
5
|
+
role = role_name_or_hash.is_a?(Hash) ? role_name_or_hash : {:name => role_name_or_hash,:options => {}}
|
6
|
+
instances = CapifyEc2.get_instances_by_role(role[:name])
|
7
7
|
|
8
|
-
define_instance_roles(
|
9
|
-
define_role_roles(
|
8
|
+
define_instance_roles(role, instances)
|
9
|
+
define_role_roles(role, instances)
|
10
10
|
end
|
11
11
|
|
12
|
-
def define_instance_roles(
|
12
|
+
def define_instance_roles(role, instances)
|
13
13
|
instances.each do |instance|
|
14
14
|
task instance.name.to_sym do
|
15
15
|
set :server_address, instance.dns_name
|
16
|
-
|
16
|
+
define_role(role, instance)
|
17
17
|
end
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
|
-
def define_role_roles(
|
22
|
-
|
21
|
+
def define_role_roles(role, instances)
|
22
|
+
defined_role =
|
23
|
+
task role[:name].to_sym do
|
23
24
|
instances.each do |instance|
|
24
|
-
define_role(
|
25
|
+
define_role(role, instance)
|
25
26
|
end
|
26
27
|
end
|
27
28
|
end
|
28
29
|
|
29
|
-
def define_role(
|
30
|
+
def define_role(role, instance)
|
30
31
|
dns_names = [dns_names] if dns_names.is_a?(String)
|
31
|
-
subroles =
|
32
|
+
subroles = role[:options]
|
32
33
|
new_options = {}
|
33
34
|
subroles.each {|key, value| new_options[key] = true if value.to_s == instance.name}
|
34
35
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
role role_to_define.to_sym, dns_name
|
40
|
-
end
|
36
|
+
if new_options
|
37
|
+
role role[:name].to_sym, instance.dns_name, new_options
|
38
|
+
else
|
39
|
+
role role[:name].to_sym, instance.dns_name
|
41
40
|
end
|
42
41
|
end
|
43
42
|
|
data/lib/capify-ec2/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capify-ec2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 31
|
5
|
+
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 1
|
9
9
|
- 6
|
10
|
-
|
11
|
-
version: 1.1.6.pre
|
10
|
+
version: 1.1.6
|
12
11
|
platform: ruby
|
13
12
|
authors:
|
14
13
|
- Noah Cantor
|
@@ -17,7 +16,7 @@ autorequire:
|
|
17
16
|
bindir: bin
|
18
17
|
cert_chain: []
|
19
18
|
|
20
|
-
date: 2011-06-
|
19
|
+
date: 2011-06-10 00:00:00 +01:00
|
21
20
|
default_executable:
|
22
21
|
dependencies:
|
23
22
|
- !ruby/object:Gem::Dependency
|
@@ -104,14 +103,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
104
103
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
105
104
|
none: false
|
106
105
|
requirements:
|
107
|
-
- - "
|
106
|
+
- - ">="
|
108
107
|
- !ruby/object:Gem::Version
|
109
|
-
hash:
|
108
|
+
hash: 3
|
110
109
|
segments:
|
111
|
-
-
|
112
|
-
|
113
|
-
- 1
|
114
|
-
version: 1.3.1
|
110
|
+
- 0
|
111
|
+
version: "0"
|
115
112
|
requirements: []
|
116
113
|
|
117
114
|
rubyforge_project: capify-ec2
|