syntaqxA deploy makes the runner's image in the registry, without Docker: it reads the base's manifest and config from Cloudflare's registry, uploads one gzipped layer holding the runner binary at /usr/local/bin/g1t-runner with mode 0755, and writes a config (the entrypoint g1t-runner, the base's command cleared, as the Dockerfile's ENTRYPOINT does) and a manifest that name the base's layers and that one, under the runner's tag, for linux/amd64 (scripts/deploy/registry.mjs, the registry's own upload calls with the credentials Wrangler gives). Deploy #256 ran out of disk because docker build pulled the 4.5 GB base into the job's own Docker Engine, compressed and unpacked, on a 20 GB sandbox whose own filesystem is that same base; now nothing of the base is downloaded and the job's Docker Engine is never started. Docker is asked for only when it is needed: a dry run (build, or image --no-push) still builds services/runner/Dockerfile with it, and so does a deploy whose registry step fails, logging df -h and docker system df before and after. The image job removes npm's downloads, which it only restores, once its install has read them, and logs the disk before and after the deploy. Tests cover the layer's tar, the config and manifest, the calls against a registry kept in memory (the base's layers are never fetched), the token flow, and that the Dockerfile says the same path, mode and entrypoint; the image was also checked against a local registry, where it runs and has the same config as a docker build of the Dockerfile.925eccbHistory
- ..
- backup.test.ts
- backup.ts
- broker-egress.ts
- broker-relay.test.ts
- broker-relay.ts
- broker.test.ts
- broker.ts
- bump.test.ts
- bump.ts
- credentials.test.ts
- credentials.ts
- egress.test.ts
- egress.ts
- forward.test.ts
- forward.ts
- gate.test.ts
- guard.ts
- index.ts
- lifecycle.test.ts
- lifecycle.ts
- self-hosted.test.ts
- self-hosted.ts
- workflow-hosts.test.ts