Astro CLI release notes
This document provides a summary of all changes made to the Astro CLI. For general product release notes, go to Astro Release Notes. If you have any questions or a bug to report, contact Astronomer support.
- Stable versions: 1.27.1, 1.26.0, and 1.25.0. See Astro CLI release and lifecycle policy for more information about support for CLI versions.
Astro CLI 1.27.1
Release date: May 16, 2024
Bug fixes
- Fixed an issue where the API token expiration check was causing login failures with API tokens that did not have an expiration date.
Astro CLI 1.27.0
Release date: May 16, 2024
New flags for the Deployment logs commands:
You can now filter logs for specific Deployment components using the following new flags for astro deployment logs
:
--webserver
--scheduler
--triggerer
--worker
Exclude DAG files from parse test
You can now exclude DAG files from being tested when you run astro dev parse
.
All new Astro projects that you create with astro dev init
now include a file named .astro/dag_integrity_exceptions.txt
. Add the names of DAGs to this file to exclude them from being tested when you run astro dev parse
. This allows you to exclude DAGs that you know will not pass your tests.
To use this feature in an existing Astro project, delete the .astro/test_dag_integrity_default.py
file in your Astro project, then run astro dev init
. After you run this command, the Astro CLI creates a new default test file along with a .astro/dag_integrity_exceptions.txt
text file.
Additional improvements
- Astro projects no longer have to include DAGs in order to run
astro deploy --image
. - You can now append
2>/dev/null | head
to commands to disregard upgrade messages. For example, runningastro completion bash 2>/dev/null | head
ensures that the resulting bash script remains unaffected by the upgrade message. - You can now use the
--development-mode disable
flag withastro deployment update
to turn off development mode for an existing Deployment. Note that you still cannot turn on development mode for an existing Deployment.
Bug fixes
- Fixed an issue where you couldn't create two Deployments with identical names across different Workspaces.
- The
upgrade-test
command now returns the correct error code, ensuring accurate feedback during testing and CI/CD.
Astro CLI 1.26.0
Release date: April 24, 2024
New commands to assign Organization and Workspace API tokens at different levels
You can now use the Astro CLI to manage Organization and Workspace API tokens at the Workspace and Deployment level using the following commands:
astro deployment token organization-token
astro deployment token workspace-token
astro workspace token organization-token
For more information about this feature, see:
- Assign an Organization or Workspace API token to a Deployment.
- Assign an Organization API token to a Workspace
Bug fixes
- Fixed an issue where existing secret environment variables in a Deployment file could be applied to the Deployment with an empty value. The secret variable value now persists.
- Fixed an issue where
astro deployment inspect
generated an incorrect Airflow API URL. - Fixed a bug that caused some input checks for
astro deployment upgrade-checks
to fail against valid inputs.
Astro CLI 1.25.0
Release date: March 28, 2024
Manage Deployment API tokens with the Astro CLI
You can now manage Deployment API tokens using the following CLI commands:
astro deployment token create
astro deployment token list
astro deployment token update
astro deployment token rotate
astro deployment token delete
Additional improvements
- Updated the example DAGs that the Astro CLI creates when you run
astro dev init
. - The CLI now tells you if your API token is invalid.
Bug fixes
- Fixed an issue with
deployment variable create
where it would cut off the new variables value at the first "=" character. - Fixed an issue where running a deployment command in a workspace without a deployment caused an error. Now users will be asked if they want to create a deployment if one does not exist.
- Fixed an issue where
astro dev start —deployment-id
was not creating local connections correctly in some scenarios. - Fixed an issue where
astro deployment
commands could only list 20 deployments. Now the commands will list up to 1000 for each workspace.
Astro CLI 1.24.1
Release date: February 29, 2024
Bug fixes
- Fixed an issue where the Astro CLI would experience a code panic if you tried to set a hibernation schedule for a Deployment that didn't exist.
- Fixed an issue where the Astro CLI would send and retrieve hibernation schedules for non-development Deployments.
Astro CLI 1.24.0
Release date: February 27, 2024
Support for hibernating development Deployments
You can now use the Astro CLI to hibernate or wake up a development Deployment. These commands work well in automated processes where a Deployment requires flexibility for when it hibernates. Note that you can hibernate a Deployment only if you enable Development Mode when you create the Deployment.
Use the following new commands to hibernate development Deployments regardless of their existing hibernation schedule:
Additionally, you can create new development Deployments and configure long-term hibernation schedules for them using astro deployment create
.
Additional improvements
- You can now configure a custom workload identity when you create a Deployment using a Deployment file.
- Added support for the upcoming custom role management feature on Astro
Bug fixes
- Fixed an issue where
astro deployment variable list --save
didn't format secret environment variables correctly. - Fixed an issue where you couldn't update a Deployment with a Deployment file using a Deployment API token.
Astro CLI 1.23.0
Release date: February 14, 2024
Changes to existing CLI command flags
The following flags have been updated, but will continue to work with a deprecation notice until the v1.25.0 release of the Astro CLI:
astro deployment logs --key-word
ia a new flag that allows you to search your Deployment's logs for an exact key word or phrase.astro deployment create --cluster-type
is nowastro deployment create --type
.astro deployment create --enforce-cicd
is nowastro deployment create --cicd-enforcement
.
Kubernetes worker configurations are now consistent with the Astro Cloud UI
You can now use Deployment files or the Astro CLI to create or update Kubernetes worker configurations.
Deployment files now include some new and updated fields for Deployment configuration to match the options available in the Astro UI. This also allows you to create or update Kubernetes worker configurations directly, instead of requiring you to update the worker resources by changing the Kubernetes worker queue configuration.
You can now use the default_task_pod_cpu
, default_task_pod_memory
, default_worker_type
, resource_quota_cpu
, and resource_quota_memory
fields in a Deployment file to update your Kubernetes workers instead of creating or updating a Kubernetes default worker queue.
With this new functionality, the following commands to update a Deployment running the Kubernetes executor continue to work, but display a deprecation notice:
astro deployment worker-queue create
astro deployment worker-queue update
Instead, you can use the new --default-task-pod-cpu
, --default-task-pod-memory
, --resource-quota-cpu
, or --resource-quota-memory
flags with astro deployment create
and astro deployment update
to edit your Kubernetes worker configuration using the Astro CLI.
Changes to Deployment file configurations
The following changes have been made to the format of Deployment files:
- You no longer have to specify a
cluster_name
for standard Deployment files. scheduler_size
is no longer case sensitive.- Possible values for
cloud_provider
are nowgcp
,aws
, andazure
. This input is not case sensitive. - Possible values for
deployment_type
now includestandard
,dedicated
, andhybrid
in addition to the existing values ofhosted_shared
,hosted_dedicated
, andhosted_standard
. This input is not case sensitive - Possible values for for the
executor
field are now includecelery
andkubernetes
.CeleryExecutor
andKubernetesExecutor
still work. This input is not case sensitive, so, for example,celeryexecutor
still works. - (Astro Hosted only)
default_task_pod_cpu
,default_task_pod_memory
,resource_quota_cpu
, andresource_quota_memory
are new fields for Astro Hosted deployments. - (Astro Hybrid only)
default_worker_type
is a new field for Hybrid deployments that use the Kubernetes executor.
Additional improvements
- You can now trigger a DAG-only deploy on Astronomer Software using
astro deploy --dags
. See Deploy DAGs on Astronomer Software. astro deployment logs --key-word
is a new flag that allows you to search your audit logs for an exact key word or phrase.- If you log in to Astro from the CLI, you need to select a Deployment when you deploy code. Previously, the Astro CLI used auto-select to automatically choose a Deployment for code deploys based on the CLI context. Now, by default, the CLI does not auto-selects the Deployments where your code deploys when you use it. However there are the following exceptions:
- If you log in to Astro with an API token using the
ASTRO_API_TOKEN
,ASTRONOMER_KEY_ID
, orASTRONOMER_KEY_SECRET
environment variables, auto-select is enabled. This is important because it ensures that if you have CI/CD scripts that rely on auto-select, they will continue to work. - There is a new config,
auto_select
. Ifauto-select
is set totrue
in the config file, auto-select is always enabled.
- If you log in to Astro with an API token using the
Bug fixes
- Fixed an issue where
astro dev pytest --args
andastro dev pytest --build-secrets
could fail.
Astro CLI 1.22.0
Release date: January 24, 2024
New flag to mount secrets to Astro project image
Use the new --build-secrets
flag with the following commands to mount a secret value to an Astro project image:
astro deploy
astro dev parse
astro dev pytest
astro dev restart
astro dev start
astro dev upgrade test
This flag is equivalent to running docker build --secret
for your Astro Runtime image build. Use this flag to simplify build steps for customizing the Astro Runtime image, for example when you need to install Python packages from a private source .
Astro CLI 1.21.0
Release date: December 4, 2023
New command to deploy only images
You can use the new astro deploy --image
command to deploy only the image to you Deployment. Previously, you could either complete a full code deploy with astro deploy
or only update your DAGs with a DAGs-only deploy. See Trigger an image-only deploy for more information.
Bug fixes
- Fixed a bug so you can now use a deployment file to create a Kubernetes deployment with a custom worker queue.
Astro CLI 1.20.1
Release date: November 8, 2023
Bug fixes
- Fixed an issue where
astro deployment airflow-variable
,astro deployment connection
, andastro deployment pool
commands were returning the errorfailed to decode response from API
.
Astro CLI 1.20.0
Release date: November 7, 2023
Bug fixes
- Fixed an issue where
astro workspace users list
occasionally failed to return a table. - Fixed an issue introduced in version 1.19.4 where you could not deploy a custom image to Astro.
Astro CLI 1.19.4
Release date: November 1, 2023
Additional improvements
- The Astro CLI now shows a warning if you attempt to deploy a project with an empty
dags
folder to Astro. To remove this warning along with all other CLI warnings, runastro config set show_warnings false
.
Bug fixes
- Fixed an issue where
astro deployment create
sometimes showed an invalid Runtime version error for valid Runtime versions.
Astro CLI 1.19.3
Release date: October 12, 2023
Additional improvements
- Sample test
test/dags/test_dag_integrity.py
was renamed totest/dags/test_dag_example.py
to highlight that this test is an example.
Bug fixes
- Fixed an issue where CI/CD pipelines were unable to use Deployments as Code to create Deployment Previews for Deployments using the Kubernetes executor.
- Fixed an issue where the CLI was asking users to select from the wrong regions when creating a Deployment on an AWS cluster.
- Fixed an issue where secret variables values were being printed to local logs.
Astro CLI 1.19.2
Release date: September 14, 2023
Additional improvements
- When you run
astro dev upgrade-test
, the generated HTML report for DAG tests now shows how many DAGs passed and failed the test.
Bug fixes
- Fixed an issue where you couldn't create a Deployment on a dedicated cluster using a Deployment file and API token.
- Fixed an issue where the Deployment URL that appears after you run
astro deploy
was not formatted properly. - Fixed an issue where
astro dev upgrade-test
would occasionally output that it was testing an upgrade to the latest version of Astro Runtime, even if it wasn't. - Fixed an issue where
astro dev upgrade-test
didn't produce an HTML report for DAG tests.
Astro CLI 1.19.1
Release date: August 30, 2023
Bug fixes
- Fixed an issue where DAGs would fail to parse correctly when running
astro dev parse
orastro deploy
, resulting in a command execution failure.
Astro CLI 1.19.0
Release date: August 29, 2023
Additional improvements
- You can now grant Astro users the
WORKSPACE_AUTHOR
role. - You can now run an Astro project from the same directory an Apache Airflow project.
astro deployment inspect
now shows you a Deployment's workload identity.
Bug fixes
- Fixed an issue where some DAGs could be missed during
astro deploy
when DAG-only deploys are enabled. - Fixed an issue where
astro dev pytest
would incorrectly fail when testing an Astro project within a CI/CD process. - Fixed an issue where you couldn't update a Deployment on a standard cluster using a Deployment file.
Astro CLI 1.18.2
Release date: August 10, 2023
Bug fixes
- Fixed an issue where running
astro deployment create
on Astro Hosted would create Deployments where DAG-only deploys were turned off by default.
Astro CLI 1.18.1
Release date: August 4, 2023
Bug fixes
- Fixed an issue where
astro run
didn't work properly.
Astro CLI 1.18.0
Release date: August 3, 2023
New command to test Astro projects before you upgrade
You can use the new astro dev upgrade-test
command to anticipate and address problems before upgrading to a newer version of Astro Runtime. The command runs several test which let you determine whether an upgrade will result in major dependency changes and import errors, allowing you to fix the problems before you upgrade. See Test your Astro project locally for more information.
Additional improvements
- You can now specify the
--description
flag withastro deploy
to add a description for your deploy. You can use this description to let other users know why you made a deploy or what changes a deploy contains. - You can now specify the
--role
flag withastro organization team create/update
to update a Team's Organization-level role. - You can now specify the
--execution-date
flag withastro run
to trigger a DAG run for a specific execution date. - You can now specify the
--verbose
flag withastro run
to stream all logs to your terminal after the DAG run triggers.
Bug fixes
- Fixed an issue where
astro deployment inspect
was showing the wrong value for a Deployment’s workload identity on Astro Hosted. - Fixed an issue were
astro dev restart
would occasionally not work.
Astro CLI 1.17.1
Release date: July 12, 2023
Bug fixes
- Fixed an issue were some Astro Hosted Deployment updates triggered by the Astro CLI were not working.
Astro CLI 1.17.0
Release date: July 6, 2023
Manage Organization API tokens with the Astro CLI
You can now manage Organization API tokens using the following CLI commands:
astro organization token create
astro organization token roles
astro organization token list
astro organization token update
astro organization token rotate
astro organization token delete
Download resources from the Astronomer Registry to your Astro project
You can now use the following commands to download resources from the Astronomer Registry:
The Astro registry contains DAGs and provider packages that are ready to use out of the box. Use these commands to quickly add resources to an Astro project, which you can then run locally or on Astro.
Additional improvements
- You can now create Deployments on AWS standard clusters.
- If you belong to only one Workspace, the Astro CLI now uses that Workspace by default for all commands.
Bug fixes
- Fixed an issue where the Astro CLI could not retrieve the health status of a Deployment.
- Fixed an issue where you could not set
worker_concurrency
to 0 in a Deployment file.
Astro CLI 1.16.2
Release date: June 30, 2023
Bug fixes
- Fixed an issue where the
isHighAvailability
andCICDEnforcement
fields in Deployment files were not processed correctly.
Astro CLI 1.16.1
Release date: June 13, 2023
Manage Teams using the Astro CLI
You can now manage Astro Teams using the following CLI commands:
astro workspace team add
astro workspace team list
astro workspace team update
astro workspace team remove
astro organization team create
astro organization team list
astro organization team update
astro organization team delete
astro organization team user remove
astro organization team user add
astro organization team user list
You can use these commands in automated workflows with Workspace API tokens and Organization API tokens.
Manage Workspace API tokens with the Astro CLI
You can now manage Workspace API tokens using the following CLI commands:
astro workspace token create
astro workspace token add
astro workspace token list
astro workspace token update
astro workspace token rotate
astro workspace token delete
These commands can be used to manage API tokens as part of an automated workflow.
Additional improvements
- You can now specify the
--cluster-type "dedicated"
flag when usingastro deployment create
to create a Deployment on a dedicated cluster in Astro Hosted. - You can now retrieve a Deployment's Workload Identity when using
astro deployment inspect
. - You can now specify the
--enforce-cicd
flag withastro deployment create
andastro deployment update
to enforce CI/CD on a given Deployment. - You can now manage Deployments as code on Astro Hosted.
Astro CLI 1.15.1
Release date: May 19, 2023
Bug fixes
- Fixed an issue where you could not create a Deployment on a standard Hosted cluster.
Astro CLI 1.15.0
Release date: May 18, 2023
New commands to manage Airflow resources on Deployments
Use the following new Astro CLI commands to manage your Airflow variables, pools, connections, on Astro Deployments. These commands are particularly useful for automating the creation of new Deployments based on old ones, as you can now transfer all Airflow resources from a source Deployment to a target Deployment:
astro deployment connection list
astro deployment connection create
astro deployment connection update
astro deployment connection copy
astro deployment airflow-variable list
astro deployment airflow-variable create
astro deployment airflow-variable update
astro deployment airflow-variable copy
astro deployment pool list
astro deployment pool create
astro deployment pool update
astro deployment pool copy
Additional improvements
- You can now use the
--args
flag to specify pytest arguments to run withastro dev pytest
. For example, you can runastro dev pytest --args "-p pytest_cov"
to plugin thepytest_cov
plugin with your pyests. - You can now use Organization API tokens to automate Astro CLI tokens. Specify the Organization API token using the environment variable
ASTRO_API_TOKEN
in the environment where you run the Astro CLI. - You can now create a custom Docker/Podman compose file for your Astro project with the command
astro dev object export --compose
. After you modify the file, you can use it to start your project withastro dev start --compose-file <compose-file-location>
. - You can now set
postgres.repository
andpostgres.tag
withastro config set
. You can use these configurations to customize the postgres database used in your local Airflow environments. - The Astro CLI now automatically trims quotation marks from the beginning and end of environment variables being pushed to Astro.
- The command
astro user invite
has been deprecated.
Bug fixes
- Fixed an issue were
astro deployment variable create/update
was not producing error when it failed to create an environment variable. - Fixed an issue were Podman deploys were failing if the user didn't have the Docker CLI installed.
Astro CLI 1.14.1
Release date: April 20, 2023
Bug fixes
- Fixed an issue where
astro workspace user list
didn't work when using a Workspace API token.
Astro CLI 1.14.0
Release date: April 19, 2023
New commands to manage Astro Workspaces
You can now manage Astro Workspaces from the Astro CLI using the following new commands:
To automate Workspace management, you can run these commands using a Workspace API token.
Astro CLI 1.13.2
Release date: April 11, 2023
Bug fixes
- Fixed an issue where the CLI added the
dags
folder to.dockerignore
whenever an image build was interrupted, resulting in DAGs not being deployed on the next image build.
Astro CLI 1.13.0
Release date: March 30, 2023
The command astro user invite
will be deprecated in Astro CLI v1.15.0. Any use of this command in your projects or automation needs to be updated to astro organization user invite
before Astro CLI v1.15.0 is released.
New flag --clean-output
for Deployment commands
You can now use the -—clean-output
flag with the following commands to make sure that any output comes only from the command itself.
astro deployment inspect
astro deployment create
astro deployment update
This is helpful for users automating actions with deployment files, like using the Deploy Action template with Github Actions.
New environment variable ASTRO_HOME
The new environment variable ASTRO_HOME
allows you to change the directory where the Astro CLI stores its global config file. This can be useful in environments where the CLI doesn’t have access to the HOME directory.
Additional improvements
- The command
astro login
won’t ask for email input in the command line anymore. You can now provide your email address in the browser when you log in.
Astro CLI 1.12.1
Release date: March 22, 2023
Bug fixes
- Fixed an issue where you couldn't authenticate to the Astro from the Astro CLI using single sign-on (SSO).
Astro CLI 1.12.0
Release date: March 22, 2023
Additional improvements
-
You can now expose your local Airflow webserver and postgres database to all networks you're connected to using the following command:
astro config set airflow.expose_port true
-
When you trigger a DAG deploy to Astro, the CLI now includes the name of the DAG bundle version that it pushed. You can use this name to verify that your Deployment uses the correct version of your DAGs after a deploy.
-
If you add the environment variable
ASTRO_API_TOKEN=<workspace-api-token>
to your environment, the Astro CLI will use the specified Workspace API token to perform Workspace and Deployment actions without requiring you to log in. -
You can now disable
astro run
commands and excludeastro-run-dag
from any images built by the CLI using the following command:astro config set disable_astro_run true
-
In new Astro projects,
requirements.txt
now includes a commented list of the pre-installed provider packages on Astro Runtime.
Bug fixes
- Fixed an issue where the default DAG integrity test would sometimes generate an error for valid uses of
os.getenv(key,default)
. - Fixed bugs in the default Astro project DAGs.
Astro CLI 1.11.0
Release date: February 27, 2023
Support for Podman
You can now configure the Astro CLI to run Airflow locally and deploy to Astro using Podman. Podman is an alternative container engine to Docker that doesn't require root access and orchestrates containers without using a centralized daemon.
To configure the Astro CLI to use Podman, see Run the Astro CLI using Podman.
Bug fixes
- Fixed an issue where you couldn't run Astro CLI commands with a Deployment API key if you logged out of your personal account using
astro logout
. - Fixed an issue where you couldn't set the minimum worker count for a worker queue to zero.
- Fixed an issue where running
astro deploy
would not return an error when you specified a Deployment name that didn't exist. - Fixed an issue where you could not update a Deployment with a file using a Deployment API key.
Astro CLI 1.10.0
Release date: February 2, 2023
New commands to manage Astro users
To help you manage users in your Organization, Astro CLI 1.10.0 includes the following new commands:
astro organization user invite
: Invite a new user to your Astronomer Organization.astro organization user update
: Update a user's Organization role.astro organization user list
: List all users in your Organization.astro workspace user add
: Add a user to a Workspace.astro workspace user update
: Update a user's role in a Workspace.astro workspace user list
: List all users in a Workspace.astro workspace user remove
: Remove a user from a Workspace.
astro organization user invite
is identical to the existing astro user invite
command. astro user invite
will be deprecated in a future release.
For more information, see the astro organization
and astro workspace
command references.
Astro CLI 1.9.0
Release date: January 13, 2023
Manage Astro Deployments as code
Astro CLI version 1.9 includes three new commands that make it possible to programmatically create and update Deployments:
astro deployment inspect --template
: Create a template file in YAML for an existing Deployment. This template file includes all information about the Deployment in its current state, including worker queue configurations, environment variables, and Astro Runtime version.astro deployment create --deployment-file
: Create a new Deployment with the configurations specified in a template file.astro deployment update --deployment-file
: Update an existing Deployment based on the values in a Deployment file.
You can use template and Deployment files to define Astro Deployments as code. For example, if your team regularly creates and deletes Deployments for testing, you can use template files to avoid manually copying configurations in the Astro UI. For more information, see Astro CLI command reference.
New --dag-file
flag for astro run
By default, the astro run
command parses all of the DAGs in your dags
directory even if you are only running one DAG.
In Astro CLI 1.9, you can instead use the --dag-file
flag to run a specific DAG file without parsing all other DAGs in your directory. Specifying an individual DAG file makes it easier to troubleshoot errors for that DAG and results in faster execution of the command.