From: Sebastián Ramírez Date: Sun, 25 Oct 2020 11:59:13 +0000 (+0100) Subject: ⚡️ Build docs for languages in parallel in subprocesses to speed up CI (#2242) X-Git-Tag: 0.61.2~66 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f88ffd1a0bb9ed2ea6dc3ece42aaa1b45b4ee3b4;p=thirdparty%2Ffastapi%2Ffastapi.git ⚡️ Build docs for languages in parallel in subprocesses to speed up CI (#2242) --- diff --git a/scripts/docs.py b/scripts/docs.py index 25ca519001..284f344f68 100644 --- a/scripts/docs.py +++ b/scripts/docs.py @@ -1,6 +1,7 @@ import os import shutil from http.server import HTTPServer, SimpleHTTPRequestHandler +from multiprocessing import Pool from pathlib import Path from typing import Dict, Optional, Tuple @@ -207,10 +208,15 @@ def build_all(): typer.echo(f"Building docs for: en") mkdocs.commands.build.build(mkdocs.config.load_config(site_dir=str(site_path))) os.chdir(current_dir) + + langs = [] for lang in get_lang_paths(): if lang == en_build_path or not lang.is_dir(): continue - build_lang(lang.name) + langs.append(lang.name) + cpu_count = os.cpu_count() or 1 + with Pool(cpu_count * 2) as p: + p.map(build_lang, langs) typer.echo("Copying en index.md to README.md") en_index = en_build_path / "docs" / "index.md" shutil.copyfile(en_index, "README.md")