Module: Pec
- Defined in:
- lib/pec.rb,
lib/pec/cli.rb,
lib/pec/init.rb,
lib/pec/logger.rb,
lib/pec/sample.rb,
lib/pec/command.rb,
lib/pec/handler.rb,
lib/pec/version.rb,
lib/pec/configure.rb
Defined Under Namespace
Modules: Command, Handler
Classes: CLI, ConfigError, Configure, Init, Logger
Constant Summary
collapse
- VERSION =
"0.7.1"
Class Method Summary
collapse
Class Method Details
.check_env ⇒ Object
51
52
53
54
55
56
57
58
59
|
# File 'lib/pec.rb', line 51
def self.check_env
%w(
OS_AUTH_URL
OS_USERNAME
OS_PASSWORD
).each do |name|
raise "please set env #{name}" unless ENV[name]
end
end
|
37
38
39
40
|
# File 'lib/pec.rb', line 37
def self.configure
load_config unless @_configure
@_configure
end
|
.init_yao(_tenant_name = nil) ⇒ Object
19
20
21
22
23
24
25
26
27
|
# File 'lib/pec.rb', line 19
def self.init_yao(_tenant_name=nil)
check_env
Yao.configure do
auth_url "#{ENV["OS_AUTH_URL"]}/tokens"
username ENV["OS_USERNAME"]
password ENV["OS_PASSWORD"]
tenant_name _tenant_name || ENV["OS_TENANT_NAME"]
end
end
|
.load_config(file_name = nil) ⇒ Object
29
30
31
32
33
34
35
|
# File 'lib/pec.rb', line 29
def self.load_config(file_name=nil)
file_name ||= 'Pec.yaml'
@_configure = []
YAML.load_file(file_name).to_hash.reject {|c| c[0].to_s.match(/^_/)}.each do |host|
@_configure << Pec::Configure.new(host)
end
end
|
.servers(host_name) ⇒ Object
42
43
44
45
46
47
48
49
|
# File 'lib/pec.rb', line 42
def self.servers(host_name)
self.configure.each do |host|
next if host_name && host.name != host_name
Pec.init_yao(host.tenant)
server = Yao::Server.list_detail.find {|s|s.name == host.name}
yield(server, host)
end
end
|