• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / cli / 28786900563
65%
develop: 65%

Build:
Build:
LAST BUILD BRANCH: gh-readonly-queue/develop/pr-5919-3fa5a9d9f7106311c8dd06ed9de7cf519856ac88
DEFAULT BRANCH: develop
Ran 06 Jul 2026 11:05AM UTC
Jobs 1
Files 229
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Jul 2026 11:03AM UTC coverage: 65.166%. Remained the same
28786900563

push

github

web-flow
fix(cli): honor SUPABASE_INTERNAL_IMAGE_REGISTRY in gen types (#5786)

## What

Make `supabase gen types --local` honor
`SUPABASE_INTERNAL_IMAGE_REGISTRY` for **any** registry when pulling the
`postgres-meta` image, instead of only special-casing `docker.io`.

Closes #5785.

## Why

On GitHub-hosted runners (shared egress IPs), `public.ecr.aws` is
frequently rate-limited. `supabase/setup-cli` exports
`SUPABASE_INTERNAL_IMAGE_REGISTRY=ghcr.io` precisely to avoid this
(`core.exportVariable(CLI_CONFIG_REGISTRY, "ghcr.io")`). `supabase
start` honors it, but `gen types` did not: it kept running `docker run
public.ecr.aws/supabase/postgres-meta:<tag>` and failed with

```
docker: toomanyrequests: Rate exceeded
```

even with `SUPABASE_INTERNAL_IMAGE_REGISTRY=ghcr.io` set in the step
env.

### Root cause

- `apps/cli/src/legacy/commands/gen/types/types.handler.ts` —
`runPgMeta` spawns the container with `resolvePgmetaImage(...)`.
- `apps/cli/src/legacy/commands/gen/types/types.shared.ts` —
`resolvePgmetaImage` only special-cased
`SUPABASE_INTERNAL_IMAGE_REGISTRY === "docker.io"`; any other value fell
through to `dockerImageForService`.
- `packages/stack/src/versions.ts` — `dockerImageForService` hardcodes
`DEFAULT_REGISTRY = "public.ecr.aws/supabase"` and does not read the env
var.

The Go CLI honored the override (with multi-registry fallback) via
`GetRegistryImageUrl` in `apps/cli-go/internal/utils/docker.go`, so this
is a regression in the TypeScript rewrite.

## How

Resolve the image through the existing `legacyGetRegistryImageUrl`
helper (`apps/cli/src/legacy/shared/legacy-docker-registry.ts`) — the
documented 1:1 port of Go's `GetRegistryImageUrl`, already used by
`supabase start` and `test db` (`test/db/db.handler.ts` for `pg_prove`).
It honors `SUPABASE_INTERNAL_IMAGE_REGISTRY` for any registry, returns
Docker Hub images unchanged for `docker.io`, and defaults to the ECR
mirror when unset.

Output is unchanged in the two pre-existing cases:

| `SUPA... (continued)

11041 of 16943 relevant lines covered (65.17%)

10.47 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28786900563.1 06 Jul 2026 11:05AM UTC 229
65.17
GitHub Action Run
Source Files on build 28786900563
  • Tree
  • List 229
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28786900563
  • 14396807 on github
  • Prev Build on gh-readonly-queue/develop/pr-5792-28b17f6f4dc71c2a5cafd20ee6b571dd2114ac9b (#28785584933)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc