Skip to main content

Build

Builds in CodeNOW compile your source code, run tests, and produce deployable artifacts or library packages. You can trigger a build from the resource detail page — either as a Release or a Preview. The build is then executed by the CI provider configured for the resource.

Build Types

Release

A release build produces a durable, versioned artifact from the source code. The version follows semantic versioning and is permanently tracked by CodeNOW. Release versions are designed for long-term use — you can reliably roll out a release to any environment, roll back to a previous release, or promote it across environments (e.g. from staging to production).

Release builds are available for all resource types (application components, libraries, etc.).

Preview

A preview build is designed as a fast, temporary build for validating work in progress. It creates a temporary version that is not durable and is not intended for long-term use.

Typical use cases:

  • Quick validation — you are working on a feature branch and need to quickly build and deploy it to a target environment to verify how it behaves in a real cluster
  • Multi-component integration — your feature spans multiple components, each with work in progress on a feature branch. You need to build preview versions of all affected components and compose the full application from these branches to test them together.

When a preview build is deployed to an environment, CodeNOW automatically creates or reuses a Preview Configuration — a temporary deployment configuration that holds the environment-specific values for the preview version. This configuration exists only for the duration of the preview deployment and is removed when the preview is undeployed or replaced by a release.

When a preview build is deployed to an environment, the result is a Preview Deployment — a temporary deployment running a preview package composed of the built component versions.

Preview builds are available only for deployable components (application components).

Build Lifecycle

  1. A build is triggered — either manually (via + New Release / + New Preview) or automatically via triggers
  2. The CI provider picks up the build and executes the pipeline defined in .codenow.yaml
  3. The build progresses through pipeline stages (compile, test, package, publish)
  4. The result is recorded in the Build History with status, logs, and artifacts
  5. For deployable components, a successful build can be deployed to a target environment via Direct Deploy