# noust config

Read, upgrade, clean and edit Noust's configuration file.

```bash
noust config [OPTIONS] COMMAND [ARGS]...
```

| Option | What it does | Default |
|---|---|---|
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |

Subcommands: [`clean`](#noust-config-clean), [`get`](#noust-config-get), [`path`](#noust-config-path), [`protect`](#noust-config-protect), [`set`](#noust-config-set), [`show`](#noust-config-show), [`upgrade`](#noust-config-upgrade)

## noust config clean

Remove the settings that no version of Noust reads any more.

```bash
noust config clean [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `-q`, `--quiet` | Say nothing unless it fails. Use this in provisioning scripts. |  |
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust config get

Print one configuration value, addressed by its dotted key.

```bash
noust config get [OPTIONS] KEY
```

Arguments: `key`

| Option | What it does | Default |
|---|---|---|
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust config path

Show where the configuration file lives, and whether it exists.

```bash
noust config path [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust config protect

Encrypt the secrets of the notification channels that config.yaml holds as text.

```bash
noust config protect [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust config set

Set one configuration value, addressed by its dotted key, and save it.

```bash
noust config set [OPTIONS] KEY [VALUE]
```

Arguments: `key`, `value`

| Option | What it does | Default |
|---|---|---|
| `--list` | Treat VALUE as a list, a, b, c or [a, b, c], for a key such as notifications.allow_private_hosts. |  |
| `--stdin` | Read VALUE from standard input instead of the command line, so a secret never lands in shell history or in 'ps'. |  |
| `--prompt` | Prompt for VALUE without echoing it back, twice, like a password prompt. |  |
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust config show

Show the configuration in effect.

```bash
noust config show [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--json` | Print the configuration as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust config upgrade

Add the options a newer Noust expects.

```bash
noust config upgrade [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `-q`, `--quiet` | Say nothing unless it fails. Use this in provisioning scripts. |  |
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

