Charmed PostgreSQL How-to - Manage App

How to manage related applications

Note: All commands are written for juju >= v.3.0

If you are using an earlier version, be aware that:

  • juju run replaces juju run-action --wait in juju v.2.9
  • juju integrate replaces juju relate and juju add-relation in juju v.2.9

For more information, check the Juju 3.0 Release Notes.

Create an integration

New postgresql_client interface

Integrations (or “relations” in juju v.2.9) with new applications are supported via the postgresql_client interface.

To create an integration, run

juju integrate postgresql <application>

To remove an integration to an application:

juju remove-relation postgresql <application>

Legacy pgsql interface

We have also added support for the database legacy relation from the original version of the charm via the pgsql interface. Note that this interface is deprecated.

juju integrate postgresql:db <application>

Extended permissions can be requested using the db-admin endpoint:

juju integrate postgresql:db-admin <application>

Rotate application passwords

To rotate the passwords of users created for integrated applications, the integration should be removed and integrated again. This process will generate a new user and password for the application.

juju remove-relation <application> postgresql
juju integrate <application> postgresql

Internal operator user

The operator user is used internally by the Charmed PostgreSQL VM Operator. The set-password action can be used to rotate its password.

To set a specific password for the operator user, run

juju run postgresql/leader set-password password=<password>

To randomly generate a password for the operator user, run

juju run postgresql/leader set-password