You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
tl;dr: it would be useful if credentials/configuration for the persistent metastore could be set via environment variables
When running Polaris with a persistent metastore (e.g. PostgreSQL) in a production-like environment, it can be cumbersome to provide configuration details (like credentials and hostname) because they need to be embedded in raw in the persistence.xml file. In production environments, especially in the Kubernetes ecosystem, it is not uncommon to manage this configuration externally (e.g. credentials generated and managed by an operator), in which case the format of these configuration pieces often doesn't match the required persistence.xml format. This means that these components cannot be wired together using IaC, but rather some things need to be manually copied after deploying the metastore and embedded into a persistence.xml.
Describe the solution you'd like
I would be very useful if the connection details could be provided via environment variables - at least the URL, username and password. Ideally, this could be a generic solution, where the persistence.xml file could contain bash-style placeholders like ${VAR}, which would then be replaced by environment variables at runtime when loading the xml file.
Describe alternatives you've considered
As a hacky workaround, we're currently injecting initContainers that mount the persistence.xml file, replace placeholders by environment variables and write the result into a new file that is then mounted by the Polaris container.
Additional context
No response
The text was updated successfully, but these errors were encountered:
There's a new JDBC-based persistence impl. in progress, which should be able to leverage Quarkus configuration (many input options, including env. vars), I hope.
Is your feature request related to a problem? Please describe.
tl;dr: it would be useful if credentials/configuration for the persistent metastore could be set via environment variables
When running Polaris with a persistent metastore (e.g. PostgreSQL) in a production-like environment, it can be cumbersome to provide configuration details (like credentials and hostname) because they need to be embedded in raw in the
persistence.xml
file. In production environments, especially in the Kubernetes ecosystem, it is not uncommon to manage this configuration externally (e.g. credentials generated and managed by an operator), in which case the format of these configuration pieces often doesn't match the requiredpersistence.xml
format. This means that these components cannot be wired together using IaC, but rather some things need to be manually copied after deploying the metastore and embedded into apersistence.xml
.Describe the solution you'd like
I would be very useful if the connection details could be provided via environment variables - at least the URL, username and password. Ideally, this could be a generic solution, where the
persistence.xml
file could contain bash-style placeholders like${VAR}
, which would then be replaced by environment variables at runtime when loading the xml file.Describe alternatives you've considered
As a hacky workaround, we're currently injecting
initContainers
that mount thepersistence.xml
file, replace placeholders by environment variables and write the result into a new file that is then mounted by the Polaris container.Additional context
No response
The text was updated successfully, but these errors were encountered: