Configuration
kxi
is configured using a configuration file ~/.insights/cli-config
Many commands require options that don't change often, such as the host that you're interacting with.
If you run kxi configure
you will automatically be prompted for the necessary configuration and the configuration file will be created.
The configuration file allows these to be defaulted so you don't need to pass them every-time.
See the command line reference for a full list of options for the configure command.
Supported Settings
The supported settings are
Setting | Default | Description |
---|---|---|
hostname | Hostname for kdb Insights Enterprise installation to interact with | |
namespace | kxi | Namespace for kdb Insights Enterprise installation to interact with |
client.id | Name of the default client | |
client.secret | Default client secret used to request access tokens | |
license.secret | kxi-license | Secret containing kdb+ license |
license.as-env-var | False | Mount kdb+ license secret as an environment variable |
license.filepath | File path and file name of kdb+ license file | |
chart.repo.name | kx-insights | Name for chart repository |
chart.repo.url | https://nexus.dl.kx.com/repository/kx-insights-charts | Repository URL to pull charts from |
chart.repo.username | Username for the chart repository | |
chart.repo.password | Password for the chart repository | |
image.pullSecret | kxi-nexus-pull-secret | Secret containing credentials for the image repository |
image.repository | registry.dl.kx.com | Repository to pull images from |
image.repository.user | User name for image repository | |
image.repository.password | Password for image repository | |
keycloak.secret | kxi-keycloak | Secret containing Keycloak admin password |
keycloak.admin.password | Keycloak Admin password | |
keycloak.management.password | Keycloak WildFly Management password | |
keycloak.postgresqlSecret | kxi-postgresql | Secret containing Keycloak postgresql passwords |
postgresql.postgres.password | Postgresql postgres password | |
postgresql.user.password | Postgresql user password | |
keycloak.authURL | Auth URL for Keycloak | |
realm | insights | Name of Keycloak realm |
ingress.cert.secret | kxi-ingress-cert | Secret containing self-managed TLS cert and key for the ingress |
ingress.cert | File path to TLS certificate for the ingress | |
ingress.key | File path to TLS private key for the ingress | |
install.outputFile | values.yaml | Name for the generated values file |
install.configSecret | kxi-install-config | Secret containing helm install values |
assembly.backup.file | kxi-assembly-state.yaml | Filepath to store state of running assemblies |
release.name | insights | Release name for the install |
install.outputFile | values.yaml | Name for the generated values file |
client.cert.secret | kxi-certificate | Secret containing TLS cert and key for client issuer |
guiClientSecret | Keycloak client secret for gui service account | |
operatorClientSecret | Keycloak client secret for operator service account | |
install.filepath | Values file to install with | |
version | Version to install | |
operator.version | Version of the operator to install |
These can be overridden by explicitly passing the value if desired, or by editing the ~/.insights/cli-config
file directly. When the setting is omitted from the file, the default value is used where applicable.
Profiles
kxi
also supports a global --profile
option if you are frequently running commands against various different installs or for different clients.
A different profile can be added by calling kxi configure --profile <name of new profile>
.
The new profile can then be used as follows:
kxi --profile <name of new profile> <subcommand> [OPTIONS]
Example
An example configuration file
~/.insights/cli-config
[default]
hostname = https://my-host.kx.com
client.id = my-publisher
client.secret = my-secret
[profile-1]
hostname = https://profile-1.kx.com
client.id = profile-1-publisher
client.secret = profile-1-secret