Skip to main content

astro deployment create

info

The behavior and format of this command differs depending on what Astronomer product you're using. Use the following tabs to change product contexts.

Create a Deployment on Astro. This command is functionally identical to using the Astro UI to create a Deployment.

Usage

astro deployment create

When you use astro deployment create, it creates a Deployment with a default Worker Queue that uses default worker types.

Some Deployment configurations, including worker queue and worker type, can be set only by using the --deployment-file flag to apply a Deployment file. See Manage Deployments as code.

Options

OptionDescriptionPossible Values
--allowed-ip-address-rangesIf Remote Execution is enabled, limit the Deployment's incoming traffic to the Remote Agents in your environment.A comma-separated list of CIDR blocks, such as 192.168.0.0/24,10.0.0.0/16.
-a, --high-availabilityEnables high availability for the Deployment. The default is disable.Either enable or disable.
-c, --cluster-id(Dedicated clusters only) The cluster in which you want to create a Deployment.A valid cluster ID.
--cicd-enforcementSpecify that the Deployment can only accept code deploys from API tokens. Note that in CLI versions before 1.23, this flag was --enforce-cicd.None
-d,--descriptionThe description for the Deployment.Any string. Multiple-word descriptions should be specified in quotations (")
--dag-deployEnables DAG-only deploys for the Deployment. The default is disable.Either enable or disable.
--default-task-pod-cpuThe default task Pod CPUs to use for the Deployment. See Customize a task's Kubernetes Pod for more information.A numeric value such as 0.25. This number cannot exceed the values you configured in your Default pod resources in the UI or in your Deployment configuration file.
--default-task-pod-memoryThe default task pod memory to use for the Deployment in Gi. See Customize a task's Kubernetes Pod for more information.A numeric value followed by Gi, such as 0.5Gi. This number cannot exceed the values you configured in your Default pod resources in the UI or in your Deployment configuration file.
--deployment-fileLocation of the template file that specifies the configuration of the new Deployment. File can be in either JSON or YAML format. See Create a Deployment with a Deployment File.A valid file path for YAML or JSON template file
-e,--executorThe executor to use for the Deployment.AstroExecutor, CeleryExecutor, or KubernetesExecutor
-m,--development-modeSet to 'enable' to enable development-only features such as hibernation. When enabled, the Deployment does not have guaranteed uptime SLAs.enable or disable
-n,--nameThe name of the Deployment.Any string. Multiple-word descriptions should be specified in quotations
-p, --cloud-providerThe Cloud Provider to use for your Deployment. The default is azure.Possible values are azure, aws, and gcp for both standard and dedicated clusters.
--regionThe region where you want to host the Deployment.The code for any supported region
--remote-execution-enabledEnables Remote Execution for the Deployment.None
--resource-quota-cpuThe Deployment's CPU resource quota for Kubernetes Pods. See Customize a task's Kubernetes Pod for more information.A numeric value such as 10. This number cannot exceed the values you configured in your Default pod resources in the UI or in your Deployment file configuration file.
--resource-quota-memoryThe Deployment's memory resource quota for Kubernetes Pods in Gi. See Customize a task's Kubernetes Pod for more information.A numeric value followed by Gi, such as 20Gi. This number cannot exceed the values you configured in your Default pod resources in the UI or in your Deployment file configuration file.
-s,--scheduler-sizeThe size of scheduler for the Deployment. The default is small.Either small, medium, large, or extra_large. extra_large schedulers require a minimum Astro Runtime version of 9.7.0.
--task-log-bucketIf Remote Execution is enabled, specify the cloud storage bucket for task log storage. You can configure your Deployment to show the stored logs directly in the Airflow UI.A valid cloud storage bucket name, such as gs://my-task-logs or s3://my-task-logs.
--task-log-url-patternIf Remote Execution is enabled, specify the URL template to link to task logs stored in an external logging provider from the Airflow UI.A string URL template. See Configure external logging provider for Remote Execution Deployments.
--typeThe type of cluster you want to run the Deployment on. The default is standard.Either dedicated or standard.
-v,--runtime-versionThe Astro Runtime version for the DeploymentAny supported version of Astro Runtime. Major, minor, and patch versions must be specified.
--waitWait for the new Deployment to have a healthy status before completing the command.None
--workload-identityThe workload identity to use for the Deployment. You must use this flag with --cloud-provider.A valid AWS arn.
--workspace-idThe Workspace in which to create a Deployment. If not specified, your current Workspace is assumed.Any valid Workspace ID

Examples

# CLI prompts you for a Deployment name and cluster
astro deployment create

# Create a Deployment with all required information specified. The CLI will not prompt you for more information
astro deployment create -d="My Deployment Description" --name="My Deployment Name" --cluster-id="ckwqkz36200140ror6axh8p19"

# Specify the new Deployment's configuration with a yaml file
astro deployment create --deployment-file deployment.yaml

# Create a deployment on Astro using a standard cluster
astro deployment create --name="my-gcp-deployment" --region="us-central1"

# Create a deployment on Astro using a dedicated cluster
astro deployment create --name="my-gcp-deployment" --cluster-type="dedicated" --cluster-id="clj123n1311p901muj9hwpgjb"

Was this page helpful?