PostgreSQL Database Config

When provisioning TIBCO Developer Hub, you can choose either storage class or Database resource.

Storage Class

If you choose Storage Class, it deploys a Bitnami PostgreSQL database with quick default settings. The database configuration pluginDivisionMode is "database" here. Individual databases are created for each plug-in.

Note: The PostgreSQL database bundled with the TIBCO Developer Hub uses default settings, which cannot be changed. You can select a database resource by providing the details and use a custom PostgreSQL database as per your requirement.

Database Resource

If you choose Database resource, it deploys a Bitnami PostgreSQL database with the configuration provided by you when creating the Database resource. In this way, you can use a custom PostgreSQL database connection. It uses the following configuration in the app-config.yaml file.

database:
 client: pg
 pluginDivisionMode: schema
 connection:
   database: <User provided database name in Database resource>
   host: <User provided database host in Database resource>
   port: <User provided database port in Database resource>
   user: <User provided database username in Database resource>
   password: <User provided database password in Database resource>

A specified database is created, if it does not exist. The user provided in the Database resource must have permission to create and list databases with other required permissions to read and write data to the database. In this case, a database with the name as "postgres" is required by TIBCO Developer Hub. Ensure that the database exists, else create a database with the name as "postgres".

The database configuration pluginDivisionMode is "schema" here. Individual schemas are created for each plug-in under one database, provided in the Database resource database name section.

Note: SSL connection to a custom external database is not supported.

Troubleshooting

If connection to a custom external database fails due to any reason, provisioning is successful, but Kubernetes pod for TIBCO Developer Hub crashes with error. TIBCO Developer Hub is not accessible. You must check the pod log and verify the connection details provided in Database resource.

Note: Ensure the database name "postgres" exists and accessible through the connection details provided in the Database resource.