Skip to content

Provide consistent database configuration capabilities #2171

@jonathanlukas

Description

@jonathanlukas

Describe the use case:

As infrastructure engineer, I have to configure multiple database connections as of now:

  • Identity
  • Web Modeler

These database connections offer different properties:

Identity:

key explanation default value
identity.externalDatabase.enabled   false
identity.externalDatabase.host Database host nil
identity.externalDatabase.port Database port number nil
identity.externalDatabase.username Non-root username nil
identity.externalDatabase.password Password for the non-root username nil
identity.externalDatabase.database The database name nil
identity.externalDatabase.existingSecret Name of an existing secret resource containing the database credentials nil
identity.externalDatabase.existingSecretPasswordKey Name of an existing secret key containing the database credentials nil

web modeler:

key explanation default value
webModeler.restapi.externalDatabase can be used to configure a connection to an external database; will only be applied if the postgresql dependency chart is disabled (with postgresql.enabled=false)  
webModeler.restapi.externalDatabase.url defines the JDBC url of the database instance ""
webModeler.restapi.externalDatabase.user defines the database user ""
webModeler.restapi.externalDatabase.password can be used to provide the database user's password; ignored if webModeler.restapi.externalDatabase.existingSecret is set ""
webModeler.restapi.externalDatabase.existingSecret can be used to provide the name of an existing secret resource containing the database password nil
webModeler.restapi.externalDatabase.existingSecretPasswordKey can be used to provide the name of an existing secret key containing the database password ""

Describe the enhancement/feature:

Please provide a consistent set of keys:

  • enabled (implicit in web modeler as of now, explicit in identity) -> implicit for both OR explicit for both
  • url (allows more flexibility than host-port-database)
  • username (is user for web modeler as of now)
  • password
  • existingSecret
  • existingSecretPasswordKey

Hint: For identity, host, port and database are simply condatinated...

https://github.com/camunda/camunda-platform-helm/blob/main/charts/camunda-platform-latest/templates/identity/configmap.yaml#L272

Desired outcome and acceptance tests:

Both sections identity.externalDatabase AND webModeler.restapi.externalDatabase should be configurable in the exact same way.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions