Configuring external databases for DevOps Test Hub

You can configure an external database for HCL DevOps Test Hub (Test Hub). The database can be either hosted in the same cluster as Test Hub, or located in a remote cluster, giving you flexibility and control over your resource management. You can either host the database in the same cluster as Test Hub, or ocated in a remote cluster, giving you flexibility and control over your resource management.

Before you begin

You must have completed the following tasks:
  • Installed PostgreSQL Version 15.
  • Obtained user credentials for the external database with the following permissions:
    • Data manipulation permissions for insert, delete, update, and select.
    • Schema modification permissions to alter a table, create a table, truncate, drop, and create or modify index.
  • Ensured that the database has sufficient connections. The recommended value for max_connections is 100.

About this task

Test Hub automatically includes and installs a local PostgreSQL server that runs in the same cluster. If you prefer to configure the external database, you must provide the database URL in the Helm chart.
Table 1. Helm parameters affecting the external database connection

Parameter

Description

Default value

postgresql.external

Flag to indicate whether the external database connection is required.

false

postgresql.hostname

Hostname/IP of the external database server.

NA

postgresql.username

Username to access the database.

postgres

postgresql.existingPassword

Password to access the database.

NA

postgresql.port

Port for the database connection.

This parameter is optional. The default port for Postgres is 5432. Configure it only if your database uses a different port.

5432

postgresql.params.sslmode

Server certificate validation mode.

This parameter is optional. The recommended value is verify-full, as it provides the most secure SSL validation.

verify-full

global.privateCaBundleSecretName

Secret name where the self-signed certificates are stored.

NA

Example
helm upgrade --install {{main}} ./ibm-devops-prod -n devops-system \
  --set global.privateCaBundleSecretName=my-internal-ca-bundle \
  --set postgresql.external=true \
  --set postgresql.hostname=mydbhost.corp.example.com \
  --set postgresql.username=postgres \
  --set postgresql.existingPassword=changeme

Procedure

  1. Install or upgrade HCL DevOps Test Hub (Test Hub) by specifying the following PostgreSQL parameters in the Helm chart, if you are using a database provider with a trusted certificate authority:
    --set postgresql.external=true \
    --set postgresql.hostname=kmpg.postgres.database.azure.com \
    --set postgresql.username=theadmin \
    --set postgresql.existingPassword=theadminpassword
    
  2. Install or upgrade DevOps Test Hub by specifying the following PostgreSQL parameters in the Helm chart, if you are using a database inside your network with a self-signed certificate:
    --set global.privateCaBundleSecretName=my-internal-ca-bundle \
    --set postgresql.external=true \
    --set postgresql.hostname=mydbhost.corp.example.com \
    --set postgresql.username=postgres \
    --set postgresql.existingPassword=changeme