
Kaitlin Rupert wrote:
# HG changeset patch # User Kaitlin Rupert <karupert@us.ibm.com> # Date 1231271658 28800 # Node ID d0b13b624d8c54bb8c625f3d0855ac7f80cdcdbd # Parent 270c97141e74456e051361572b2ba77af8f0fd94 [TEST] Update CSI 01 to use cim_() functions.
Signed-off-by: Kaitlin Rupert <karupert@us.ibm.com>
diff -r 270c97141e74 -r d0b13b624d8c suites/libvirt-cim/cimtest/ComputerSystemIndication/01_created_indication.py --- a/suites/libvirt-cim/cimtest/ComputerSystemIndication/01_created_indication.py Tue Jan 06 11:09:46 2009 -0800 +++ b/suites/libvirt-cim/cimtest/ComputerSystemIndication/01_created_indication.py Tue Jan 06 11:54:18 2009 -0800 @@ -24,23 +24,17 @@ import os import signal import time
Better way is to import time as below: from time import sleep
-from pywbem.cim_obj import CIMInstanceName from CimTest.Globals import logger from XenKvmLib.const import do_main from CimTest.ReturnCodes import PASS, FAIL -from XenKvmLib.common_util import create_using_definesystem, \ - call_request_state_change -from XenKvmLib.test_doms import destroy_and_undefine_domain from XenKvmLib.classes import get_typed_class from XenKvmLib.indication_tester import CIMIndicationSubscription from XenKvmLib.vxml import set_default -from XenKvmLib.vsms import get_vsms_class +from XenKvmLib.vxml import get_class
SUPPORTED_TYPES = ['Xen', 'XenFV', 'KVM']
test_dom = "domU" -REQ_STATE = 2 -TIME = "00000000000000.000000:000"
def sub_ind(ip, virt): dict = set_default(ip) @@ -70,28 +64,24 @@
return sub_list, ind_names, dict
-def gen_ind(test_dom, ip, vtype, ind): +def gen_ind(test_dom, ip, vtype, ind, cxml): if ind == "define": - return create_using_definesystem(test_dom, ip, virt=vtype) + ret = cxml.cim_define(ip) + if not ret: + return FAIL + return PASS
You can remove the blank line from here.
elif ind == "start": - rc = call_request_state_change(test_dom, ip, REQ_STATE, TIME, vtype) - if rc != 0: - logger.error("Failed to start domain: %s" % test_dom) + status = cxml.cim_start(ip) + if status != PASS: + logger.error("Failed to start domain: %s", test_dom) return FAIL return PASS
You can remove the blank line from here.
elif ind == "destroy": - service = get_vsms_class(vtype)(ip) - try: - classname = get_typed_class(vtype, 'ComputerSystem') - cs_ref = CIMInstanceName(classname, keybindings = { - 'Name':test_dom, - 'CreationClassName':classname}) - service.DestroySystem(AffectedSystem=cs_ref) - except Exception, details: - logger.error('Unknow exception happened') - logger.error(details) + ret = cxml.cim_destroy(ip) + if not ret: + logger.error("Unable to destroy %s", test_dom) return FAIL return PASS
@@ -151,12 +141,16 @@ @do_main(SUPPORTED_TYPES) def main(): options = main.options + ip = options.ip + virt = options.virt status = FAIL
- sub_list, ind_names, dict = sub_ind(options.ip, options.virt) + sub_list, ind_names, dict = sub_ind(ip, virt)
ind_list = ["define", "start", "destroy"]
+ cxml = get_class(virt)(test_dom) + for ind in ind_list: sub = sub_list[ind] ind_name = ind_names[ind] @@ -171,7 +165,7 @@ os._exit(0) else: try: - status = gen_ind(test_dom, options.ip, options.virt, ind) + status = gen_ind(test_dom, ip, virt, ind, cxml) if status != PASS: os.kill(pid, signal.SIGKILL) raise Exception("Unable to generate indication") @@ -190,7 +184,8 @@ sub.unsubscribe(dict['default_auth']) logger.info("Cancelling subscription for %s" % ind_names[ind])
- destroy_and_undefine_domain(test_dom, options.ip, options.virt) + cxml.cim_destroy(ip)
Calling the cim_destroy leaves the following error message in the log, since the domain would have already been destroyed: Wed, 07 Jan 2009 03:49:43:TEST LOG:ERROR - Error invoking DestroySystem Wed, 07 Jan 2009 03:49:43:TEST LOG:ERROR - Got error (1, u'CIM_ERR_FAILED: Failed to find domain') with exception CIMError
+ cxml.undefine(ip)
return status
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim
-- Thanks and Regards, Deepti B. Kalakeri IBM Linux Technology Center deeptik@linux.vnet.ibm.com