vcli 0.1.7 → 0.1.8
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.
- 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