Skip to main content
Deploy

Deployments

Learn how Easel builds, publishes, and manages versions of your application.

A deployment is a version of your application built from a specific source revision and configuration.

Each successful deployment has its own URL and contains the static assets, functions, routing configuration, and metadata produced by the build. Deployments can be used for previewing changes or serving production traffic.

Easel creates deployments from Git commits and from the CLI. A deployment moves through a lifecycle from creation to build, publication, and, when applicable, assignment to your production domains.

How deployments work

A typical deployment follows this sequence:

Source change

Queued

Provisioning

Building

Assigning domains

Ready

Previewed or assigned to production

A deployment that reaches Ready can receive traffic through its deployment URL. Production domains only serve the deployment currently assigned to production.

This distinction is important:

  • A deployment is a built version of your application.
  • An environment determines which configuration is used to build it.
  • A URL routes traffic to it.
  • The current production deployment is the deployment serving your production domains.

These concepts are related, but they are not interchangeable.

Deployment environments

Easel provides two deployment environments:

EnvironmentTypical useTypical trigger
PreviewTest changes before releasePush to a non-production branch or open a pull request
ProductionServe live trafficPush to the production branch or deploy explicitly to production

Preview and Production deployments can use different environment variables and project settings.

Learn more in Deployment environments.

Deployment URLs

Every successful deployment receives a unique deployment URL.

Projects also have stable URLs that move forward as new deployments become ready:

  • A branch preview URL points to the latest ready deployment for a branch.
  • A pull request preview URL points to the latest ready deployment associated with a pull request.
  • A production domain points to the current production deployment.

The unique deployment URL identifies one deployment. Stable branch, pull request, and production URLs may point to different deployments over time.

Learn more in Deployment URLs.

Creating deployments

You can create deployments through:

  • Git pushes
  • Pull requests associated with those pushes
  • The Easel CLI
  • The dashboard Deploy action for the production branch

Git-connected projects usually deploy automatically. CLI deployments are useful for local testing, CI systems, and workflows that do not originate from a Git provider.

Learn more in Creating deployments.

Managing deployments

From a project's deployment history, you can inspect the source revision, build output, logs, environment, status, and URLs associated with each deployment.

Depending on the deployment state, you can also:

  • Cancel an in-progress deployment
  • Spin down a Ready or Failed deployment
  • Promote a staged Production deployment
  • Promote a Preview deployment (rebuilds with Production configuration)
  • Instant Rollback to a previous Production deployment

Learn more in Managing deployments.

Production releases

A Production deployment is built with Production configuration. It does not necessarily become the current deployment immediately.

When Auto-assign production domains is on (the default), a Ready Production deployment becomes Current. When it is off, the deployment stays Staged until you promote it. Instant Rollback also turns auto-assign off until you undo the rollback or promote again.

Keeping build configuration separate from traffic assignment supports:

  • Automatically publishing every successful production-branch deployment
  • Reviewing a Production deployment before assigning production traffic
  • Returning production traffic to a previous deployment without rebuilding it

Learn more in Production releases, Promoting deployments, and Rolling back deployments.

Guides in this section