Example #1
0
 def start(self):
     LOG.debug('IPABackend start')
     self.request = requests.Session()
     authclassname = cfg.CONF[self.name].ipa_auth_driver_class
     authclass = importutils.import_class(authclassname)
     self.request.auth = \
         authclass(cfg.CONF[self.name].ipa_client_keytab,
                   cfg.CONF[self.name].ipa_host)
     ipa_base_url = cfg.CONF[self.name].ipa_base_url
     if ipa_base_url.startswith("http"):  # full URL
         self.baseurl = ipa_base_url
     else:  # assume relative to https://host[:port]
         self.baseurl = "https://" + cfg.CONF[self.name].ipa_host
         ipa_port = cfg.CONF[self.name].ipa_port
         if ipa_port != IPA_DEFAULT_PORT:
             self.baseurl += ":" + str(ipa_port)
         self.baseurl += ipa_base_url
     ipa_json_url = cfg.CONF[self.name].ipa_json_url
     if ipa_json_url.startswith("http"):  # full URL
         self.jsonurl = ipa_json_url
     else:  # assume relative to https://host[:port]
         self.jsonurl = self.baseurl + ipa_json_url
     xtra_hdrs = {'Content-Type': 'application/json',
                  'Referer': self.baseurl}
     self.request.headers.update(xtra_hdrs)
     self.request.verify = cfg.CONF[self.name].ipa_ca_cert
     self.ntries = cfg.CONF[self.name].ipa_connect_retries
     self.force = cfg.CONF[self.name].ipa_force_ns_use
Example #2
0
 def start(self):
     LOG.debug('IPABackend start')
     self.request = requests.Session()
     authclassname = cfg.CONF[self.name].ipa_auth_driver_class
     authclass = importutils.import_class(authclassname)
     self.request.auth = \
         authclass(cfg.CONF[self.name].ipa_client_keytab,
                   cfg.CONF[self.name].ipa_host)
     ipa_base_url = cfg.CONF[self.name].ipa_base_url
     if ipa_base_url.startswith("http"):  # full URL
         self.baseurl = ipa_base_url
     else:  # assume relative to https://host[:port]
         self.baseurl = "https://" + cfg.CONF[self.name].ipa_host
         ipa_port = cfg.CONF[self.name].ipa_port
         if ipa_port != IPA_DEFAULT_PORT:
             self.baseurl += ":" + str(ipa_port)
         self.baseurl += ipa_base_url
     ipa_json_url = cfg.CONF[self.name].ipa_json_url
     if ipa_json_url.startswith("http"):  # full URL
         self.jsonurl = ipa_json_url
     else:  # assume relative to https://host[:port]
         self.jsonurl = self.baseurl + ipa_json_url
     xtra_hdrs = {'Content-Type': 'application/json',
                  'Referer': self.baseurl}
     self.request.headers.update(xtra_hdrs)
     self.request.verify = cfg.CONF[self.name].ipa_ca_cert
     self.ntries = cfg.CONF[self.name].ipa_connect_retries
     self.force = cfg.CONF[self.name].ipa_force_ns_use
Example #3
0
    def from_primitive(primitive):
        """
        Construct an object from primitive types

        This is used while deserializing the object.

        NOTE: Currently all the designate objects contain primitive types that
        do not need special handling.  If this changes we need to modify this
        function.
        """
        cls = importutils.import_class(primitive['designate_object.name'])

        instance = cls()

        for field, value in primitive['designate_object.data'].items():
            if isinstance(value, dict) and 'designate_object.name' in value:
                instance[field] = DesignateObject.from_primitive(value)
            else:
                instance[field] = value

        instance._obj_changes = set(primitive['designate_object.changes'])
        instance._obj_original_values = \
            primitive['designate_object.original_values']

        return instance
Example #4
0
    def from_primitive(primitive):
        """
        Construct an object from primitive types

        This is used while deserializing the object.
        """
        cls = importutils.import_class(primitive['designate_object.name'])
        return cls._obj_from_primitive(primitive)
Example #5
0
 def deserialize_entity(self, context, entity):
     if isinstance(entity, dict) and 'designate_object.name' in entity and\
             'designate_object.data' in entity:
         cls = importutils.import_class(entity['designate_object.name'])
         entity = cls.from_primitive(entity)
     elif isinstance(entity, (tuple, list, set)):
         entity = self._process_iterable(context, self.deserialize_entity,
                                         entity)
     return entity
Example #6
0
 def deserialize_entity(self, context, entity):
     if isinstance(entity, dict) and 'designate_object.name' in entity and\
             'designate_object.data' in entity:
         cls = importutils.import_class(entity['designate_object.name'])
         entity = cls.from_primitive(entity)
     elif isinstance(entity, (tuple, list, set)):
         entity = self._process_iterable(context, self.deserialize_entity,
                                         entity)
     return entity
Example #7
0
 def __init__(self, svc_name, *args, **kw):
     cls = importutils.import_class(
         'designate.%s.service.Service' % svc_name)
     self.svc = cls.create(binary='designate-' + svc_name, *args, **kw)
Example #8
0
 def __init__(self, svc_name, *args, **kw):
     cls = importutils.import_class('designate.%s.service.Service' %
                                    svc_name)
     self.svc = cls.create(binary='desgignate-' + svc_name, *args, **kw)
Example #9
0
 def __init__(self, svc_name, *args, **kw):
     cls = importutils.import_class('designate.%s.service.Service' %
                                    svc_name)
     self.svc = cls(*args, **kw)