mirror of
https://github.com/bazel-contrib/bazel-lib
synced 2024-11-27 17:43:27 +00:00
3.6 KiB
3.6 KiB
Public API for docs helpers
stardoc_with_diff_test
stardoc_with_diff_test(name, bzl_library_target, aspect_template, func_template, header_template, provider_template, rule_template, suggested_update_target)
Creates a stardoc target, diff test, and an executable to rule to write the generated doc to the source tree and test that it's up to date.
This is helpful for minimizing boilerplate in repos wih lots of stardoc targets.
PARAMETERS
Name | Description | Default Value |
---|---|---|
name | the name of the stardoc file to be written to the current source directory (.md will be appended to the name). Call bazel run on this target to update the file. | none |
bzl_library_target | the label of the bzl_library target to generate documentation for |
none |
aspect_template | the label or path to the Velocity aspect template to use with stardoc | "@io_bazel_stardoc//stardoc:templates/markdown_tables/aspect.vm" |
func_template | the label or path to the Velocity function/macro template to use with stardoc | "@io_bazel_stardoc//stardoc:templates/markdown_tables/func.vm" |
header_template | the label or path to the Velocity header template to use with stardoc | "@io_bazel_stardoc//stardoc:templates/markdown_tables/header.vm" |
provider_template | the label or path to the Velocity provider template to use with stardoc | "@io_bazel_stardoc//stardoc:templates/markdown_tables/provider.vm" |
rule_template | the label or path to the Velocity rule template to use with stardoc | "@io_bazel_stardoc//stardoc:templates/markdown_tables/rule.vm" |
suggested_update_target | the target suggested to be run when a doc is out of date (should be the label for update_docs) | "//docs:update" |
update_docs
update_docs(name)
Stamps an executable run for writing all stardocs declared with stardoc_with_diff_test to the source tree.
This is to be used in tandem with stardoc_with_diff_test()
to produce a convenient workflow
for generating, testing, and updating all doc files as follows:
bazel build //{docs_folder}/... && bazel test //{docs_folder}/... && bazel run //{docs_folder}:update
eg.
bazel build //docs/... && bazel test //docs/... && bazel run //docs:update
PARAMETERS
Name | Description | Default Value |
---|---|---|
name | the name of executable target | "update" |