Deployments
A Deployment is a configured instance of a template applied to a specific cloud environment. It represents one piece of infrastructure — or a complete infrastructure stack — that has been provisioned (or is ready to be provisioned) in a real cloud account.
What a Deployment Contains
When you create a Deployment, you specify:
| Property | Description |
|---|---|
| Name | A descriptive name for this specific instance (e.g., "EU Production Cluster") |
| Description | An optional explanation of what this deployment is for |
| Source | The template (or GitHub repository) that defines the infrastructure |
| Project | The project this deployment belongs to |
| Cloud Environment | The cloud provider, region, and account/subscription to deploy into |
| Variables | Values for all the template's configurable inputs |
| Tags | Key–value metadata for organization and filtering |
Deployment Sources
A Deployment can be created from two types of sources:
1. Template-Based (Recommended)
You select a template from the Amnify template library (synced from your GitHub repository). This is the standard and recommended approach for most infrastructure needs. Template-based deployments benefit from reusability across projects and environments, a structured variable interface in the Amnify UI, and shared ownership and versioning via your GitHub repository.
2. GitHub Repository-Based
For advanced use cases where a team has custom infrastructure definitions that don't fit the shared template model, a Deployment can point directly to a specific GitHub repository. This is useful for one-off or highly bespoke infrastructure that your team manages independently. For most use cases, the template-based approach is preferred.
Execute vs. Destroy
"Execute" and "Deploy" are used interchangeably in Amnify Deploy — both refer to the same action: provisioning the infrastructure defined by the template.
Execute / Deploy — Creates (or updates) the cloud resources defined by the template.
Destroy — Tears down the provisioned infrastructure and removes all cloud resources managed by this deployment.
Both actions follow the same approval workflow: a plan is generated and must be approved before any change is applied. See Deployment Lifecycle for details.
Destroy is irreversible. Once cloud resources are removed, the data and configuration they held is gone. Always review the plan carefully before approving a destroy operation.
Deployment Runs
Every time you execute or destroy a deployment, a Run is created. A Run captures when the execution was triggered and by whom, the full execution log, the plan output (what changes were proposed), any error messages if the run failed, and the final outputs produced by the infrastructure (e.g., endpoint URLs, IP addresses).
Deployments accumulate runs over time, giving you a complete history of every infrastructure change.
Editing a Deployment
After a Deployment is created, you can update its variable values at any time — for example, to change a configuration value or rotate a sensitive variable like a password. Editing a Deployment does not immediately change the infrastructure; you must execute the deployment again for changes to take effect.
Relationship to Projects
Each Deployment belongs to exactly one Project. The Project acts as the organizational container; the Deployment is the executable unit. When you navigate to a Project in Amnify Deploy, you will see all the Deployments it contains along with their current status.
Next Steps
- Pipelines — learn how to chain Deployments together
- Deployment Lifecycle — understand the execution flow and approval process
- Creating Deployments guide — step-by-step walkthrough