Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
49 lines (36 sloc) 1.11 KB

Provides: MySQL

Example Usage

This is what a charm using this relation would look like:

# in the postgres charm:
from charmhelpers.core import hookenv  # noqa
from charmhelpers.core import unitdata
from charmhelpers.core.reactive import when
from common import (
    user_name,
    create_user,
    ensure_database,
    get_service_port,
)


@when('db.database.requested')
def provide_database(mysql):
    for service in mysql.requested_databases():
        database = service

        user = user_name(mysql.relation_name(), service)  # generate username
        password = create_user(user)  # get-or-create user

        ensure_database(user, schema_user, database)

        mysql.provide_database(
            service=service,
            host=hookenv.unit_private_ip(),
            port=get_service_port(),
            database=database,
            user=user,
            password=password,
        )

Reference

.. autoclass::
    provides.MySQL
    :members: