Deployments
A deployment is a configured instance of a template within a project. It specifies the template to use, the target region, input variables, and environment configuration. Executing a deployment provisions the actual cloud infrastructure.
Creating a deployment
The deployment creation wizard guides you through four steps:
Step 1 — Environment
- Select a template from the library (or point to a GitHub repo with custom Terraform code)
- Choose the cloud provider (AWS, Azure, or GCP)
- Select the region to deploy into
- Assign to a project
Step 2 — Variables
Configure the template’s input variables:
- String values — Resource names, CIDR blocks, etc.
- Number values — Instance counts, disk sizes, etc.
- Boolean flags — Enable/disable features like encryption
- Select from options — Instance sizes, OS images, etc.
Amnify can browse your existing cloud resources through dropdown selectors. When a variable expects a VPC ID, subnet, or security group, you can select from your existing resources — similar to the AWS or Azure console.
Add metadata tags for tracking and organization. These are applied to all resources created by the deployment.
Step 4 — Review
Review all configuration before creating the deployment. Once created, the deployment is ready to execute.
Executing a deployment
Once created, execute the deployment to provision infrastructure:
Plan phase
- Click “Execute” on the deployment
- Amnify runs
terraform plan and shows you exactly what will be created, modified, or destroyed
- The deployment moves to “Awaiting Approval” status
Approve phase
- Review the plan output in the UI
- Click “Approve” to proceed
Apply phase
- Amnify runs
terraform apply and provisions the infrastructure
- Outputs are captured (resource IDs, endpoints, IPs, etc.) and stored
- Status moves to “Completed”
Deployment statuses
| Status | Description |
|---|
| Queued | Waiting to start |
| Planning | Running terraform plan |
| Awaiting Approval | Plan complete — waiting for your review and approval |
| Applying | Provisioning infrastructure |
| Completed | Infrastructure successfully provisioned |
| Failed | Something went wrong — check the logs |
| Destroying | Tearing down infrastructure |
| Destroyed | Infrastructure has been removed |
Deployment runs
Each execution of a deployment creates a deployment run. You can:
- View the plan output (what will change)
- Read execution logs (terraform output)
- See outputs (resource IDs, endpoints created)
- Track status through the lifecycle
- View the commit SHA the deployment was pinned to
Destroying infrastructure
When infrastructure is no longer needed:
- Navigate to the deployment
- Click “Destroy”
- Amnify runs
terraform destroy and removes all provisioned resources
- Status moves to “Destroyed”
Sensitive variables
Variables marked as sensitive (passwords, tokens, keys) are:
- Encrypted at rest — never stored in plaintext
- Decrypted only at execution time — by the deployment worker
- Never exposed in the UI or logs
Version pinning
Each deployment run is pinned to the Git commit SHA of the template at execution time. This ensures:
- Reproducible deployments
- Template changes don’t affect in-progress runs
- You can trace exactly which code was deployed