Skip to content

chore(ci): switch to dd-pkg for publishing public ADP container images - #2212

Open
AliDatadog wants to merge 1 commit into
mainfrom
ali.b/onboard-dd-pkg-publish-image
Open

chore(ci): switch to dd-pkg for publishing public ADP container images#2212
AliDatadog wants to merge 1 commit into
mainfrom
ali.b/onboard-dd-pkg-publish-image

Conversation

@AliDatadog

@AliDatadog AliDatadog commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Summary

We're migrating off the legacy GitLab job-token trigger mechanism for publishing public container images (trigger: project: DataDog/public-images) in favor of a dd-pkg publish-image CLI call against the artifact-gateway service. The CLI still drives the same public-images pipeline under the hood, but goes through a policy/audit layer. Authorization is implicit via CI job identity, so no per-repo registration or allowlist step is needed — this is a pure CI-YAML change.

This PR onboards saluki's .gitlab/release.yml:

  • Adds a shared .docker_publish_job_definition template that runs dd-pkg publish-image with the same IMG_* variables previously consumed by the trigger job, translated into CLI flags.
  • Replaces the trigger: project: DataDog/public-images block on .publish-image-linux-definition with extends: .docker_publish_job_definition.
  • stage, rules, needs, and variables on the job are unchanged — only the publish mechanism itself is swapped.

Background and rationale: https://datadoghq.atlassian.net/wiki/x/ooQkngE

Ref: https://datadoghq.atlassian.net/browse/BARX-1965

Follow-up (outside this PR): this migration adds real authn/authz for public image publishing via artifact-gateway, in place of the old job-token trust-any-caller model. As a next step we'll be asking this repo's owners who should be allowed to release these images, and who/how to reach them if an authz check ever fails.

Test plan

  • ruby -ryaml -e "YAML.load_file('.gitlab/release.yml'); puts 'OK'" — YAML parses cleanly
  • CI green on this branch (manual publish-standalone-adp-image-linux* jobs still gated behind official-release rules, so a full end-to-end publish exercise happens on the next official release)

…h-image

The GitLab job-token trigger against DataDog/public-images is a legacy
mechanism being phased out in favor of `dd-pkg publish-image`, which
drives the same public-images pipeline through the artifact-gateway
service's policy/audit layer. Authorization is implicit via CI job
identity, so this is a CI-YAML-only change with no per-repo
registration step. See https://datadoghq.atlassian.net/wiki/x/ooQkngE

Ref: BARX-1965
@dd-octo-sts dd-octo-sts Bot added the area/ci CI/CD, automated testing, etc. label Jul 27, 2026
@pr-commenter

pr-commenter Bot commented Jul 27, 2026

Copy link
Copy Markdown

Binary Size Analysis (Agent Data Plane)

Baseline: edcd3c1 · Comparison: 4093e2b · diff
Analysis Configuration: stripped binaries · Pass/Fail Threshold: +5%
Sizes: 40.91 MiB (baseline) vs 40.91 MiB (comparison)
Size Change: -8 B (-0.00%)

✅ Binary size difference within threshold

