Manage Destinations using Rudder CLI Beta
- free
- growth
- enterprise
3 minute read
This feature is in Public Beta as part of RudderStack’s Early Access Program, where we work with early users and customers to test new features and get feedback before making them generally available.
Contact the Product team if you have any questions.
Rudder CLI lets you manage destinations as code. You define each destination in YAML, validate the spec locally, and apply it to your workspace with the same Git-based workflow you use for sources and other CLI resources.
A destination spec is the endpoint a connection points at. You declare the destination in the same project as the source, then declare the connection that links them.
Destination support is experimental.
Enable the
destinationSupportflag in your CLI configuration (or setRUDDERSTACK_X_DESTINATION_SUPPORT=true) before you validate or apply destination resources. Without it, thedestinationkind is not registered and your specs fail validation.Rudder CLI currently supports Amazon S3 (
s3). See Supported destination types.
Key features
Declarative YAML configuration
- Define destinations in YAML with a type, definition version, and per-type
configblock. See the Destination YAML Reference. - Keep credentials out of Git by referencing secrets as
{{ .VAR }}and supplying them at apply time with--var-file. See How to Use Variable Substitution in Rudder CLI. - Optionally link a transformation with a
#transformation:reference. Connection mode per source type stays in the destinationconfigblock — not on the connection spec.
Git integration and CI/CD support
- Import destinations that already exist in your workspace, then manage them through Git.
- Validate and apply destination specs with the same
rudder-cli validateandrudder-cli applycommands you use for other resources. - Use GitHub Actions to run those commands in CI.
Who can use this feature?
CLI-based destination management is useful when you need to:
- Version destination configuration next to the sources and connections that use it.
- Review destination changes in pull requests before they reach a workspace.
- Reproduce the same destination setup across development and production workspaces.
Supported destinations
Rudder CLI currently supports Amazon S3 (s3). The dashboard catalog is larger than what you can define in CLI YAML.
Unverified destinations will be supported in the next iteration.
See Supported destination types for the type value you use in YAML.
Get started
- Follow the End-to-End Walkthrough: Destinations with Rudder CLI to define, validate, and apply a destination
- See the Destination YAML Reference for field definitions, examples, and secrets
- See How to Use Variable Substitution in Rudder CLI to keep destination credentials out of Git
- Connect the destination to a source with Manage Connections using Rudder CLI
- Automate with GitHub Actions for Rudder CLI