コード例 #1
0
 def setUp(self):
     super(TestXenapiRootHelper, self).setUp()
     conf = cfg.CONF
     xenapi_conf.register_xenapi_opts(conf)
コード例 #2
0
from oslo_rootwrap import cmd as oslo_rootwrap_cmd
from oslo_serialization import jsonutils

from neutron._i18n import _LE
from neutron.conf.agent import xenapi_conf


ROOT_HELPER_DAEMON_TOKEN = 'xenapi_root_helper'

RC_UNKNOWN_XENAPI_ERROR = 80
MSG_UNAUTHORIZED = "Unauthorized command"
MSG_NOT_FOUND = "Executable not found"
XENAPI_PLUGIN_FAILURE_ID = "XENAPI_PLUGIN_FAILURE"

LOG = logging.getLogger(__name__)
xenapi_conf.register_xenapi_opts(cfg.CONF)


class XenAPIClient(object):
    def __init__(self):
        self._session = None
        self._host = None
        self._XenAPI = None

    def _call_plugin(self, plugin, fn, args):
        host = self._this_host()
        return self.get_session().xenapi.host.call_plugin(
            host, plugin, fn, args)

    def _create_session(self, url, username, password):
        session = self._get_XenAPI().Session(url)
コード例 #3
0
from oslo_rootwrap import cmd as oslo_rootwrap_cmd
from oslo_serialization import jsonutils

from neutron._i18n import _LE
from neutron.conf.agent import xenapi_conf


ROOT_HELPER_DAEMON_TOKEN = 'xenapi_root_helper'

RC_UNKNOWN_XENAPI_ERROR = 80
MSG_UNAUTHORIZED = "Unauthorized command"
MSG_NOT_FOUND = "Executable not found"
XENAPI_PLUGIN_FAILURE_ID = "XENAPI_PLUGIN_FAILURE"

LOG = logging.getLogger(__name__)
xenapi_conf.register_xenapi_opts(cfg.CONF)


class XenAPIClient(object):
    def __init__(self):
        self._session = self._create_session(
            cfg.CONF.xenapi.connection_url,
            cfg.CONF.xenapi.connection_username,
            cfg.CONF.xenapi.connection_password)

    def _call_plugin(self, plugin, fn, args):
        return self._session.call_plugin(plugin, fn, args)

    def _create_session(self, url, username, password):
        return session.XenAPISession(url, username, password,
                                     originator="neutron")