conan 0.4.3 → 0.4.4
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/conan/cloud/aws/provision.rb +23 -3
- data/lib/conan/cloud/aws/security_group.rb +2 -2
- data/lib/conan/deployment/deploy.rb +1 -1
- data/lib/conan/version.rb +1 -1
- metadata +72 -51
@@ -246,12 +246,32 @@ module AWS
|
|
246
246
|
if lb.nil?
|
247
247
|
puts "Creating Elastic Load Balancer #{elb_name}"
|
248
248
|
|
249
|
-
|
250
|
-
|
251
|
-
|
249
|
+
listeners = [];
|
250
|
+
|
251
|
+
if new_conf[:listeners].nil?
|
252
|
+
list = Fog::AWS[:elb].listeners.new()
|
253
|
+
listeners << { 'Listener' => list.to_params, 'PolicyNames' => [] }
|
254
|
+
else
|
255
|
+
new_conf[:listeners].each do |listener|
|
256
|
+
listener = listener.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
|
257
|
+
list = Fog::AWS[:elb].listeners.new(listener)
|
258
|
+
listeners << { 'Listener' => list.to_params, 'PolicyNames' => [] }
|
259
|
+
end
|
260
|
+
end
|
252
261
|
|
262
|
+
lb = elb.load_balancers.create(:id => elb_name, :availability_zones => zones, 'ListenerDescriptions' => listeners)
|
263
|
+
|
253
264
|
compute = Fog::Compute.new(:provider => :aws, :region => region)
|
254
265
|
|
266
|
+
new_conf[:ingress_for].each do |ingress|
|
267
|
+
ingress = ingress.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
|
268
|
+
port = ingress.delete(:port)
|
269
|
+
sg_name = ec2_name_tag(ingress[:group_name])
|
270
|
+
sg = compute.security_groups.get(sg_name)
|
271
|
+
lbsgparams = {:group_name => lb.source_group['GroupName'], :user_id => lb.source_group['OwnerAlias']}
|
272
|
+
sg.authorize_ip_permission(Range.new(port.to_i,port.to_i),lbsgparams)
|
273
|
+
end unless new_conf[:ingress_for].nil?
|
274
|
+
|
255
275
|
inst_servers = new_conf[:servers].map { |s| ec2_name_tag(s) } unless new_conf[:servers].nil?
|
256
276
|
|
257
277
|
list_stage_servers(region).each do |server|
|
@@ -1,10 +1,10 @@
|
|
1
1
|
require 'rubygems'
|
2
|
-
require 'fog/aws/models/compute/security_group'
|
2
|
+
# require 'fog/aws/models/compute/security_group'
|
3
3
|
|
4
4
|
module Fog
|
5
5
|
module Compute
|
6
6
|
class AWS
|
7
|
-
class SecurityGroup
|
7
|
+
class SecurityGroup < Fog::Model
|
8
8
|
def authorize_ip_permission(port_range, options = {})
|
9
9
|
requires :name
|
10
10
|
|
data/lib/conan/version.rb
CHANGED
metadata
CHANGED
@@ -1,59 +1,73 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: conan
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 4
|
8
|
+
- 4
|
9
|
+
version: 0.4.4
|
6
10
|
platform: ruby
|
7
|
-
authors:
|
11
|
+
authors:
|
8
12
|
- Paul Battley
|
9
13
|
- Stuart Eccles
|
10
14
|
autorequire:
|
11
15
|
bindir: bin
|
12
16
|
cert_chain: []
|
13
|
-
|
14
|
-
|
15
|
-
|
17
|
+
|
18
|
+
date: 2012-03-27 00:00:00 +01:00
|
19
|
+
default_executable:
|
20
|
+
dependencies:
|
21
|
+
- !ruby/object:Gem::Dependency
|
16
22
|
name: json
|
17
|
-
|
18
|
-
|
19
|
-
requirements:
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
20
26
|
- - ~>
|
21
|
-
- !ruby/object:Gem::Version
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
segments:
|
29
|
+
- 1
|
30
|
+
- 6
|
31
|
+
- 1
|
22
32
|
version: 1.6.1
|
23
33
|
type: :runtime
|
24
|
-
|
25
|
-
|
26
|
-
- !ruby/object:Gem::Dependency
|
34
|
+
version_requirements: *id001
|
35
|
+
- !ruby/object:Gem::Dependency
|
27
36
|
name: capistrano
|
28
|
-
requirement: &70333738810280 !ruby/object:Gem::Requirement
|
29
|
-
none: false
|
30
|
-
requirements:
|
31
|
-
- - ! '>='
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
34
|
-
type: :runtime
|
35
37
|
prerelease: false
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
version:
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - "="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
segments:
|
43
|
+
- 2
|
44
|
+
- 11
|
45
|
+
- 2
|
46
|
+
version: 2.11.2
|
45
47
|
type: :runtime
|
48
|
+
version_requirements: *id002
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: fog
|
46
51
|
prerelease: false
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
52
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
segments:
|
57
|
+
- 0
|
58
|
+
version: "0"
|
59
|
+
type: :runtime
|
60
|
+
version_requirements: *id003
|
61
|
+
description: Set up a project to enable the provision of infrastructure through AWS and the configuration of servers using Chef via Capistrano.
|
62
|
+
email:
|
51
63
|
- stuart@madebymany.co.uk
|
52
|
-
executables:
|
64
|
+
executables:
|
53
65
|
- conan
|
54
66
|
extensions: []
|
67
|
+
|
55
68
|
extra_rdoc_files: []
|
56
|
-
|
69
|
+
|
70
|
+
files:
|
57
71
|
- bin/conan
|
58
72
|
- lib/conan/capistrano.rb
|
59
73
|
- lib/conan/cloud/aws/autoscale.rb
|
@@ -92,28 +106,35 @@ files:
|
|
92
106
|
- lib/conan/template/deploy/chef/solo.rb
|
93
107
|
- lib/conan/version.rb
|
94
108
|
- README.md
|
109
|
+
has_rdoc: true
|
95
110
|
homepage: http://github.com/madebymany/conan
|
96
111
|
licenses: []
|
112
|
+
|
97
113
|
post_install_message:
|
98
114
|
rdoc_options: []
|
99
|
-
|
115
|
+
|
116
|
+
require_paths:
|
100
117
|
- lib
|
101
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
requirements:
|
110
|
-
- -
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
|
118
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - ">="
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
segments:
|
123
|
+
- 0
|
124
|
+
version: "0"
|
125
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
126
|
+
requirements:
|
127
|
+
- - ">="
|
128
|
+
- !ruby/object:Gem::Version
|
129
|
+
segments:
|
130
|
+
- 0
|
131
|
+
version: "0"
|
113
132
|
requirements: []
|
133
|
+
|
114
134
|
rubyforge_project:
|
115
|
-
rubygems_version: 1.
|
135
|
+
rubygems_version: 1.3.6
|
116
136
|
signing_key:
|
117
137
|
specification_version: 3
|
118
138
|
summary: Conan The Deployer
|
119
139
|
test_files: []
|
140
|
+
|