Skip to content

feat: add per-weblog metadata to control CI build requirement#7130

Open
rochdev wants to merge 10 commits into
mainfrom
rochdev/weblog-build-metadata
Open

feat: add per-weblog metadata to control CI build requirement#7130
rochdev wants to merge 10 commits into
mainfrom
rochdev/weblog-build-metadata

Conversation

@rochdev

@rochdev rochdev commented Jun 12, 2026

Copy link
Copy Markdown
Member

Summary

  • Introduce {name}.weblog.json companion files alongside weblog Dockerfiles; when require_build is false, the weblog is excluded from the build_end_to_end CI matrix
  • Set all 6 Node.js regular weblogs (express4, express4-typescript, express5, fastify, nextjs, uds-express4) to require_build: false — they use pre-built base images and don't need a per-run build
  • build_end_to_end already skips automatically when parallel_weblogs is empty (existing workflow condition: endtoend_defs_parallel_weblogs != '[]'); no workflow file change needed

Test Plan

  • test_nodejs_weblogs_dont_require_build — verifies parallel_weblogs is empty for nodejs and jobs are still produced
  • test_get_endtoend_definitions — verifies Ruby weblogs are unaffected (no .weblog.json files → still require_build=True)
  • test_ipv6_is_not_supported_for_uds_weblogs — no regression on existing tests

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

CODEOWNERS have been resolved as:

utils/build/docker/java/build.yml                                       @DataDog/apm-java @DataDog/asm-java @DataDog/system-tests-core
utils/build/docker/nodejs/build.yml                                     @DataDog/dd-trace-js @DataDog/system-tests-core
utils/build/docker/python/build.yml                                     @DataDog/apm-python @DataDog/asm-python @DataDog/system-tests-core
.github/workflows/compute-workflow-parameters.yml                       @DataDog/system-tests-core
.github/workflows/system-tests.yml                                      @DataDog/system-tests-core
tests/test_the_test/test_ci_orchestrator.py                             @DataDog/system-tests-core
utils/scripts/ci_orchestrators/workflow_data.py                         @DataDog/system-tests-core
utils/scripts/compute-workflow-parameters.py                            @DataDog/system-tests-core

@datadog-datadog-prod-us1

datadog-datadog-prod-us1 Bot commented Jun 12, 2026

Copy link
Copy Markdown

Pipelines  Tests

Fix all issues with BitsAI

⚠️ Warnings

🚦 1 Pipeline job failed

DataDog/system-tests | websphere-app.amd64.DO57: [235494822917.dkr.ecr.us-east-1.amazonaws.com/third-party/websphere-traditional:latest, linux/amd64, ]   View in Datadog   GitLab

ℹ️ Info

No other issues found (see more)

🧪 All tests passed
❄️ No new flaky tests detected

Useful? React with 👍 / 👎

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 338eae6 | Docs | Datadog PR Page | Give us feedback!

rochdev and others added 5 commits June 15, 2026 10:37
Introduce {name}.weblog.json companion files alongside Dockerfiles.
When require_build is false, the weblog is excluded from
build_end_to_end's matrix, which already skips the job when the
list is empty. Set all Node.js regular weblogs to require_build=false.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When require_build=False, artifact_name must use the pre-existing
binaries_artifact instead of a unique per-run name, since
build_end_to_end is skipped and never uploads that artifact.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
require_build controls parallel_weblogs (pre-build job).
needs_local_build controls weblog_build_required in run_end_to_end.
Non-Dockerfile weblogs (integration frameworks, go_proxies,
otel_collector) set needs_local_build=False; Dockerfile-based
weblogs default to True, so they still build locally even when
require_build=False skips the pre-build job.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
require_build now consistently means 'needs Docker build' (True for
all Dockerfile weblogs, False for non-Dockerfile). require_prebuild
controls parallel_weblogs membership and _get_build_time. Metadata
key renamed from require_build to require_prebuild accordingly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@rochdev rochdev force-pushed the rochdev/weblog-build-metadata branch from 8d7e3e7 to 2cc3e61 Compare June 15, 2026 14:37
nccatoni and others added 2 commits June 17, 2026 13:44
Co-authored-by: Roch Devost <roch.devost@datadoghq.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
@rochdev rochdev marked this pull request as ready for review June 17, 2026 16:12
@rochdev rochdev requested review from a team as code owners June 17, 2026 16:12
@rochdev rochdev requested review from avara1986, claponcet, dougqh, jandro996 and rachelyangdog and removed request for a team June 17, 2026 16:12

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dc55d067f4

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread utils/scripts/ci_orchestrators/workflow_data.py
Comment thread utils/scripts/ci_orchestrators/workflow_data.py
@nccatoni nccatoni force-pushed the rochdev/weblog-build-metadata branch from f7d8c88 to 7d3047a Compare June 23, 2026 14:31
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