Changes by Module
Module File Size Symbols
anon.44a0faa3240fa409baa379409d152aec.1.llvm.13182230137114145837 -130 B 1
anon.44a0faa3240fa409baa379409d152aec.1.llvm.2804780324777358752 +129 B 1
anon.44a0faa3240fa409baa379409d152aec.4.llvm.13182230137114145837 -114 B 1
anon.44a0faa3240fa409baa379409d152aec.4.llvm.2804780324777358752 +113 B 1
anon.44a0faa3240fa409baa379409d152aec.3.llvm.13182230137114145837 -109 B 1
anon.44a0faa3240fa409baa379409d152aec.3.llvm.2804780324777358752 +108 B 1
anon.44a0faa3240fa409baa379409d152aec.0.llvm.13182230137114145837 -97 B 1
anon.44a0faa3240fa409baa379409d152aec.0.llvm.2804780324777358752 +96 B 1
anon.44a0faa3240fa409baa379409d152aec.2.llvm.13182230137114145837 -95 B 1
anon.44a0faa3240fa409baa379409d152aec.2.llvm.2804780324777358752 +94 B 1
[Unmapped] -3 B 1
Detailed Symbol Changes
    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [NEW]    +129  [NEW]     +40    anon.44a0faa3240fa409baa379409d152aec.1.llvm.2804780324777358752
  [NEW]    +113  [NEW]     +24    anon.44a0faa3240fa409baa379409d152aec.4.llvm.2804780324777358752
  [NEW]    +108  [NEW]     +19    anon.44a0faa3240fa409baa379409d152aec.3.llvm.2804780324777358752
  [NEW]     +96  [NEW]      +7    anon.44a0faa3240fa409baa379409d152aec.0.llvm.2804780324777358752
  [NEW]     +94  [NEW]      +5    anon.44a0faa3240fa409baa379409d152aec.2.llvm.2804780324777358752
  -4.3%      -3  [ = ]       0    [Unmapped]
  [DEL]     -95  [DEL]      -5    anon.44a0faa3240fa409baa379409d152aec.2.llvm.13182230137114145837
  [DEL]     -97  [DEL]      -7    anon.44a0faa3240fa409baa379409d152aec.0.llvm.13182230137114145837
  [DEL]    -109  [DEL]     -19    anon.44a0faa3240fa409baa379409d152aec.3.llvm.13182230137114145837
  [DEL]    -114  [DEL]     -24    anon.44a0faa3240fa409baa379409d152aec.4.llvm.13182230137114145837
  [DEL]    -130  [DEL]     -40    anon.44a0faa3240fa409baa379409d152aec.1.llvm.13182230137114145837
  -0.0%      -8  [ = ]       0    TOTAL

@pr-commenter

pr-commenter Bot commented Jul 27, 2026

Copy link
Copy Markdown

Regression Detector (Agent Data Plane)

Run ID: 405c0dec-285b-4d6a-baad-9d8c5958f632
Baseline: edcd3c13 · Comparison: 4093e2be · diff

Optimization Goals: ✅ No significant changes detected

Fine details of change detection per experiment (3)

Experiments configured erratic: true are tagged (ignored) and skipped when determining which experiments regressed or improved. Experiments which are detected as erratic at runtime are tagged (erratic) to flag that the run's sample dispersion was high, but their regression / improvement signal still counts.

experiment goal Δ mean % links
quality_gates_rss_dsd_medium memory ⚪ +0.30 metrics profiles logs
quality_gates_rss_dsd_low memory ⚪ -0.02 metrics profiles logs
quality_gates_rss_idle memory ⚪ -0.33 metrics profiles logs
Bounds Checks: ✅ Passed (3)
experiment check replicates observed links
quality_gates_rss_dsd_low memory_usage 10/10 ✅ 45.6 MiB ≤ 50 MiB metrics profiles logs
quality_gates_rss_dsd_medium memory_usage 10/10 ✅ 67.1 MiB ≤ 75 MiB metrics profiles logs
quality_gates_rss_idle memory_usage 10/10 ✅ 31.3 MiB ≤ 40 MiB metrics profiles logs
Explanation

A change is flagged as a regression when |Δ mean %| > 5.00% in the regressing direction for its optimization goal AND SMP marks the experiment as a regression (is_regression: true). Improvements use the matching criteria for the improving direction. Experiments configured erratic: true (tagged (ignored)) are skipped outright; experiments detected as erratic at runtime (tagged (erratic)) still count, since that flag describes sample dispersion rather than directional certainty. The Δ mean % cell is colored accordingly: 🟢 = improvement, 🔴 = regression, ⚪ = neutral. Reduction in CPU or memory is an improvement; reduction in ingress throughput is a regression.

@tobz tobz changed the title Onboard off public-images GitLab job-token trigger chore(ci): switch to dd-pkg for publishing public ADP container images Jul 27, 2026
@AliDatadog
AliDatadog marked this pull request as ready for review July 28, 2026 10:40
@AliDatadog
AliDatadog requested a review from a team as a code owner July 28, 2026 10:40

@datadog-datadog-prod-us1-2 datadog-datadog-prod-us1-2 Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Datadog Autotest: PASS

More details

The new release job definition parses correctly and preserves the publish inputs as distinct CLI arguments across ordinary, omitted, and regex-bearing cases. No production behavioral regression was reproduced; the change is CI-only, so no additional tests are recommended beyond the executed syntax and argument-construction checks.

Was this helpful? React 👍 or 👎

📊 Validated against 4 scenarios · Open Bits AI session

🤖 Datadog Autotest · Commit 4093e2b · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ci CI/CD, automated testing, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants