Skip to main content

Deployment Configuration

A Deployment Configuration defines how an application is deployed to a specific target environment. It maps a range of package versions to a target environment and specifies the environment-specific configuration values that override the component defaults.

How It Works

Each deployment configuration is bound to a target environment and covers a version interval — a range of package versions for which it applies. When a package is deployed, CodeNOW selects the deployment configuration whose version interval covers that package version and uses it to configure all included components.

The configuration values defined here override the default configuration stored in the component's repository. This is where environment-specific settings belong — connection strings, credentials, feature flags, resource limits, and any other values that differ between environments.

Configuration resolution diagram

For each configuration type — configuration files, environment variables, and Helm values — CodeNOW resolves the effective value using the following rule: if an override is defined in the Deployment Configuration, it takes full precedence; otherwise, the default stored with the tagged component version in git is used.

Connected services are a special case: the component definition only specifies the binding type (Managed Component or External Service Template). The actual service instance is always assigned in the Deployment Configuration and has no default — it must be explicitly set for each target environment. This means that if any component in the application has a connected service binding defined, a Deployment Configuration with that instance assigned must exist for the target environment — otherwise the application cannot be deployed there.

Version interval matching

CodeNOW assigns each package to the deployment configuration whose version interval it falls into. If you create a hotfix package with an older version number — for example, to patch a production release that predates a newer configuration interval — CodeNOW will use the corresponding older deployment configuration for that package, not the latest one. You only need to create a new deployment configuration when you intentionally want a different set of environment-specific values for a new version range. Common reasons for creating a new interval are described on the Create Configuration page.

What You Can Do

ActionDescription
Create ConfigurationCreate a new deployment configuration for a target environment
Configuration DetailView and edit the configuration values for a specific deployment configuration
Delete ConfigurationRemove a deployment configuration
Preview ConfigurationAutomatically created configuration enriched after a successful preview build deployment