vcli 0.1.7 → 0.1.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/vcli/cli/show.rb +83 -18
- data/lib/vcli/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 777c5805f03b65b99a01a62a9f87ea2464cdc97b
|
4
|
+
data.tar.gz: 90aac2b9a899849c3929af7a2002ceab32e0a562
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d4148d7a11dc720b0bcbc73ac3afa900b3d783a7b7917b2843af1e4635ab402ded5d65b77026e3734050ce018403f94530cb36a18f8e8bbd90f580abc686d9bc
|
7
|
+
data.tar.gz: 2fc681186b3e12df579e2ac9f51fe294d6055873323bdf29117133facf9ceaae0aea424bf0de26db412f883fd9b957d405e68ea0490821e9968c4eb64ea871b1
|
data/lib/vcli/cli/show.rb
CHANGED
@@ -12,11 +12,12 @@
|
|
12
12
|
############################################################################
|
13
13
|
# 16072015 # 0.1 # Initial Creation
|
14
14
|
############################################################################
|
15
|
+
# 20072015 # 0.2 # Added Virtual Machine functionality
|
16
|
+
############################################################################
|
15
17
|
|
16
18
|
module Vcli
|
17
19
|
module CLI
|
18
20
|
class Show < Thor
|
19
|
-
|
20
21
|
# Data Centers
|
21
22
|
desc "datacenters", "Show all datacenters"
|
22
23
|
def datacenters( )
|
@@ -27,7 +28,6 @@ module Vcli
|
|
27
28
|
puts "#{l.name} \t - #{l.id} \t - #{l.location}"
|
28
29
|
}
|
29
30
|
end
|
30
|
-
|
31
31
|
# Virtual Appliances
|
32
32
|
desc "virtualappliances", "Show all virtualappliances"
|
33
33
|
method_option :vdc, :type => :string
|
@@ -39,8 +39,8 @@ module Vcli
|
|
39
39
|
vdc=options[:vdc].to_s
|
40
40
|
if vdc.length != 0
|
41
41
|
link2=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + vdc + '/virtualappliances' , :type => 'application/vnd.abiquo.virtualappliances+json')
|
42
|
-
|
43
|
-
|
42
|
+
virtualappliance=abq.list(link2)
|
43
|
+
virtualappliance.each { |l|
|
44
44
|
puts "#{vdc},#{l.name},#{l.id}"
|
45
45
|
}
|
46
46
|
# If no --vdc parameter passwd
|
@@ -48,18 +48,17 @@ module Vcli
|
|
48
48
|
# Cycle through all virtualdatacenters
|
49
49
|
link=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters',
|
50
50
|
:type => 'application/vnd.abiquo.virtualdatacenters+json')
|
51
|
-
|
51
|
+
virtualdatacenter=abq.list(link)
|
52
52
|
# Cycle through all virtual appliances in virtual datacenter
|
53
|
-
|
53
|
+
virtualdatacenter.each { |l|
|
54
54
|
link2=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + l.id.to_s + '/virtualappliances' , :type => 'application/vnd.abiquo.virtualappliances+json')
|
55
|
-
|
56
|
-
|
55
|
+
virtualappliance=abq.list(link2)
|
56
|
+
virtualappliance.each { |m|
|
57
57
|
puts "#{l.id},#{m.name},#{m.id}"
|
58
58
|
}
|
59
59
|
}
|
60
60
|
end
|
61
61
|
end
|
62
|
-
|
63
62
|
# Users
|
64
63
|
desc "users", "Show all users within your account"
|
65
64
|
def users( )
|
@@ -67,7 +66,7 @@ module Vcli
|
|
67
66
|
:abiquo_username => Vcli::user,
|
68
67
|
:abiquo_password => Vcli::password)
|
69
68
|
abq.user
|
70
|
-
enterprise=abq.user.link(:enterprise).get
|
69
|
+
#enterprise=abq.user.link(:enterprise).get
|
71
70
|
link2=AbiquoAPI::Link.new(:href => 'api/admin/enterprises/' + enterprise.id.to_s + '/users' , :type => 'application/vnd.abiquo.users+json')
|
72
71
|
users=abq.list(link2)
|
73
72
|
puts "UserID,Firstname,Surname,Email"
|
@@ -75,34 +74,30 @@ module Vcli
|
|
75
74
|
puts "#{m.id},#{m.name},#{m.surname},#{m.email}"
|
76
75
|
}
|
77
76
|
end
|
78
|
-
|
79
77
|
# Enterprise
|
80
78
|
desc "enterprise", "Show Enterprise details"
|
81
79
|
def enterprise( )
|
82
80
|
abq = AbiquoAPI.new(:abiquo_api_url => Vcli::target, :abiquo_username => Vcli::user, :abiquo_password => Vcli::password)
|
83
81
|
link=AbiquoAPI::Link.new(:href => 'api/admin/enterprises',
|
84
82
|
:type => 'application/vnd.abiquo.enterprises+json')
|
85
|
-
|
86
|
-
|
83
|
+
enterprises=abq.list(link)
|
84
|
+
enterprises.each { |l|
|
87
85
|
puts "#{l.id} \t - #{l.name}"
|
88
86
|
}
|
89
87
|
end
|
90
|
-
|
91
88
|
# Resources
|
92
89
|
desc "resources", "Show resources usage details"
|
93
90
|
def resources( )
|
94
|
-
command = "showing resources details"
|
91
|
+
command = "TBC - showing resources details"
|
95
92
|
puts command
|
96
93
|
end
|
97
|
-
|
98
94
|
# Resource Limits
|
99
95
|
#
|
100
96
|
desc "limits", "Show limit details"
|
101
97
|
def limits( )
|
102
|
-
command = "showing limit details"
|
98
|
+
command = "TBC - showing limit details"
|
103
99
|
puts command
|
104
100
|
end
|
105
|
-
|
106
101
|
# Virtual Datacenters
|
107
102
|
desc "virtualdatacenters", "show configured Virtual Data Centers"
|
108
103
|
def virtualdatacenters( )
|
@@ -116,6 +111,76 @@ module Vcli
|
|
116
111
|
puts "#{l.id} \t - #{l.name}"
|
117
112
|
}
|
118
113
|
end
|
114
|
+
# Virtual Machines
|
115
|
+
desc "virtualmachines", "show Virtual Machines"
|
116
|
+
method_option :va, :type => :string
|
117
|
+
method_option :vdc, :type => :string
|
118
|
+
def virtualmachines( )
|
119
|
+
abq = AbiquoAPI.new(:abiquo_api_url => Vcli::target,
|
120
|
+
:abiquo_username => Vcli::user,
|
121
|
+
:abiquo_password => Vcli::password)
|
122
|
+
# If --vdc parameter passed
|
123
|
+
va=options[:va].to_s
|
124
|
+
vdc=options[:vdc].to_s
|
125
|
+
if va.length == 0 && vdc.length == 0
|
126
|
+
# Cycle through all virtualdatacenters
|
127
|
+
link=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters',
|
128
|
+
:type => 'application/vnd.abiquo.virtualdatacenters+json')
|
129
|
+
virtualdatacenters=abq.list(link)
|
130
|
+
# Cycle through all virtual appliances in virtual datacenter
|
131
|
+
virtualdatacenters.each { |l|
|
132
|
+
puts "- VDC - #{l.id} "
|
133
|
+
link2=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + l.id.to_s + '/virtualappliances' , :type => 'application/vnd.abiquo.virtualappliances+json')
|
134
|
+
virtualappliances=abq.list(link2)
|
135
|
+
virtualappliances.each { |m|
|
136
|
+
puts " - Virtual Appliance - #{m.name} - VA ID - #{m.id}"
|
137
|
+
link3=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + l.id.to_s + '/virtualappliances/' + m.id.to_s + '/virtualmachines' , :type => 'application/vnd.abiquo.virtualmachines+json')
|
138
|
+
virtualmachines=abq.list(link3)
|
139
|
+
virtualmachines.each { |n|
|
140
|
+
puts " - ID: #{n.id}, UUID: #{n.uuid}"
|
141
|
+
puts " - Name: #{n.label}"
|
142
|
+
puts " - CPU: #{n.cpu} RAM: #{n.ram} MB"
|
143
|
+
disksizeInGB = n.hdInBytes/(1024**3)
|
144
|
+
puts " - HD Size: #{disksizeInGB} GB"
|
145
|
+
puts " - State: #{n.state}"
|
146
|
+
}
|
147
|
+
}
|
148
|
+
}
|
149
|
+
elsif vdc.length != 0 && va.length == 0
|
150
|
+
puts "- VDC - #{vdc.to_s} "
|
151
|
+
link2=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + vdc.to_s + '/virtualappliances' , :type => 'application/vnd.abiquo.virtualappliances+json')
|
152
|
+
virtualappliances=abq.list(link2)
|
153
|
+
virtualappliances.each { |m|
|
154
|
+
puts " - Virtual Appliance - #{m.name} - VA ID - #{m.id}"
|
155
|
+
link3=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + vdc.to_s + '/virtualappliances/' + m.id.to_s + '/virtualmachines' , :type => 'application/vnd.abiquo.virtualmachines+json')
|
156
|
+
virtualmachines=abq.list(link3)
|
157
|
+
virtualmachines.each { |n|
|
158
|
+
puts " - ID: #{n.id}, UUID: #{n.uuid}"
|
159
|
+
puts " - Name: #{n.label}"
|
160
|
+
puts " - CPU: #{n.cpu} RAM: #{n.ram} MB"
|
161
|
+
disksizeInGB = n.hdInBytes/(1024**3)
|
162
|
+
puts " - HD Size: #{disksizeInGB} GB"
|
163
|
+
puts " - State: #{n.state}"
|
164
|
+
}
|
165
|
+
}
|
166
|
+
elsif vdc.length != 0 && va.length != 0
|
167
|
+
link3=AbiquoAPI::Link.new(:href => 'api/cloud/virtualdatacenters/' + vdc.to_s + '/virtualappliances/' + va.to_s + '/virtualmachines' , :type => 'application/vnd.abiquo.virtualmachines+json')
|
168
|
+
virtualmachines=abq.list(link3)
|
169
|
+
virtualmachines.each { |n|
|
170
|
+
puts " - ID: #{n.id}, UUID: #{n.uuid}"
|
171
|
+
puts " - Name: #{n.label}"
|
172
|
+
puts " - CPU: #{n.cpu} RAM: #{n.ram} MB"
|
173
|
+
disksizeInGB = n.hdInBytes/(1024**3)
|
174
|
+
puts " - HD Size: #{disksizeInGB} GB"
|
175
|
+
puts " - State: #{n.state}"
|
176
|
+
}
|
177
|
+
else
|
178
|
+
puts "If options are used the alternatives are as follows:"
|
179
|
+
puts " --VDC xxx --VA xxx"
|
180
|
+
puts " --VDC xxx"
|
181
|
+
puts "using --VA without --VDC is not allowed"
|
182
|
+
end
|
183
|
+
end
|
119
184
|
end
|
120
185
|
end
|
121
186
|
end
|
data/lib/vcli/version.rb
CHANGED