From 5af3382025784130f91fed0767091997073911ca Mon Sep 17 00:00:00 2001 From: Markus Bechter Date: Mon, 26 Jan 2026 18:02:16 +0100 Subject: [PATCH] Add sphinx_module definition --- MODULE.bazel | 6 ++++++ docs.bzl | 28 +++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/MODULE.bazel b/MODULE.bazel index c7f9c56aa..04a45b9c0 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -115,3 +115,9 @@ register_toolchains( "@shellcheck_hub//toolchains:all", "@yamlfmt_hub//toolchains:all", ) + +git_override( + module_name = "score_tooling", + commit = "fb02b41adc666f83e8457c77900248bb3ca2fe7c", + remote = "https://github.com/eclipse-score/tooling.git", +) diff --git a/docs.bzl b/docs.bzl index 00f1c676c..93f3aa4ae 100644 --- a/docs.bzl +++ b/docs.bzl @@ -42,8 +42,8 @@ load("@pip_process//:requirements.bzl", "all_requirements", "requirement") load("@rules_pkg//pkg:mappings.bzl", "pkg_files", "strip_prefix") load("@rules_pkg//pkg:tar.bzl", "pkg_tar") load("@rules_python//sphinxdocs:sphinx.bzl", "sphinx_build_binary", "sphinx_docs") -load("@rules_python//sphinxdocs:sphinx_docs_library.bzl", "sphinx_docs_library") load("@score_tooling//:defs.bzl", "score_virtualenv") +load("@score_tooling//bazel/rules/score_module:score_module.bzl", "sphinx_module") def _rewrite_needs_json_to_docs_sources(labels): """Replace '@repo//:needs_json' -> '@repo//:docs_sources' for every item.""" @@ -67,6 +67,7 @@ def docs(source_dir = "docs", data = [], deps = []): if call_path != "": fail("docs() must be called from the root package. Current package: " + call_path) + module_deps = deps deps = deps + all_requirements + [ "@score_docs_as_code//src:plantuml_for_python", "@score_docs_as_code//src/extensions/score_sphinx_bundle:score_sphinx_bundle", @@ -193,3 +194,28 @@ def docs(source_dir = "docs", data = [], deps = []): tools = data, visibility = ["//visibility:public"], ) + + # Alloes any score repo to be used as dependency for score modules. + sphinx_module( + name = native.module_name() +"_module", + srcs = native.glob([ + source_dir + "/**/*.rst", + source_dir + "/**/*.png", + source_dir + "/**/*.svg", + source_dir + "/**/*.md", + source_dir + "/**/*.html", + source_dir + "/**/*.css", + source_dir + "/**/*.puml", + source_dir + "/**/*.need", + source_dir + "/**/*.yaml", + source_dir + "/**/*.json", + source_dir + "/**/*.csv", + source_dir + "/**/*.inc", + "more_docs/**/*.rst", + ], allow_empty = True), + # config = ":" + source_dir + "/conf.py", + index = source_dir + "/index.rst", + sphinx = "@score_tooling//bazel/rules/score_module:score_build", + deps = module_deps, + visibility = ["//visibility:public"], + )