Hi Michal,
Great work! Now it's a pleasure to use this driver :-)
A couple of changes for your consideration:
====== rhevm_driver.rb ========
1) Increase VM CPU limit to 16
2) Fix memory reporting size
3) Change HW profiles to upper case to avoid 404 in web UI
--- rhevm_driver.rb_michalpatch 2011-04-20 21:27:32.354164599 +0200
+++ rhevm_driver.rb 2011-04-20 21:51:39.356164872 +0200
@@ -42,15 +42,15 @@
# Values like RAM or STORAGE are reported by VM
# so they are not static.
- define_hardware_profile 'server' do
- cpu ( 1..4 )
+ define_hardware_profile 'SERVER' do
+ cpu ( 1..16 )
memory ( 512 .. 32*1024 )
storage ( 1 .. 100*1024 )
architecture 'x86_64'
end
- define_hardware_profile 'desktop' do
- cpu ( 1..4 )
+ define_hardware_profile 'DESKTOP' do
+ cpu ( 1..16 )
memory ( 512 .. 32*1024 )
storage ( 1 .. 100*1024 )
architecture 'x86_64'
@@ -201,7 +201,7 @@
state = convert_state(inst.status)
storage_size = inst.storage.nil? ? 1 :
(inst.storage.to_i/1048576/100)
profile = InstanceProfile::new(inst.profile,
- :hwp_memory =>
inst.memory.to_i/1024/1204,
+ :hwp_memory =>
(inst.memory.to_i/1024/1024),
:hwp_cpu => inst.cores,
:hwp_storage => "#{storage_size}"
)
====== rhevm_client.rb ========
1) Fix unknown method exception when VM had no description
--- rhevm_client.rb_michalpatch 2011-04-20 21:27:32.353165601 +0200
+++ rhevm_client.rb 2011-04-20 21:38:51.650167145 +0200
@@ -207,7 +207,7 @@
private
def parse_xml_attributes!(xml)
- @description = (xml/'description').first.text
+ @description = ((xml/'description').first.text rescue nil)
@status = (xml/'status').first.text
@memory = (xml/'memory').first.text
@profile = (xml/'type').first.text
Nitpicking a bit if you let me, "description" should be really part of
BaseResource IMO:
http://markmc.fedorapeople.org/rhevm-api/en-US/html-single/index.html#chap-REST_API_Guide-Common_Idioms
Thanks!
Tomas
On 04/20/2011 02:40 PM, Michal Fojtik wrote:
Hi,
Since this patch was sent with -novalidate and could not by applied cleanly,
I'm attaching ZIP file with this patch.
-- Michal
On Apr 20, 2011, at 2:38 PM, [email protected] wrote:
Hi,
Summary of changes:
- RHEV-M ruby client is completely reworked and how it use Accept header to
'construct' XMLs from RHEV-M
- Tests are updated to version milestone9.2 of RHEV-M API
- Overal performance of RHEV-M driver is increased by ~150% because new client
is
now doing less amount of requests to RHEV-M API
- IP address is now reported correctly if guests tools are installed on RHEV-M
guest vm.
Incompatibilities and changes:
- /api/instances/blabla nwo throw error 500 instead of 404 when instance not
exists. This is a bug in RHEV-M API and it was reported.
- After you create a new instance, it's not automatically created in STOPPED
state but now it's PENDING (because vm in IMAGE_LOCKED state cannot be
started)
- Disk size and memory size is reported incorectly for VM. RHEV-M reporting
'currently used' space in QCOW2 image instead of total space (reported to
RHEV-M API team)
-- Michal
------------------------------------------------------
Michal Fojtik, [email protected]
Deltacloud API: http://deltacloud.org
--
Tomas Von Veschler
Solution Architect Tel: +34 662 388 666
Red Hat, S.L. Madrid office