{
  "slug": "azd-deploy-supports-docker-imagepassthrough-1901a0f52ab8",
  "title": "azd deploy supports docker.imagePassthrough",
  "tools": [
    "azd"
  ],
  "tags": [
    "agent"
  ],
  "introduced_at": "2026-08-26T22:42:04.000Z",
  "announced_at": "2026-08-26T22:42:04.000Z",
  "effective_at": null,
  "date_basis": "source-publication",
  "status": "unknown",
  "how": {
    "incantation": "When deploying an existing remote image by reference, set `services.<name>.docker.imagePassthrough: true` and set the service-level `image` to its fully qualified registry reference, then run `azd deploy <service>`.",
    "examples": [
      "azd deploy <service>",
      "services:\n  <service>:\n    host: containerapp\n    image: <registry>/<repository>:<tag>\n    docker:\n      imagePassthrough: true"
    ],
    "gotchas": [
      "Version: 1.32.0",
      "<service> (required): Service name from `azure.yaml`.",
      "services.<name>.docker.imagePassthrough (required): Set to `true` to use the service image as the final remote container artifact; no local or remote image operations are performed.",
      "services.<name>.image (required): Fully qualified remote image reference, including an explicit registry.",
      "docker.remoteBuild: Cannot be combined with `docker.imagePassthrough: true`.",
      "azd deploy --from-package: Deploys a package path or container image tag; no flag is needed for passthrough because the configured image is reused.",
      "Prerequisite: Set the service host to `containerapp` in the documented configuration example.",
      "Prerequisite: Set the service-level image to a fully qualified remote reference that includes a registry.",
      "Deploys an existing container image by reference; performs no local or remote image operations."
    ]
  },
  "why_it_matters": "Deploy an existing container image by reference with azd.",
  "before": "Without `imagePassthrough`, an existing external source image could be pulled, tagged, and copied to a configured destination registry.",
  "sources": [
    "https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.32.0",
    "https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/reference",
    "https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/publishing-workflows",
    "https://github.com/Azure/azure-dev/pull/9588"
  ],
  "rank": 0.96025,
  "judge": {
    "publish": true,
    "judge_model": "codex-cli/gpt-6-luna+typesafe/jev-1.13.0",
    "prompt_version": "extract-v7+enrich-v2+judge-v2x3-rejudge+jev-publish-v1"
  },
  "review_state": "approved",
  "provenance": {
    "run_id": "wave2a-20261017",
    "verdict_id": "wave2a-20261017:wave2a-20261017-0f7c4084c6ba0314-0:rescue",
    "evidence_hash": "641ed32e6da561db8b8cc3c4ec77f2be2394e6ebf51c251965c462fd77afd068"
  },
  "review": {
    "draft_hash": "b24461939e8dcf25de9d9b1b5bd54fb3e97da9b1a208ba147e621f442032dc44",
    "reviewer": "publication-gate",
    "reviewed_at": "2026-10-07T00:00:00.000Z",
    "decision": "wave2a-20261017:rescue",
    "reason": "Rescue path: first rejected only because the extracted card lacked usage; judged again on the enriched card, 3 of 3 judge runs approved with p_yes >= 0.9 (mean 0.96 >= 0.9; 2 needed) and Jev gave 0.77 (>= 0.6 needed)."
  }
}
