Skip to content

refactor: centralize docs CLI path resolution - #814

Draft
AlexanderLanin wants to merge 1 commit into
eclipse-score:mainfrom
etas-contrib:refactor/docs-cli-config-boundary
Draft

refactor: centralize docs CLI path resolution#814
AlexanderLanin wants to merge 1 commit into
eclipse-score:mainfrom
etas-contrib:refactor/docs-cli-config-boundary

Conversation

@AlexanderLanin

Copy link
Copy Markdown
Member

Why

Sphinx builds currently resolve Bazel-provided paths in multiple layers. That makes bazel run, sandboxed bazel build, and direct invocation behave differently, and malformed input paths are reported later by Sphinx or an extension. A single configuration boundary makes the execution context explicit, validates required inputs early, and gives extensions one consistent source of configuration.

What changed

  • Introduce typed DocsCliConfig path handling for direct, Bazel-run, and Bazel-build execution.
  • Validate configured source directories and input files while loading the CLI configuration, while leaving declared Bazel outputs for Sphinx to create.
  • Forward normalized paths through Sphinx configuration defines, including mounts, metamodel, known-good, and source-link inputs.
  • Make Sphinx extensions consume their config values instead of migrated process environment variables.
  • Preserve workspace runtime discovery for behavior that depends on the active Bazel context.
  • Add regression coverage for build/run path resolution, early validation, mounts, and source-link consumers.

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Documentation preview for this pull request is available at:
pr-814: https://eclipse-score.github.io/docs-as-code/pr-814/

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

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant