mirror of
https://github.com/taigrr/nats.docs
synced 2025-01-18 04:03:23 -08:00
40 lines
1.2 KiB
Markdown
40 lines
1.2 KiB
Markdown
# Configuration Management
|
|
|
|
In many cases managing the configuration in your application code is the best model, many teams though wish to pre-create Streams and Consumers.
|
|
|
|
We support a number of tools to assist with this:
|
|
|
|
* `nats` CLI with configuration files
|
|
* [Terraform](terraform.md)
|
|
* [GitHub Actions](github_actions.md)
|
|
* [Kubernetes JetStream Controller](kubernetes_controller.md)
|
|
|
|
## nats Admin CLI
|
|
|
|
The `nats` CLI can be used to manage Streams and Consumers easily using it's `--config` flag, for example:
|
|
|
|
## Add a new Stream
|
|
|
|
This creates a new Stream based on `orders.json`. The `orders.json` file can be extracted from an existing stream using `nats stream info ORDERS -j | jq .config`
|
|
|
|
```text
|
|
$ nats str add ORDERS --config orders.json
|
|
```
|
|
|
|
## Edit an existing Stream
|
|
|
|
This edits an existing stream ensuring it complies with the configuration in `orders.json`
|
|
|
|
```text
|
|
$ nats str edit ORDERS --config orders.json
|
|
```
|
|
|
|
## Add a New Consumer
|
|
|
|
This creates a new Consumer based on `orders_new.json`. The `orders_new.json` file can be extracted from an existing stream using `nats con info ORDERS NEW -j | jq .config`
|
|
|
|
```text
|
|
$ nats con add ORDERS NEW --config orders_new.json
|
|
```
|
|
|