summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Kearney <josh@jk0.org>2011-03-30 20:49:38 +0000
committerTarmac <>2011-03-30 20:49:38 +0000
commit11eb77870630dca9399070cd8c3d16f6e2bbce53 (patch)
treea1502bec1b853d9f2e6866df1e3edb0fdea7e447
parentd4ebb5504b6bc4214c4c431c86163144afc38e66 (diff)
parent2eadc55dbd66af7b5adb3c21fe9cc91cd04b0f8b (diff)
downloadnova-11eb77870630dca9399070cd8c3d16f6e2bbce53.tar.gz
nova-11eb77870630dca9399070cd8c3d16f6e2bbce53.tar.xz
nova-11eb77870630dca9399070cd8c3d16f6e2bbce53.zip
Avoid any hard dependencies in nova.virt.vmwareapi.vim.
-rw-r--r--nova/virt/vmwareapi/vim.py15
-rw-r--r--nova/virt/vmwareapi_conn.py3
2 files changed, 13 insertions, 5 deletions
diff --git a/nova/virt/vmwareapi/vim.py b/nova/virt/vmwareapi/vim.py
index ba14f1512..1c850595d 100644
--- a/nova/virt/vmwareapi/vim.py
+++ b/nova/virt/vmwareapi/vim.py
@@ -21,10 +21,14 @@ Classes for making VMware VI SOAP calls.
import httplib
-from suds import WebFault
-from suds.client import Client
-from suds.plugin import MessagePlugin
-from suds.sudsobject import Property
+try:
+ suds = True
+ from suds import WebFault
+ from suds.client import Client
+ from suds.plugin import MessagePlugin
+ from suds.sudsobject import Property
+except ImportError:
+ suds = False
from nova import flags
from nova.virt.vmwareapi import error_util
@@ -75,6 +79,9 @@ class Vim:
protocol: http or https
host : ESX IPAddress[:port] or ESX Hostname[:port]
"""
+ if not suds:
+ raise Exception(_("Unable to import suds."))
+
self._protocol = protocol
self._host_name = host
wsdl_url = FLAGS.vmwareapi_wsdl_loc
diff --git a/nova/virt/vmwareapi_conn.py b/nova/virt/vmwareapi_conn.py
index 87c3fa299..20c1b2b45 100644
--- a/nova/virt/vmwareapi_conn.py
+++ b/nova/virt/vmwareapi_conn.py
@@ -47,6 +47,7 @@ from nova.virt.vmwareapi import vim
from nova.virt.vmwareapi import vim_util
from nova.virt.vmwareapi.vmops import VMWareVMOps
+
LOG = logging.getLogger("nova.virt.vmwareapi_conn")
FLAGS = flags.FLAGS
@@ -109,7 +110,7 @@ class VMWareESXConnection(object):
def __init__(self, host_ip, host_username, host_password,
api_retry_count, scheme="https"):
session = VMWareAPISession(host_ip, host_username, host_password,
- api_retry_count, scheme=scheme)
+ api_retry_count, scheme=scheme)
self._vmops = VMWareVMOps(session)
def init_host(self, host):