> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nuon.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Updating Nuon BYOC

> Update Nuon BYOC, the Stack, and the Nuon CLI

There are three types of updates that apply to your Nuon BYOC install.

1. Updates to Nuon BYOC itself
2. Updates to the Nuon BYOC stack module
3. Updates to the Nuon CLI your team and CI use

## Updating Nuon BYOC

In most cases updates of the first type will require nothing from you.
We will notify you when an update is ready, and deploy it on your approval.

Occasionally, in the case of new features, there may be new inputs or secrets required.
In those cases, we will notify you about the changes, but the Stack module will also provide actionable error messages if a required input or secret is missing.

## Updating the Stack

The Stack does not have to be upgraded often.
When it is required, though, you simply need to update the stack module version.

We recommend using a minor version constraint for the module, currently `~> 1.1`.
This way, running `terraform init -upgrade` will pull in new patch versions.

We will notify you if a minor or major version update is needed.
In those cases, bump the version on the module (`nuonco/stack/aws` or `nuonco/stack/gcp`) and run `terraform init -upgrade`.

```hcl theme={null}
module "nuon_byoc_stack" {
  // ...
  version = "~> 1.0" // [!code --]
  version = "~> 1.1" // [!code ++]
}
```

## Updating the CLI

Use the CLI version that matches your Nuon BYOC control plane. Your control plane's minimum CLI version is set to the
version it runs, so after we deploy an update, older CLIs print a warning that they are older than the minimum.

After each update:

1. Have everyone on your team install the new version. See
   [Install your control plane's version](https://docs.nuon.co/cli#install-your-control-planes-version).
2. If your CI pins the CLI, for example with the [Nuon GitHub Action](https://docs.nuon.co/guides/github-actions.md#choosing-the-cli-version)'s
   `nuon_version` input, bump the pin. The action installs your control plane's version automatically when
   `nuon_version` is unset.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.