> ## Documentation Index
> Fetch the complete documentation index at: https://astronomer.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Triage Deployments in VS Code

> Use the Deployments view in Astro for VS Code to see import errors and failed Dag runs, read task logs, push code, wake or hibernate development Deployments, and upgrade to Airflow 3.

<Info>
  **Labs**

  This feature is in [Labs](/docs/astro/feature-previews).
</Info>

The **Deployments** view in Astro for VS Code lists the Deployments in your current Workspace. Each Deployment expands to show Dags that fail to import and Dag runs that failed recently. From the view, you can read task logs in an editor tab, ask Otto about a failure, open a Deployment in Astro or Airflow, push code, and wake or hibernate development Deployments.

The view supports Deployments on Airflow 2 and Airflow 3.

## Prerequisites

* Astro for VS Code, with your Astro account signed in. See [Get started with Astro for VS Code](/docs/astro/vscode/vscode-quickstart).
* A [Workspace or Deployment role](/docs/astro/user-permissions) that can read the Deployment's Dags and Dag runs.

## Switch Organization or Workspace

The **Deployments** view shows the Workspace that the **Profile** view shows. To change it, click the **Organization** or **Workspace** row in the **Profile** view and choose from the list. The extension switches with the Astro CLI, so the change also applies to `astro` commands that you run in a terminal.

To copy an ID, right-click the **Organization** or **Workspace** row and choose **Copy Organization ID** or **Copy Workspace ID**.

## Read a Deployment's status

Each row shows the Deployment's name. When a Deployment isn't healthy, its status appears next to the name, such as `deploying` or `hibernating`. A Deployment on Airflow 2 also shows its Airflow version and when support for it ends.

Hover over a row to see the Deployment's details, including its Airflow version, whether it accepts Dag-only deploys, and its hibernation schedule if it's a development Deployment.

## See import errors and failed runs

Expand a Deployment to see the following groups:

* **Import errors (N)**: Dag files that Airflow can't import. Import errors appear first, because a Dag that fails to import has no Dag runs that could fail.
* **Failed runs (N) · last 1h**: Dag runs that failed within the time range.

If there's nothing to list, the Deployment shows the reason, such as **No failures in the last 1h** or **Deployment is hibernating**.

The default time range is one hour. To change it, click the clock icon in the view's title bar and choose **Last hour**, **Last 5 hours**, **Last 12 hours**, or **Last 24 hours**. The range applies to every Deployment in the view.

### Read task logs

Click a failed run to open its logs in a read-only editor tab. The tab shows the Dag run, the tasks that failed, and the log of each failed task.

Hover over a failed run for the following actions:

* **Ask Otto About This Failure** (Otto icon)
* **Show Failure Logs**
* **Open Failed Run in Airflow**, which opens the Dag run in the Deployment's Airflow UI

### Find why a Dag doesn't import

Click an import error to open the Dag file at the line that failed, if the file is in a folder you have open. Otherwise, the traceback opens.

Hover over an import error for **Ask Otto About This Import Error** and **Show Import Error Traceback**.

### Ask Otto about a failure

Click the Otto icon on a failed run or an import error. Otto receives a question about it, with the task logs or traceback attached, and starts working immediately. The question goes to your open chat if it's empty, or to a new chat if it isn't. See [Chat with Otto in VS Code](/docs/astro/vscode/vscode-otto-chat).

## Open a Deployment in Astro or Airflow

Hover over a Deployment and click the Airflow icon to open its Airflow UI.

Right-click a Deployment for the following actions:

* **Open in Astro**: Opens the Deployment's page in the Astro UI, in the Deployment's Organization.
* **Copy Deployment ID**: Copies the Deployment ID.

## Push code to a Deployment

To push the Astro project open in your window to a Deployment:

1. Hover over the Deployment and click **Deploy**, or right-click the Deployment.
2. Choose one of the following options:
   * **Deploy Image and Dags**: Runs `astro deploy`, which builds and pushes your project image and Dags.
   * **Deploy Dags Only**: Runs `astro deploy --dags`. This option appears only when the Deployment has [Dag-only deploys](/docs/astro/deploy-dags) turned on.
3. Review the details in the confirmation, then confirm.

