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
| Status | Meaning |
|---|---|
| Pending | Created and waiting, for example for the workspace's build slot. |
| Awaiting approval | A pull request from a fork that someone has to authorize. See GitHub. |
| Building | The image is being built. The log streams on the deployment page. |
| Deploying | Instances are starting in the selected regions. If you configured a health check, Teral waits for it to pass. |
| Network | The deployment's URLs are being set up. |
| Finalizing | Traffic is moving to the new deployment. |
| Ready | Running and reachable. |
| Failed | A step failed. The deployment page shows which one and why. |
| Cancelled | Someone cancelled it while it was in progress. |
| Superseded | A newer push to the same branch replaced it before its build started. |
| Skipped | Auto deploy is off for that environment, so nothing was built. |
| Stopped | No 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
2xxstatus, and that it doesn't depend on a database or another service that might be down.