/charm-interface-keystone-domain-backend

Charm Interface - Keystone Domain backend. Mirror of code maintained at opendev.org.

Primary LanguagePythonApache License 2.0Apache-2.0

Overview

This interface layer handles the communication with Keystone via the 'keystone-domain-backend' interface protocol.

Usage

Provides

The interface layer will set the following state:

  • {relation_name}.connected The relation is established.

For example:

from charms.reactive import when


@when('domain-backend.connected')
@when('configuration.complete')
def configure_domain(domain):
    domain.domain_name('mynewkeystonedomain')
    domain.trigger_restart()

Typically a domain backend charm should validate that it has sufficient and good configuration for the domain backend, write its configuration to /etc/keystone/domains/keystone.<domain-name>.conf and then trigger a restart of keystone using the trigger_restart method of the inteface, supplying the domain name at this point in time as well.

The keystone charm will create the domain in the keystone database, mapping to the underlying domain configuration on disk.