chore(ci) sync repository-tools from dd-repo-tools#81
Open
gh-worker-campaigns-3e9aa4[bot] wants to merge 1 commit into
Open
chore(ci) sync repository-tools from dd-repo-tools#81gh-worker-campaigns-3e9aa4[bot] wants to merge 1 commit into
gh-worker-campaigns-3e9aa4[bot] wants to merge 1 commit into
Conversation
|
🎯 Code Coverage (details) 🔗 Commit SHA: 4ce54bb | Docs | Datadog PR Page | Give us feedback! |
pawelchcki
approved these changes
Jun 15, 2026
There was a problem hiding this comment.
Pull request overview
Syncs the shared devcontainer CI template from dd-repo-tools, updating the consumer-facing devcontainer image publishing behavior to support separate “universal OCI” and “nydus-optimized CI” tags.
Changes:
- Document that each devcontainer build publishes two tags:
$TAG(OCI) and$TAG-ci(nydus-converted). - Publish the nydus-converted image under a dedicated
-citag instead of overwriting the OCI tag. - Treat the cache as a hit only when both the OCI tag and its
-civariant exist, avoiding reuse of half-published images.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| --push -t "$ref" \ | ||
| "$ctx" | ||
| nydus-convert "$ref" "$ref" | ||
| nydus-convert "$ref" "$ref-ci" |
| # Cache hit requires *both* the OCI ref and its -ci variant — a | ||
| # half-published state (e.g. nydus-convert failed mid-flight) | ||
| # must trigger a rebuild, not get reused. | ||
| both_cached() { crane manifest "$1" >/dev/null 2>&1 && crane manifest "$1-ci" >/dev/null 2>&1; } |
Comment on lines
+123
to
+124
| echo "DEVCONTAINER_IMAGE_AMD64_CI=$AMD_REF-ci" | ||
| echo "DEVCONTAINER_IMAGE_ARM64_CI=$ARM_REF-ci" |
| both_cached "$REF" || build_and_nydusify "$REF" linux/amd64,linux/arm64 "" | ||
| { | ||
| echo "DEVCONTAINER_IMAGE=$REF" | ||
| echo "DEVCONTAINER_IMAGE_CI=$REF-ci" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Syncs the shared repository-tools from dd-repo-tools:
.devcontainer/devcontainer.mk(make fragment — hashing, local dev targets).gitlab/devcontainer.yml(CI template — devcontainer build/cache job)Both files are verbatim copies — edits here will be overwritten
on the next campaigner run. Edit upstream in dd-repo-tools instead.
Wiring
Your
.gitlab-ci.ymlneeds aDEVCONTAINER_REPO_NAME: <this-repo>variable and
include: - local: .gitlab/devcontainer.ymlto pullin the devcontainer pipeline, plus two sidecars you own:
.devcontainer/Dockerfileand.devcontainer/context.files(rsync--files-fromlist).Source: https://github.com/DataDog/dd-repo-tools/tree/main/shared
Recent changes:
Two-tag publish: $DEVCONTAINER_IMAGE (OCI, universal) + $DEVCONTAINER_IMAGE_CI (nydus-optimized, lazy-loaded). Source: https://github.com/DataDog/dd-repo-tools/pull/2