Identity Platform Login Ui Operator

  • By Identity Charmers
Channel Revision Published Runs on
latest/edge 86 30 Apr 2024
Ubuntu 22.04
0.999/edge 47 06 Sep 2023
Ubuntu 22.04
0.2/stable 84 29 Apr 2024
Ubuntu 22.04
0.2/edge 87 01 May 2024
Ubuntu 22.04
0.1/edge 78 01 Dec 2023
Ubuntu 22.04
juju deploy identity-platform-login-ui-operator --channel edge
Show information

Platform:

charms.identity_platform_login_ui_operator.v0.login_ui_endpoint

Interface library for sharing Identity Platform Login UI application's endpoints with other charms. This library provides a Python API for both requesting and providing a public endpoints.

Getting Started

To get started using the library, you need to fetch the library using charmcraft.

cd some-charm
charmcraft fetch-lib charms.identity_platform_login_ui.v0.login_ui_endpoints

To use the library from the requirer side: In the metadata.yaml of the charm, add the following:

requires:
  ui-endpoints-info:
    interface: login_ui_endpoints
    limit: 1

Then, to initialise the library:

from charms.identity_platform_login_ui.v0.login_ui_endpoints import (
    LoginUIEndpointsRelationError,
    LoginUIEndpointsRequirer,
)
Class SomeCharm(CharmBase):
    def __init__(self, *args):
        self.login_ui_endpoints_relation = LoginUIEndpointsRequirer(self)
        self.framework.observe(self.on.some_event_emitted, self.some_event_function)
    def some_event_function():
        # fetch the relation info
        try:
            login_ui_endpoints = self.login_ui_endpoints_relation.get_login_ui_endpoints()
        except LoginUIEndpointsRelationError as error:
            ...

class LoginUIEndpointsRelationReadyEvent

Description

Event to notify the charm that the relation is ready. None

class LoginUIEndpointsProviderEvents

Description

Event descriptor for events raised by LoginUIEndpointsProvider. None

class LoginUIEndpointsProvider

Description

Provider side of the endpoint-info relation. None

Methods

LoginUIEndpointsProvider. __init__( self , charm: CharmBase , relation_name: str )

LoginUIEndpointsProvider. send_endpoints_relation_data( self , endpoint: str )

Description

Updates relation with endpoint info. None

class LoginUIEndpointsRelationError

Description

Base class for the relation exceptions. None

class LoginUITooManyRelatedAppsError

Description

Raised when there are more than one ui-endpoints-info relations between Identity Platform Login UI and another component. None

Methods

LoginUITooManyRelatedAppsError. __init__( self )

class LoginUINonLeaderOperationError

Description

Raised when a non-leader unit wants to call a function intended for leader units. None

Methods

LoginUINonLeaderOperationError. __init__( self )

class LoginUIEndpointsRelationMissingError

Description

Raised when the relation is missing. None

Methods

LoginUIEndpointsRelationMissingError. __init__( self )

class LoginUIEndpointsRelationDataMissingError

Description

Raised when information is missing from the relation. None

Methods

LoginUIEndpointsRelationDataMissingError. __init__( self , message: str )

class LoginUIEndpointsRequirer

Description

Requirer side of the ui-endpoint-info relation. None

Methods

LoginUIEndpointsRequirer. __init__( self , charm: CharmBase , relation_name: str )

LoginUIEndpointsRequirer. get_login_ui_endpoints( self , relation_id )

Description

Get the Identity Platform Login UI endpoints. None