feat(config): support OCI remote extends for devcontainer.json#190
Conversation
Extends references that look like OCI image refs (e.g. "ghcr.io/org/base:1") are now pulled from the registry, the first layer is extracted as a gzipped tarball, and devcontainer.json is parsed from it. Cycle detection uses the OCI ref string directly. Includes retry with exponential backoff for transient registry errors.
✅ Deploy Preview for devsydev canceled.
|
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Review rate limit: 0/1 reviews remaining, refill in 16 minutes and 4 seconds.Comment |
Summary
extendsproperty: refs likeghcr.io/org/devcontainer-base:1are detected, pulled from the registry, and the first layer is extracted to finddevcontainer.jsonisOCIRef()distinguishes OCI refs from local paths (no.json/.jsoncsuffix, contains/, not relative/absolute path)resolveOCIExtends()handles pull with retry/backoff, layer extraction, JSONC parsing, and recursive extends resolution