Watching a provision run
The provision detail page streams progress and logs in real-time while an environment is being set up.
When you click Start provisioning in the create-environment wizard, you are redirected to a provision detail page that streams the job's status, progress percentage, and log output in real-time. The page lives at:
/organizations/<your-org>/provision/<environment-id>What's shown
The page is split into two panels:
Details sidebar (left or top on narrow screens)
- Environment type badge (Production, Staging, Trial, and so on)
- Environment name and domain
- Progress bar with percentage and time-remaining estimate
- Environment details: platform, theme, provider, location, server tier, disk size
Log stream (main area)
Live output from the provision job as it runs. Lines append in real time — no manual refresh needed. If you navigate away and come back, the stream resumes from where it left off.
Provision statuses
| Status | Meaning |
|---|---|
| Pending | Job queued, not yet started |
| Running | Actively provisioning |
| Awaiting payment | Stripe checkout required before provisioning continues |
| Completed | Environment is ready; page auto-redirects |
| Failed | Terminal error; retry or destroy options shown |
Typical duration
A successful provision goes through several phases:
- Cloud server creation — provider API call to spin up the VM (2–5 min; skipped for trials)
- OS bootstrap — install required packages and configure the host (2–3 min)
- Stack provision — Docker Compose builds and starts all containers (10–15 min)
- Magento install — database initialization, sample data load if requested (5–10 min)
- Healthchecks — wait for the storefront and admin URLs to respond (1–2 min)
- Activation — lifecycle status flips to Active
Total: roughly 20–35 minutes. Trials are typically faster because cloud server creation is skipped.
After completion
When the provision completes, a 10-second countdown starts and then automatically redirects you to the environment detail page. Action buttons appear so you can navigate immediately without waiting for the countdown.
If the provision fails, the footer shows the failure status and a Retry button. Retrying re-queues the same job with the same configuration; you do not need to fill in the wizard again.
Awaiting payment
If the environment was created and is waiting for a Stripe checkout to complete, the status shows "Awaiting Payment" and the footer shows a Continue to Subscribe (or Retry Checkout) button. Click it to complete payment; the provision resumes automatically after the webhook confirms payment.
When a provision fails
Common failure causes:
- Provider quota your Hetzner account has no available capacity in the chosen region
- Provider region unavailable try a different region when retrying
- Token permissions your provider API token needs Read & Write access
- Resource conflict the subdomain is already taken on the provider
See /docs/help/troubleshooting/provisioning-failed for the full diagnosis tree.
Leaving the page
You can close the browser tab — the provision continues running on StoreFrame's infrastructure. When you return, the detail page resumes streaming. The environment also appears in the Projects list with status "Provisioning" and a live progress bar in the status column.