Skip to content

refactor(ci): configure ddtest services explicitly - #19899

Merged
gnufede merged 1 commit into
gnufede/ddtest-dogfoodingfrom
gnufede/ddtest-drop-infer-service
Aug 27, 2026
Merged

refactor(ci): configure ddtest services explicitly#19899
gnufede merged 1 commit into
gnufede/ddtest-dogfoodingfrom
gnufede/ddtest-drop-infer-service

Conversation

@gnufede

@gnufede gnufede commented Aug 27, 2026

Copy link
Copy Markdown
Member

Summary

Stacked follow-up to #19870 that removes the standalone scripts/ddtest-infer-service helper while preserving the pre-import service override that ddtest requires.

Changes

  • Add explicit ddtest_service values to every ddtest-enabled suite in tests/suitespec.yml, tests/contrib/suitespec.yml, tests/llmobs/suitespec.yml, and tests/appsec/suitespec.yml.
  • Have scripts/gen_gitlab_config.py require the metadata and emit _DD_PYTEST_XDIST_INFERRED_SERVICE directly on each generated ddtest run job.
  • Remove the shell command substitution and delete scripts/ddtest-infer-service.
  • Add generator coverage for the emitted service variable.

This keeps the variable available before Riot starts pytest, when the controller imports ddtrace, while making the expected suite-level service visible and reviewable in suitespec instead of reimplementing package discovery in a shell helper.

Testing

  • scripts/lint suitespec-check
  • scripts/gen_gitlab_config.py
  • scripts/run-tests -s --venv 1c8641e -- -- tests/internal/test_gen_gitlab_config.py (12 passed)

No customer-facing changelog is required.

@gnufede gnufede added the changelog/no-changelog A changelog entry is not required for this PR. label Aug 27, 2026
@cit-pr-commenter-54b7da

cit-pr-commenter-54b7da Bot commented Aug 27, 2026

Copy link
Copy Markdown

Codeowners resolved as

Resolved from the full PR diff against gnufede/ddtest-dogfooding using the target branch CODEOWNERS file.
CODEOWNERS team requests not listed below are not required by the current file set.

.gitlab/tests.yml                                                       @DataDog/python-guild @DataDog/apm-core-python
scripts/gen_gitlab_config.py                                            @DataDog/python-guild
tests/appsec/suitespec.yml                                              @DataDog/asm-python
tests/contrib/suitespec.yml                                             @DataDog/python-guild
tests/internal/test_gen_gitlab_config.py                                @DataDog/apm-core-python
tests/llmobs/suitespec.yml                                              @DataDog/ml-observability
tests/suitespec.yml                                                     @DataDog/python-guild

@cit-pr-commenter-54b7da

cit-pr-commenter-54b7da Bot commented Aug 27, 2026

Copy link
Copy Markdown

Circular import analysis

⚠️ Existing circular imports

There are 3 circular imports that already exist on the base branch and have not been changed by this PR.

ddtrace.llmobs -> ddtrace.llmobs._evaluators -> ddtrace.llmobs._evaluators.format -> ddtrace.llmobs._experiment -> ddtrace.llmobs
ddtrace.errortracking._handled_exceptions.bytecode_injector -> ddtrace.errortracking._handled_exceptions.callbacks -> ddtrace.errortracking._handled_exceptions.collector -> ddtrace.errortracking._handled_exceptions.bytecode_reporting -> ddtrace.errortracking._handled_exceptions.bytecode_injector
ddtrace.appsec._asm_request_context -> ddtrace.appsec._iast._iast_request_context_base -> ddtrace.appsec._iast._iast_env -> ddtrace.appsec._iast.reporter -> ddtrace.appsec._exploit_prevention.stack_traces -> ddtrace.appsec._asm_request_context

@cit-pr-commenter-54b7da

cit-pr-commenter-54b7da Bot commented Aug 27, 2026

Copy link
Copy Markdown

Dependency direction analysis

⚠️ Existing dependency direction violations

There are 240 dependency direction violations that already exist on the base branch and have not been changed by this PR.

Show existing violations (showing 5 of 240 highest severity)
ddtrace.internal.tracemethods -×-> ddtrace.trace  (internal-core -> product:tracing, score=135)
ddtrace.llmobs._integrations.langgraph -×-> ddtrace.trace  (product:llmobs -> product:tracing, score=133)
ddtrace.llmobs._integrations.google_adk -×-> ddtrace.trace  (product:llmobs -> product:tracing, score=133)
ddtrace.profiling.scheduler -×-> ddtrace.trace  (product:profiling -> product:tracing, score=133)
ddtrace.internal.opentelemetry.context -×-> ddtrace.trace  (product:opentelemetry -> product:tracing, score=133)

To see all violations, download the layers-base.json and layers-pr.json artifacts from this CI job and run:

uv run --script scripts/import-analysis/layers.py compare layers-base.json layers-pr.json

@datadog-datadog-us1-prod

This comment has been minimized.

@gnufede gnufede changed the title chore(ci): remove ddtest service inference helper refactor(ci): configure ddtest services explicitly Aug 27, 2026
@gnufede
gnufede force-pushed the gnufede/ddtest-drop-infer-service branch from f5c589f to 8ff3016 Compare August 27, 2026 18:06
@gnufede
gnufede marked this pull request as ready for review August 27, 2026 18:07
@gnufede
gnufede requested review from a team as code owners August 27, 2026 18:07
@gnufede
gnufede requested review from christophe-papazian and emmettbutler and removed request for a team August 27, 2026 18:07
@gnufede
gnufede merged commit 82e5c58 into gnufede/ddtest-dogfooding Aug 27, 2026
23 of 96 checks passed
@gnufede
gnufede deleted the gnufede/ddtest-drop-infer-service branch August 27, 2026 18:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/no-changelog A changelog entry is not required for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant