DocsOverviewQuick StartFrameworksDeploymentsDomainsEnv VarsFeature FlagsAI GatewayAPI ReferenceWebhooks

Deployments

How deployments work

Every push to your production branch triggers a new deployment. Deploxa builds your app, uploads it to the CDN, and atomically switches traffic — with zero downtime.

The build pipeline

1

Git push detected

The GitHub App webhook fires on every push to a connected branch. Deploxa creates a Deployment record and queues a build.

2

Builder starts

An isolated build container (ECS Fargate) starts. Each build runs in a completely fresh environment — no shared state between builds.

3

Repo cloned

Your repository is cloned at the specific commit SHA. Submodules are initialized if present.

4

Dependencies installed

npm install / pip install / etc. is run. Build cache is used when available to speed up repeat builds.

5

Build runs

Your configured build command is executed. Output is streamed in real-time to the build log.

6

Artifacts uploaded

The output directory is compressed and uploaded to S3. For Docker builds, the image is pushed to ECR.

7

Traffic switched

The proxy is updated to route all traffic for your domain to the new deployment. Previous deployment stays available for instant rollback.

Deployment statuses

QUEUED

The build is waiting for an available build slot. Paid plans have priority queue access.

BUILDING

The builder is cloning your repo, installing dependencies, and running your build command.

DEPLOYING

Build artifacts are being uploaded to the CDN and the deployment is being activated.

READY

Your deployment is live and serving traffic. This is the active production deployment.

ERROR

The build or deployment failed. Check the build log for the root cause.

CANCELLED

The deployment was manually cancelled before it completed.

Preview deployments

Every pull request gets a unique, isolated preview URL. The preview is updated on each commit push to the PR branch.

https://my-app-pr-42.deploxa.app

Preview URLs follow the pattern <project>-pr-<number>.deploxa.app. They are automatically deleted 7 days after the PR is merged or closed.

Preview deployments use the same environment variables as production unless you configure per-environment overrides. See the Env Vars guide.

Instant rollbacks

Rolling back to a previous deployment does not trigger a rebuild. Deploxa switches traffic to the previously uploaded artifacts instantly — typically under 5 seconds.

How to rollback

Go to Project → Deployments, find any past READY deployment, and click Promote to Production.

No rebuild required

All deployment artifacts are retained indefinitely. Rollback is a metadata operation — instant.

Build logs

Build logs stream in real-time via WebSocket while a deployment is in progress. After completion, logs are persisted and remain accessible from the deployment detail page.

14:32:01 ▶ Cloning repository at abc1234…

14:32:03 ▶ Installing dependencies (npm ci)…

14:32:18 ▶ Running: next build

14:32:41 Route (app) Size

14:32:41 ○ / 4.2 kB

14:32:45 ▶ Uploading 238 files…

14:32:49 ✓ Deployment live: https://my-app.deploxa.app

Triggering deployments

Git push

Automatic. Fires on every push to a connected branch.

Deploy hook

HTTP POST to a unique URL. Useful for CMS webhooks, CI systems, and cron-triggered rebuilds.

Dashboard

Click Redeploy on any previous deployment from the dashboard.

REST API

POST /api/v1/deployments with your project ID and branch.

Learn about deploy hooks in the Webhooks guide.

Build limits

LimitFreeProTeam
Builds / month100UnlimitedUnlimited
Concurrent builds1310
Build timeout10 min30 min60 min
Build memory512 MB2 GB8 GB
Log retention7 days30 days1 year
FrameworksCustom Domains