cloud_info 0.1.2 → 0.1.3
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/Rakefile +1 -3
- data/gemspec.rb +1 -1
- data/lib/cloud_info.rb +1 -1
- data/lib/cloud_info/instances.rb +12 -2
- metadata +3 -4
- data/config/cloud_info.yml +0 -12
data/Rakefile
CHANGED
@@ -14,10 +14,8 @@ end
|
|
14
14
|
desc "Install gem"
|
15
15
|
task :install do
|
16
16
|
Rake::Task['gem'].invoke
|
17
|
-
$stdout.puts "Use sudo?"
|
18
|
-
sudo = ($stdin.gets.downcase[0..0] == 'y') ? 'sudo ' : ''
|
19
17
|
$stdout.puts "Installing gem..."
|
20
|
-
|
18
|
+
`gem install pkg/#{GEM_NAME}*.gem`
|
21
19
|
`rm -Rf pkg`
|
22
20
|
end
|
23
21
|
|
data/gemspec.rb
CHANGED
data/lib/cloud_info.rb
CHANGED
@@ -12,7 +12,7 @@ class CloudInfo
|
|
12
12
|
end
|
13
13
|
|
14
14
|
# if a cache exist it uses it instead of finding the servers
|
15
|
-
def hosts(use_cache =
|
15
|
+
def hosts(use_cache = false)
|
16
16
|
# check yaml file first
|
17
17
|
if use_cache and File.exist?(@cache_path)
|
18
18
|
@hosts = (CloudInfo.read_yaml(@cache_path) || {})[env_name]
|
data/lib/cloud_info/instances.rb
CHANGED
@@ -43,10 +43,16 @@ class CloudInfo
|
|
43
43
|
|
44
44
|
def connect_to_servers
|
45
45
|
thread = Thread.current
|
46
|
-
|
46
|
+
hosts_with_blanks = instances.select{|i| i[:aws_state] == 'running'}.collect {|i| i[:dns_name]}
|
47
|
+
hosts = hosts_with_blanks.select{|i| i[:dns_name] != ""}
|
48
|
+
if hosts_with_blanks.size != hosts.size
|
49
|
+
puts "WARNING: some hosts do not have dns_name's yet, amazon is not yet ready"
|
50
|
+
end
|
51
|
+
|
47
52
|
threads = hosts.collect do |host|
|
48
53
|
Thread.new {
|
49
54
|
@sessions << Net::SSH.start(host, @user, {:keys => @private_key})
|
55
|
+
@sessions
|
50
56
|
}
|
51
57
|
end
|
52
58
|
threads.collect {|t| t.join}
|
@@ -64,9 +70,13 @@ class CloudInfo
|
|
64
70
|
|
65
71
|
def execute_on_servers
|
66
72
|
connect_to_servers
|
73
|
+
threads = []
|
67
74
|
sessions.each do |ssh|
|
68
|
-
|
75
|
+
threads << Thread.new {
|
76
|
+
yield(ssh)
|
77
|
+
}
|
69
78
|
end
|
79
|
+
threads.collect{|t| t.join}
|
70
80
|
end
|
71
81
|
|
72
82
|
# builds up the hosts hash
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 3
|
9
|
+
version: 0.1.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Tung Nguyen
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-03-
|
17
|
+
date: 2010-03-07 00:00:00 -08:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -69,7 +69,6 @@ extra_rdoc_files:
|
|
69
69
|
- README.markdown
|
70
70
|
files:
|
71
71
|
- bin/cloud_info
|
72
|
-
- config/cloud_info.yml
|
73
72
|
- gemspec.rb
|
74
73
|
- lib/cloud_info/instances.rb
|
75
74
|
- lib/cloud_info.rb
|
data/config/cloud_info.yml
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
---
|
2
|
-
prod_br:
|
3
|
-
prod_br_app0: 184.73.240.218
|
4
|
-
prod_br_util0: ec2-174-129-69-169.compute-1.amazonaws.com
|
5
|
-
prod_br_memcached0: ec2-204-236-244-26.compute-1.amazonaws.com
|
6
|
-
prod_br_util1: ec2-174-129-111-60.compute-1.amazonaws.com
|
7
|
-
prod_br_memcached1: ec2-184-73-18-219.compute-1.amazonaws.com
|
8
|
-
prod_br_app1: ec2-75-101-183-44.compute-1.amazonaws.com
|
9
|
-
prod_br_app2: ec2-174-129-55-203.compute-1.amazonaws.com
|
10
|
-
prod_br_app3: ec2-184-73-5-255.compute-1.amazonaws.com
|
11
|
-
prod_br_db0: ec2-174-129-47-164.compute-1.amazonaws.com
|
12
|
-
prod_br_db1: ec2-72-44-44-156.compute-1.amazonaws.com
|