keystone.resource.config_backends.base module¶
- class keystone.resource.config_backends.base.DomainConfigDriverBase[source]¶
Bases:
object
Interface description for a Domain Config driver.
- abstract create_config_options(domain_id, option_list)[source]¶
Create config options for a domain.
Any existing config options will first be deleted.
- Parameters:
domain_id – the domain for this option
option_list – a list of dicts, each one specifying an option
Option schema:
type: dict properties: group: type: string option: type: string value: type: depends on the option sensitive: type: boolean required: [group, option, value, sensitive] additionalProperties: false
- abstract delete_config_options(domain_id, group=None, option=None)[source]¶
Delete config options for a domain.
Allows deletion of all options for a domain, all options in a group or a specific option. The driver is silent if there are no options to delete.
- Parameters:
domain_id – the domain for this option
group – optional group option name
option – optional option name. If group is None, then this parameter is ignored
The option is uniquely defined by domain_id, group and option, irrespective of whether it is sensitive ot not.
- abstract get_config_option(domain_id, group, option, sensitive=False)[source]¶
Get the config option for a domain.
- Parameters:
domain_id – the domain for this option
group – the group name
option – the option name
sensitive – whether the option is sensitive
- Returns:
dict containing group, option and value
- Raises:
keystone.exception.DomainConfigNotFound – the option doesn’t exist.
- abstract list_config_options(domain_id, group=None, option=False, sensitive=False)[source]¶
Get a config options for a domain.
- Parameters:
domain_id – the domain for this option
group – optional group option name
option – optional option name. If group is None, then this parameter is ignored
sensitive – whether the option is sensitive
- Returns:
list of dicts containing group, option and value
- abstract obtain_registration(domain_id, type)[source]¶
Try and register this domain to use the type specified.
- Parameters:
domain_id – the domain required
type – type of registration
- Returns:
True if the domain was registered, False otherwise. Failing to register means that someone already has it (which could even be the domain being requested).
- abstract read_registration(type)[source]¶
Get the domain ID of who is registered to use this type.
- Parameters:
type – type of registration
- Returns:
domain_id of who is registered.
- Raises:
keystone.exception.ConfigRegistrationNotFound – If nobody is registered.
- abstract release_registration(domain_id, type=None)[source]¶
Release registration if it is held by the domain specified.
If the specified domain is registered for this domain then free it, if it is not then do nothing - no exception is raised.
- Parameters:
domain_id – the domain in question
type – type of registration, if None then all registrations for this domain will be freed