Interfaces/endpoints
The charm supports modern postgresql_client
and legacy pgsql
interfaces (in a backward compatible mode).
Note: do NOT relate both modern and legacy interfaces simultaneously!
Modern interfaces
This charm provides modern ‘postgresql_client’ interface. Applications can easily connect PostgreSQL using ‘data_interfaces’ library from ‘data-platform-libs’.
Modern postgresql_client
interface (database
endpoint):
Adding a relation is accomplished with juju relate
(or juju integrate
for Juju 3.x) via endpoint database
. Example:
# Deploy Charmed PostgreSQL cluster with 3 nodes
juju deploy postgresql -n 3 --channel 14
# Deploy the relevant application charms
juju deploy mycharm
# Relate PostgreSQL with your application
juju relate postgresql:database mycharm:database
# Check established relation (using postgresql_client interface):
juju status --relations
# Example of the properly established relation:
# > Relation provider Requirer Interface Type
# > postgresql:database mycharm:database postgresql_client regular
Legacy interfaces
Note: Legacy relations are deprecated and will be discontinued on future releases. Usage should be avoided.
Legacy pgsql
interface (db
and db-admin
endpoints):
This charm supports legacy interface pgsql
from the previous PostgreSQL charm:
juju relate postgresql:db mailman3-core
juju relate postgresql:db-admin landscape-server
Note: The endpoint db-admin
provides the same legacy interface pgsql
with PostgreSQL admin-level privileges. It is NOT recommended to use it from security point of view.