Skip to content

Commit cddce74

Browse files
authored
Add support for injecting dependencies (#119)
Users of docs-as-code can now provide additional dependencies to the docs, and ide_support macros. fixes: #105
1 parent 98dbf18 commit cddce74

1 file changed

Lines changed: 6 additions & 5 deletions

File tree

docs.bzl

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ sphinx_requirements = all_requirements + [
5858
"@score_docs_as_code//src/extensions/score_source_code_linker:score_source_code_linker",
5959
]
6060

61-
def docs(source_files_to_scan_for_needs_links = None, source_dir = "docs", conf_dir = "docs", build_dir_for_incremental = "_build", docs_targets = []):
61+
def docs(source_files_to_scan_for_needs_links = None, source_dir = "docs", conf_dir = "docs", build_dir_for_incremental = "_build", docs_targets = [], deps = []):
6262
"""
6363
Creates all targets related to documentation.
6464
By using this function, you'll get any and all updates for documentation targets in one place.
@@ -84,7 +84,7 @@ def docs(source_files_to_scan_for_needs_links = None, source_dir = "docs", conf_
8484
name = "sphinx_build" + suffix,
8585
visibility = ["//visibility:public"],
8686
data = ["@score_docs_as_code//src:docs_assets", "@score_docs_as_code//src:score_extension_files"] + external_needs_deps,
87-
deps = sphinx_requirements,
87+
deps = sphinx_requirements + deps,
8888
)
8989
_incremental(
9090
incremental_name = "incremental" + suffix,
@@ -94,6 +94,7 @@ def docs(source_files_to_scan_for_needs_links = None, source_dir = "docs", conf_
9494
build_dir = build_dir_for_incremental,
9595
external_needs_deps = external_needs_deps,
9696
external_needs_def = external_needs_def,
97+
extra_dependencies = deps,
9798
)
9899
_docs(
99100
name = "docs" + suffix,
@@ -113,7 +114,7 @@ def docs(source_files_to_scan_for_needs_links = None, source_dir = "docs", conf_
113114
# Virtual python environment for working on the documentation (esbonio).
114115
# incl. python support when working on conf.py and sphinx extensions.
115116
# creates :ide_support target for virtualenv
116-
_ide_support()
117+
_ide_support(deps)
117118

118119
# creates 'needs.json' build target
119120

@@ -160,11 +161,11 @@ def _incremental(incremental_name = "incremental", live_name = "live_preview", s
160161
},
161162
)
162163

163-
def _ide_support():
164+
def _ide_support(extra_dependencies):
164165
score_virtualenv(
165166
name = "ide_support",
166167
venv_name = ".venv_docs",
167-
reqs = sphinx_requirements,
168+
reqs = sphinx_requirements + extra_dependencies,
168169
)
169170

170171
def _docs(name = "docs", suffix = "", format = "html", external_needs_deps = list(), external_needs_def = list()):

0 commit comments

Comments
 (0)