Skip to content

astro deploy fails with incorrect Runtime error when Docker points to the Podman shim #1975

@bmanan7

Description

@bmanan7

Describe the bug

When astro deploy is executed on a host where the docker binary is Podman’s compatibility shim, the CLI cancels the deploy with the unsupported-runtime warning even though the Dockerfile is based on astrocrpublic.azurecr.io/runtime:3.1-2. The shim prints Emulate Docker CLI using podman... to stderr; GetLabel treats that stderr output as a failure, returns an empty runtime version, and the CLI emits the warning before finishing the deploy.

Additionally, the warning text instructs users to Change your Dockerfile with an image that pulls from 'quay.io/astronomer/astro-runtime', which is outdated now that Runtime 3.x images are hosted at astrocrpublic.azurecr.io.

manan.bhatt@MacBook-Pro-6 tmp % astro deploy -n mbhXXXXX

A newer version of Astro CLI is available: 1.38.0
Please update to the latest version using 'brew upgrade astro'

To learn more about what's new in this version, please see https://www.astronomer.io/docs/astro/cli/release-notes

If you don't want to see this message again run 'astro config set -g upgrade_message false' or pass '2>/dev/null' to print this text to stderr

Authenticated to Astro 

Building image...
✔ Project image has been updated
unable get runtime version from image
WARNING! The image in your Dockerfile '' is not based on Astro Runtime and is not supported. Change your Dockerfile with an image that pulls from 'quay.io/astronomer/astro-runtime' to proceed.
Canceling deploy...
manan.bhatt@MacBook-Pro-6 tmp % cat Dockerfile 
FROM astrocrpublic.azurecr.io/runtime:3.1-2

What CLI Version did you experience this bug?

Astro CLI Version: 1.37.0

This CLI bug is related to which Astronomer Platform?

  • Astro
  • Software
  • None/Unknown

What Operating System is the above CLI installed on?
macOS 15 (arm64) with Podman 5.6.2 providing the docker shim
Also tried on UNIX system and facing the same issue.

🪜 Steps To Reproduce

  • Install Podman and configure the docker binary to invoke Podman (or wrap the real Docker binary with a script that prints Emulate Docker CLI using podman... to stderr).
  • Create a project with Dockerfile containing FROM astrocrpublic.azurecr.io/runtime:3.1-2 and an empty requirements.txt.
  • Run astro deploy -f.
  • Observe that the build succeeds, then astro deploy prints unable get runtime version from image and the warning above, and cancels the deploy.

📸 Screenshots

Image

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions