Astronomer recommends that all users use the Astro CLI to test their code locally before pushing it to an Airflow Deployment on Astronomer. For guidelines on developing locally, see CLI Quickstart.
Prerequisites
In order to push up DAGs to a Deployment on Astronomer, you must have:- The Astro CLI installed.
- Access to an Astronomer platform at
https://app.BASEDOMAIN. - An Astronomer Workspace with at least one active Airflow Deployment.
Step 1: Authenticate to Astronomer
To authenticate with the Astro CLI, run:Step 2: Confirm Your Workspace and Deployment
From the Astro CLI, you can push code to any Airflow Deployment you have access to as long as you have the appropriate deployment-level permissions. For more information on both Workspace and Deployment-level permissions on Astronomer, see User permissions. Before you deploy to Astronomer, make sure that the Airflow Deployment you’d like to deploy to is within the Workspace you’re operating in. To see the list of Workspaces you have access to, run:Step 3: Deploy to Astronomer
Finally, make sure you’re in the correct Astro project directory. When you’re ready to deploy your DAGs, run:If your code deploy fails and you configured your CLI to use Podman, you might need to set an additional environment variable. See Troubleshoot your Podman configuration.
Step 4: Validate Your Changes
If it’s your first time deploying, expect to wait a few minutes for the Docker image to build. To confirm that your deploy was successful, navigate to your Deployment in the Software UI and click Open Airflow to see your changes in the Airflow UI.What gets deployed?
Everything in the project directory where you ran$ astro dev init is bundled into a Docker image and deployed to your Airflow Deployment on your Astronomer platform. This includes system-level dependencies, Python-level dependencies, DAGs, and your Dockerfile.
Astronomer exclusively deploys the code in your project and does not push any of the metadata associated with your local Airflow environment, including task history and Airflow connections or variables set locally in the Airflow UI.
For more information about what gets built into your image, read Customize your image.