diff options
author | aserebriyskiy <aserebriyskiy@yandex-team.com> | 2025-03-10 20:00:56 +0300 |
---|---|---|
committer | aserebriyskiy <aserebriyskiy@yandex-team.com> | 2025-03-10 20:18:03 +0300 |
commit | 527740b69a8e1a69b23f120a8fbce491231e5e36 (patch) | |
tree | 910615f0038195be703498ca6c9951735dd34e26 /build/scripts/docs_proto_wrapper.py | |
parent | fc6cd7d48282fba73b60215b3fd31fc0a8825982 (diff) | |
download | ydb-527740b69a8e1a69b23f120a8fbce491231e5e36.tar.gz |
feat ya-make: add support for DOCS_LIBRARY in PROTO_LIBRARY
commit_hash:8f3498b2a434c3f72e0f5789ee69ae2aad71a05a
Diffstat (limited to 'build/scripts/docs_proto_wrapper.py')
-rw-r--r-- | build/scripts/docs_proto_wrapper.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/build/scripts/docs_proto_wrapper.py b/build/scripts/docs_proto_wrapper.py new file mode 100644 index 0000000000..71cb2124a2 --- /dev/null +++ b/build/scripts/docs_proto_wrapper.py @@ -0,0 +1,35 @@ +import argparse +import subprocess +import sys +import pathlib + + +def parse_args(): + parser = argparse.ArgumentParser() + parser.add_argument('--docs-output', required=True) + parser.add_argument('args', nargs='+') + + return parser.parse_args() + + +def main(args): + cmd = list(args.args) + # interface is like this: + # --doc_out=TARGET_DIR + # --doc_opt=markdon,TARGET_FILE_NAME + + target_file = pathlib.Path(args.docs_output) + cmd.append(f'--doc_opt=markdown,{target_file.name}') + cmd.append(f'--doc_out={target_file.parent}') + + try: + subprocess.check_output(cmd, stdin=None, stderr=subprocess.STDOUT, text=True) + except subprocess.CalledProcessError as e: + sys.stderr.write(f'{e.cmd} returned non-zero exit code {e.returncode}.\n{e.output}\n') + return e.returncode + + return 0 + + +if __name__ == '__main__': + sys.exit(main(parse_args())) |