doc: adding a note about config expressions

Closes: #19831

Signed-off-by: Steve Hawkins <shawkins@redhat.com>
Co-authored-by: Václav Muzikář <vaclav@muzikari.cz>
Co-authored-by: Alexander Schwartz <aschwart@redhat.com>
Co-authored-by: andymunro <48995441+andymunro@users.noreply.github.com>
This commit is contained in:
Steven Hawkins 2023-12-06 14:29:47 -05:00 committed by GitHub
parent 7b63d6d500
commit a04613e7ea
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -143,10 +143,17 @@ You can use only a https://github.com/keycloak/keycloak/blob/main/quarkus/runtim
. Use the `[-cf|--config-file]` command line parameter to include that file.
Similarly, you can also store Quarkus properies in a Java KeyStore.
Similarly, you can also store Quarkus properties in a Java KeyStore.
Note that some Quarkus properties are already mapped in the {project_name} configuration, such as `quarkus.http.port` and similar essential properties. If the property is used by Keycloak, defining that property key in `quarkus.properties` has no effect. The Keycloak configuration value takes precedence over the Quarkus property value.
=== Using special characters in values
{project_name} depends upon Quarkus and MicroProfile for processing configuration values. Be aware that value expressions are supported. For example, `$\{some_key}` evaluates to the value of `some_key`.
To disable expression evaluation, the `\` character functions as an escape character. In particular, it must be used to escape the usage of `$` characters when they appear to define an expression or are repeated. For example, if you want the configuration value `my$$password`, use `my\$\$password` instead. Note that the `\` character requires additional escaping or quoting when using most unix shells, or when it appears in properties files.
For example, bash single quotes preserve the single backslash `--db-password='my\$\$password'`. Also, with bash double quotes, you need an additional backslash `--db-password="my\\$\\$password"`. Similarly in a properties file, backslash characters must also be escaped: `kc.db-password=my\\$\\$password`
== Starting {project_name}
You can start {project_name} in `development mode` or `production mode`. Each mode offers different defaults for the intended environment.