scripts/do_all_things.py (31 lines of code) (raw):

import copy_druid_docs import build_docs # Example: python do_all_things.py -v 26.0.0 def main(versions, no_docs, source, skip_install, use_yarn): # if we want to update docs, copy over from apache/druid if not no_docs: copy_druid_docs.main(versions, source) # build all specified versions of the docs build_docs.main([versions, "latest"], skip_install, use_yarn) # if we don't want to update docs, just build latest else: build_docs.main(["latest"], skip_install, use_yarn) if __name__ == "__main__": import argparse parser = argparse.ArgumentParser() parser.add_argument("-v", "--version", help="Version to copy and build. Do not include 'latest'" " since it's already accounted for. " "For example: -v 26.0.0") parser.add_argument("--no-docs", default=False, help="Set this option if you ONLY want to update " "non-docs pages, such as the home page.", action='store_true') parser.add_argument("-s", "--source", default="../../druid", help="The apache/druid folder to use as docs source.") parser.add_argument("--skip-install", default=False, help="Skip the Docusaurus 2 installation", action='store_true') parser.add_argument("--yarn", default=False, help="Use yarn to install and build instead of npm", action='store_true') args = parser.parse_args() # you can only skip the --version flag if no-docs is True # when no-docs is False, --version is required if not args.no_docs and not args.version: parser.error("--version is required when --no-docs is False") main(args.version, args.no_docs, args.source, args.skip_install, args.yarn)