Skip to content

AWS: published control-plane images are amd64-only but deployments default services to arm64 #194

Description

@frederiksally

A fresh AWS deployment on 0.1.4 crashes all four control-plane services with
exec /usr/local/bin/docker-entrypoint.sh: exec format error (task exit 255).

Cause: the first-party image digests in the package's manifest.json resolve to
single-architecture linux/amd64 manifests, while qm init scaffolds every
aws.services.* entry (and the Terraform Fargate task definitions) with
architecture: "arm64". The transfer preserves the amd64 digest into the
deployment's ECR and the arm64 task immediately fails to exec the image.

Workaround: set "architecture": "amd64" on each service in qm.config.jsonc,
re-render infra, apply, and re-deploy.

Suggested fix: publish multi-arch (arm64+amd64) control-plane images, or change
the scaffold default to amd64 until that exists. An early arch assertion in
qm up (compare transferred image platform vs the service's configured
architecture) would also turn this from a rollout failure into a clear error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions