Updating the admin console UI with the same release

We are trying to patch the UI of the replicated KOTS admin console after the app is installed.

We’d like to automate dynamically adding values to fields (db server names).

I download our configs using kubectl kots pull <app-slug>/<channel> --license-file /license.yaml --shared-password --config-values --namespace=default to the /root/<app-slug>/upstream directory.

When I upload our config file that’s been modified, and run kubectl kots install <app-slug>/<channel> --license-file /license.yaml --config-values config.yaml --namespace=default the response is Error: failed to parse config values: not config values

The config file is pulled directly from the kots pull command and is formatted like we have in our repo.

(I saw alternatives, like creating a new release, but for our QA team they use release ids in their validation documentation sometimes.)

Hi @jensese, the error Error: failed to parse config values: not config values occurs when the file passed to the --config-values flag is not apiVersion: kots.io/v1beta1 and kind: ConfigValues.

In this case the config values file would be downloaded to /root/<app-slug>/upstream/userdata/config.yaml. That is the file that can be edited and passed to the --config-values flag.

Is there a reason you’re using kots install instead of kots upload ? You might also get value from kots config set as an alternative: set config | Replicated Docs

Thanks Dex, I was updating the wrong config file, it was a couple directories deeper than I thought.

I couldn’t quite get kots upload to work.

We automate both applying a license, and updating config values in a single command, which seemed more straightforward to me.