conn = utils.getConnection()
apiclient = CloudStackAPIClient(conn)

configuration = {
   'cpu.overprovisioning.factor'     : 10,
   'mem.overprovisioning.factor'     : 10,
   'storage.overprovisioning.factor' : 4,
   'expunge.delay'                   : 120,
   'expunge.interval'                : 60,
   'network.gc.interval'             : 60,
   'network.gc.wait'                 : 120
   }

listconfig = listConfigurations.listConfigurationsCmd()
try:
   resp = apiclient.listConfigurations(listconfig)
   for item in resp:
      if item.name == "cpu.overprovisioning.factor":
         if item.value == configuration["cpu.overprovisioning.factor"]:
            print "OK, host is correct"
         else:
            print "Incorrect configuration"
            updateConf = updateConfiguration.updateConfigurationCmd()
            for key,value in configuration.iteritems():
               updateConf.name = key
               updateConf.value = value
               try:
                  resp = apiclient.updateConfiguration(updateConf)
                  print "Set " + key + " to " + str(value)
               except urllib2.HTTPError, e:
                  print "updateConfigurationCmd failed to set " + key + " : " + str(e.msg)  
conn = utils.getConnection()
apiclient = CloudStackAPIClient(conn)

configuration = {
    'cpu.overprovisioning.factor': 10,
    'mem.overprovisioning.factor': 10,
    'storage.overprovisioning.factor': 4,
    'expunge.delay': 120,
    'expunge.interval': 60,
    'network.gc.interval': 60,
    'network.gc.wait': 120
}

listconfig = listConfigurations.listConfigurationsCmd()
try:
    resp = apiclient.listConfigurations(listconfig)
    for item in resp:
        if item.name == "cpu.overprovisioning.factor":
            if item.value == configuration["cpu.overprovisioning.factor"]:
                print "OK, host is correct"
            else:
                print "Incorrect configuration"
                updateConf = updateConfiguration.updateConfigurationCmd()
                for key, value in configuration.iteritems():
                    updateConf.name = key
                    updateConf.value = value
                    try:
                        resp = apiclient.updateConfiguration(updateConf)
                        print "Set " + key + " to " + str(value)
                    except urllib2.HTTPError, e:
                        print "updateConfigurationCmd failed to set " + key + " : " + str(