Teral
Deploy

Deployments

What happens between a push and a live URL.

A deployment is one version of an app in one environment. It is created from one commit or one image, together with the settings and variables of its environment at that moment. After that it doesn't change.

Statuses

StatusMeaning
PendingCreated and waiting, for example for the workspace's build slot.
Awaiting approvalA pull request from a fork that someone has to authorize. See GitHub.
BuildingThe image is being built. The log streams on the deployment page.
DeployingInstances are starting in the selected regions. If you configured a health check, Teral waits for it to pass.
NetworkThe deployment's URLs are being set up.
FinalizingTraffic is moving to the new deployment.
ReadyRunning and reachable.
FailedA step failed. The deployment page shows which one and why.
CancelledSomeone cancelled it while it was in progress.
SupersededA newer push to the same branch replaced it before its build started.
SkippedAuto deploy is off for that environment, so nothing was built.
StoppedNo longer running. It can be started again.

Going live

When a production deployment becomes Ready, it takes over the production URLs and custom domains straight away. The deployment it replaced keeps running for 30 minutes, so a rollback within that window switches back instantly. After that, the old deployment stops.

In preview, a new deployment on a branch replaces the branch's previous one, which stops a minute later. A preview deployment that receives no requests for an hour also stops. You can start it again from its menu with Wake deployment.

Actions

Open a deployment's menu in the deployment list:

  • Redeploy builds the same commit again, or runs the same image again, with the current settings and variables. Use it after changing variables.
  • Cancel deployment stops a deployment that is still in progress and frees the build slot.
  • Rollback and Promote move production traffic to another deployment. See Rollbacks.
  • Stop deployment and Wake deployment stop and start preview deployments. Production deployments can't be stopped this way.

When a deployment fails

The deployment page shows the step that failed and its log. The usual causes:

  • The build fails. Read the build log. With automatic builds, check the root directory and pin your versions.
  • The app doesn't start. Check the runtime logs. Often a variable is missing, or the app listens on a different port than the Port setting.
  • The health check never passes. Check that the path returns a 2xx status, and that it doesn't depend on a database or another service that might be down.
Edit on GitHub

On this page