-
Notifications
You must be signed in to change notification settings - Fork 10
/
listEngines.rb
61 lines (46 loc) · 1.37 KB
/
listEngines.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/usr/bin/env ruby
# Brian W. Gray
# 06.09.2015
# List Engines and data associated with each.
require 'yaml'
require 'nexpose'
require 'pp'
include Nexpose
#Default Values from yaml file
config_path = File.expand_path("../conf/nexpose.yaml", __FILE__)
config = YAML.load_file(config_path)
@host = config["hostname"]
@userid = config["username"]
@password = config["passwordkey"]
@port = config["port"]
begin
nsc = Nexpose::Connection.new(@host, @userid, @password, @port)
puts 'logging into Nexpose'
begin
nsc.login
rescue ::Nexpose::APIError => err
$stderr.puts("Connection failed: #{err.reason}")
exit(1)
end
puts 'logged into Nexpose'
at_exit { nsc.logout }
nsc.engines.each do |engine|
engineLoad = Engine.load(nsc,engine.id)
# pp(engineLoad)
puts("Engine: #{engine.name}-#{engine.id} Status: #{engine.status}")
engineLoad.sites.each {|siteData|
siteInfoID = siteData.id
siteDetail = Site.load(nsc, siteInfoID)
# pp(siteDetail)
siteName = siteDetail.name
puts " Site ID: #{siteInfoID} Site Name: #{siteName}"
}
end
=begin
@nsc.list_engine_pools.each do |engine|
puts(" EnginePool: #{engine.name}-#{engine.id}")
engineLoad = Engine.load(@nsc,engine.id)
pp(engineLoad)
end
=end
end