The deploy runs in a terminal, so you can watch its progress and stop it. See [`astro deploy`](/docs/cli/v1.46/astro-deploy).

You can't push code to a Deployment that's hibernating or still being created. Wake the Deployment first.

## Wake or hibernate a development Deployment

A [development Deployment](/docs/astro/deployment-resources#hibernate-a-development-deployment) can hibernate on a schedule to reduce cost. From the **Deployments** view, you can override that schedule. The extension makes these changes with [`astro deployment wake-up`](/docs/cli/v1.46/astro-deployment-wake-up) and [`astro deployment hibernate`](/docs/cli/v1.46/astro-deployment-hibernate).

These actions require a Deployment with **Development Mode** turned on, and a [Workspace role](/docs/astro/user-permissions) that can update the Deployment.

| Action | How | Result |
| - | - | - |
| **Wake Up…** | Hover over a hibernating Deployment and click the play icon, or right-click it. | The Deployment stays awake **For 1 hour**, **For 4 hours**, **For 8 hours**, or **Until I remove the override**. Waking up takes a few minutes. |
| **Keep Awake…** | Right-click an awake Deployment. | The Deployment doesn't hibernate on schedule for the duration you choose. The options are the same as for **Wake Up…**. |
| **Hibernate** | Hover over an awake Deployment and click the pause icon, or right-click it. Then confirm. | The Deployment's Airflow stops: scheduled Dag runs don't run, and its UI and API stop responding. It stays hibernated until you remove the override. |
| **Resume Hibernation Schedule** | Right-click a Deployment that has an override. Then confirm. | The Deployment's hibernation schedule takes effect immediately. |

When a wake-up period ends, the hibernation schedule takes effect immediately. If the schedule says the Deployment should hibernate at that time, it hibernates.

Astro evaluates hibernation schedules in UTC.

## Upgrade to Airflow 3

A Deployment on Airflow 2 shows its Airflow version and when its support ends, such as `Airflow 2.11.2 · support ends 2026-12-31`. After that date, the row shows `support ended` with the date. For the support policy, see [Astro Runtime version lifecycle policy](/docs/runtime/runtime-version-lifecycle-policy).

To start an upgrade with Otto, open the Astro project that pushes code to the Deployment in your window, then use either of the following options:

* Expand the Deployment and click its last row, **Upgrade to Airflow 3.x.y**, which names the latest stable Airflow 3 release. The row shows a warning icon if the current version is out of support.
* Hover over the Deployment and click the Otto icon, or right-click it and choose **Upgrade to Airflow 3 with Otto**.

A chat opens and runs Otto's `airflow-upgrade` skill. The extension gives Otto the current Airflow version and Astro Runtime image, and the latest stable Airflow 3 release and its Astro Runtime image. Otto makes the changes in your Astro project. For what Otto checks and changes, see [Upgrade Airflow with Otto](/docs/astro/otto/otto-upgrades).

You can upgrade local projects the same way from the **Local** view. See [Run Airflow locally in VS Code](/docs/astro/vscode/vscode-local-airflow#upgrade-to-airflow-3).

## When a Deployment can't be checked

If the extension can't read a Deployment's Airflow, the Deployment shows one of the following rows instead of its failures:

| Row | Cause | Resolution |
| - | - | - |
| **No permission to read this Deployment's Airflow** | Your role can't read the Deployment's Dags. | Ask a Workspace Admin for a [Workspace or Deployment role](/docs/astro/user-permissions) that can. |
| **Airflow is not serving yet** | The Deployment is starting or updating. | Wait. The row clears when Airflow responds. |
| **Could not check for failures** | Airflow didn't respond. | Hover over the row to see the error, then refresh the view. |

## Refresh the view

The view refreshes automatically every minute while it's visible, and more often while a Deployment is being created or updated. It also refreshes when you return to the editor window and when you switch Workspaces in a terminal. To refresh it manually, click the refresh icon in the view's title bar.

## Next steps

* [Investigate with Otto](/docs/astro/otto/otto-investigate)
* [Manage development Deployments](/docs/astro/best-practices/manage-dev-deployments)
* [Run Airflow locally in VS Code](/docs/astro/vscode/vscode-local-airflow)
