cap-rightscale 0.0.8 → 0.0.9

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.8
1
+ 0.0.9
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{cap-rightscale}
8
- s.version = "0.0.8"
8
+ s.version = "0.0.9"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Satoshi Ohki"]
@@ -9,6 +9,15 @@ module Capistrano
9
9
  @rs_confpath = path
10
10
  end
11
11
 
12
+ # register deploy host's /etc/hosts OR dns record(replace 's/ #/-000/' to ServerArray name)
13
+ def use_nick(bool=false)
14
+ @use_nick = bool
15
+ end
16
+
17
+ def enable_hostname
18
+ @use_nick ||= false
19
+ end
20
+
12
21
  def connect
13
22
  @auth ||= open(get_rs_confpath) {|f| YAML.load(f)}
14
23
  @conn ||= RightResource::Connection.new do |c|
@@ -46,12 +55,12 @@ start = Time.now
46
55
  params.delete(:array_id) # remove rightscale's parameters
47
56
 
48
57
  host_list = ServerArray.instances(array.id).select {|i| i[:state] == "operational"}.map do |instance|
58
+ hostname = instance[:nickname].sub(/ #[0-9]+$/, "-%03d" % instance[:nickname].match(/[0-9]+$/).to_s.to_i)
49
59
  ip = instance[:private_ip_address]
50
- logger.info("Found server: #{instance[:nickname]}(#{ip})")
51
- # server(ip, role, params)
52
- ip
60
+ logger.info("Found server: #{hostname}(#{ip})")
61
+ enable_hostname ? hostname : ip
53
62
  end
54
- role(role, host_list.join(','), params) if host_list
63
+ role(role, params) { host_list } if host_list
55
64
  puts "Time: #{Time.now - start}"
56
65
  host_list || []
57
66
  end
@@ -82,12 +91,12 @@ start = Time.now
82
91
  params.delete(:name_prefix) if params.has_key?(:name_prefix)
83
92
 
84
93
  host_list = srvs.map do |server|
94
+ hostname = server[:nickname]
85
95
  ip = server[:settings][:private_ip_address]
86
- logger.info("Found server: #{server[:nickname]}(#{ip})")
87
- # server(ip, role, params)
88
- ip
96
+ logger.info("Found server: #{hostname}(#{ip})")
97
+ enable_hostname ? hostname : ip
89
98
  end
90
- role(role, host_list.join(','), params) if host_list
99
+ role(role, params) { host_list } if host_list
91
100
  puts "Time: #{Time.now - start}"
92
101
  host_list || []
93
102
  end
@@ -130,13 +139,13 @@ start = Time.now
130
139
  host_list = []
131
140
  if found_ids.size > 0
132
141
  host_list = srvs.select {|s| found_ids.include?(s[:href].match(/[0-9]+$/).to_s)}.map do |server|
142
+ hostname = server[:nickname]
133
143
  ip = server[:settings][:private_ip_address]
134
144
  logger.info("Found server: #{server[:nickname]}(#{ip})")
135
- #server(ip, role, params)
136
- ip
145
+ enable_hostname ? hostname : ip
137
146
  end
138
147
 
139
- role(role, host_list.join(','), params) if host_list
148
+ role(role, params) { host_list } if host_list
140
149
  end
141
150
  puts "Time: #{Time.now - start}"
142
151
  host_list || []
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cap-rightscale
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 13
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 8
10
- version: 0.0.8
9
+ - 9
10
+ version: 0.0.9
11
11
  platform: ruby
12
12
  authors:
13
13
  - Satoshi Ohki