# Generate KOTS application ConfigValues file

**URL:** <https://community.replicated.com/t/generate-kots-application-configvalues-file/1549>\
**Category:** How do I?\
**Tags:** kots, config\
**Created:** [July 1, 2025, 3:02am UTC](https://community.replicated.com/t/generate-kots-application-configvalues-file/1549 "2025-07-01T03:02:59Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![GerardNguyen](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.replicated.com/gerardnguyen/32/828_2.png) [@GerardNguyen](https://community.replicated.com/u/GerardNguyen)\
**Post date:** [July 1, 2025, 3:02am UTC](https://community.replicated.com/t/generate-kots-application-configvalues-file/1549/1 "2025-07-01T03:02:59Z")

</div>

The `ConfigValues` resource is a KOTS custom resource that contains configuration values for application releases. This file enables automation of KOTS-based installations, including Embedded Cluster and kURL deployments.

## File Structure

The ConfigValues resource follows this YAML structure:

```yaml
apiVersion: kots.io/v1beta1
kind: ConfigValues
spec:
  values:
    <field1_name>:
      value: <value>
    <field2_name>:
      value: <value>

```

Creating this file manually can be time-consuming for applications with extensive configuration options. The following methods can help generate ConfigValues files more efficiently.

## Generating ConfigValues from Existing Installation

If you already have a KOTS installation running, you can extract the current configuration using either the CLI or Admin Console.

### Using KOTS CLI

Extract the current configuration with this command:

```bash
kubectl kots get config -n <namespace> --current --appslug <app-slug> > config-values.yaml

```

### Using Admin Console UI

Navigate to the **View files** tab in the Admin Console, then locate the configuration at **upstream \> userdata \> config.yaml** in the file tree.

## Generating ConfigValues Without Existing Installation

When you don’t have an existing installation, you can still generate a template ConfigValues file using the KOTS CLI.

### Pull Application manifests

Run the following command to pull the application manifests:

```bash
kubectl kots pull <app-slug>/<channel> --license-file license.yaml --shared-password <random-password>

```

This command may produce an error if required configuration values are missing:

```auto
  • Pulling upstream ✓  
  • Rendering KOTS custom resources ✓  
Error: failed to pull: version needs config

```

Despite the error, the command creates a folder named `<app-slug>` containing the application files.

### Extract Default Configuration

Retrieve the default ConfigValues template from the generated folder:

```bash
cat <app-slug>/upstream/userdata/config.yaml

```

Copy this file to a new location and modify it with your required configuration values before using it in automated installations.
