Skip to content

chore: mirror library/python 3.13.12-slim-trixie - #36

Merged
joshuarli merged 1 commit into
mainfrom
junior/mirror-python-3.13.12-slim-trixie
Oct 9, 2026
Merged

joshuarli merged 1 commit into
mainfrom
junior/mirror-python-3.13.12-slim-trixie

Conversation

@joshuarli

Copy link
Copy Markdown
Member

snuba CI builds FROM python:3.13.12-slim-trixie and is getting 429s from anonymous Docker Hub pulls on shared GitHub-hosted runner IPs.

snuba CI builds FROM python:3.13.12-slim-trixie and is getting 429s from
anonymous Docker Hub pulls on shared GitHub-hosted runner IPs.

Co-Authored-By: Joshua Li <14209781+joshuarli@users.noreply.github.com>
@joshuarli
joshuarli merged commit 3809010 into main Oct 9, 2026
14 checks passed
@joshuarli
joshuarli deleted the junior/mirror-python-3.13.12-slim-trixie branch October 9, 2026 21:18
ElioDiNino added a commit to getsentry/snuba that referenced this pull request Oct 9, 2026
Switch the `build_base` stage from Docker Hub's
`python:${PYTHON_VERSION}-slim-trixie` to
`ghcr.io/getsentry/image-mirror-library-python:${PYTHON_VERSION}-slim-trixie`.

**Why:** CI's `Build snuba CI image` step pulls from Docker Hub without
logging in, so GitHub-hosted runners have been hitting anonymous rate
limits:

```
unexpected status from HEAD request to https://registry-1.docker.io/v2/library/python/manifests/3.13.12-slim-trixie: 429 Too Many Requests
```


([example](https://github.com/getsentry/snuba/actions/runs/37989903215/job/114021512646?pr=8533)).
This blocks every PR while it happens. CI already uses `image-mirror`
for ClickHouse, Kafka, and Zookeeper.

**Depends on** getsentry/image-mirror#36, which is merged. Its sync run
on `main` was still in progress when I opened this. Re-run CI once the
GHCR tag exists and is publicly pullable.

**Notes**
- The mirror publishes amd64 + arm64, which matches the platforms
`image.yml` builds.
- The existing GHCR `image-mirror-*` packages pull anonymously. The new
package should do the same, but that's worth confirming after the first
sync.
- The runtime stages (`application`, `application-debug`) already use
the `dhi-mirror` and aren't touched here.
- Going forward, bumping `PYTHON_VERSION` means mirroring the new tag in
`image-mirror` first. I added a comment in the Dockerfile saying so.

<!-- junior-request-attribution:start -->
via @joshuarli.
<!-- junior-request-attribution:end -->

<!-- junior-session-footer:start -->
<!-- junior-conversation-id:slack%3ACTJL7358X%3A1791579377.495359 -->

--

[View Junior
Session](https://junior-prod.sentry.dev/conversations/slack%3ACTJL7358X%3A1791579377.495359)
[[Sentry]](https://sentry.sentry.io/explore/conversations/slack%3ACTJL7358X%3A1791579377.495359/?project=4510944073809921)

<!-- junior-session-footer:end -->

---------

Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
Co-authored-by: Joshua Li <14209781+joshuarli@users.noreply.github.com>
Co-authored-by: Elio Di Nino <52972357+ElioDiNino@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants