git repos / blockattack-game

blame: source/misc/embedded_libs/fmt-11.0.2/support/mkdocs

normal view · raw

47fd5c32 Poul Sander 2024-10-05 08:44 1
#!/usr/bin/env python3
47fd5c32 Poul Sander 2024-10-05 08:44 2
# A script to invoke mkdocs with the correct environment.
47fd5c32 Poul Sander 2024-10-05 08:44 3
# Additionally supports deploying via mike:
47fd5c32 Poul Sander 2024-10-05 08:44 4
#   ./mkdocs deploy [mike-deploy-options]
47fd5c32 Poul Sander 2024-10-05 08:44 5
47fd5c32 Poul Sander 2024-10-05 08:44 6
import errno, os, shutil, sys
47fd5c32 Poul Sander 2024-10-05 08:44 7
from subprocess import call
47fd5c32 Poul Sander 2024-10-05 08:44 8
47fd5c32 Poul Sander 2024-10-05 08:44 9
support_dir = os.path.dirname(os.path.normpath(__file__))
47fd5c32 Poul Sander 2024-10-05 08:44 10
build_dir = os.path.join(os.path.dirname(support_dir), 'build')
47fd5c32 Poul Sander 2024-10-05 08:44 11
47fd5c32 Poul Sander 2024-10-05 08:44 12
# Set PYTHONPATH for the mkdocstrings handler.
47fd5c32 Poul Sander 2024-10-05 08:44 13
env = os.environ.copy()
47fd5c32 Poul Sander 2024-10-05 08:44 14
path = env.get('PYTHONPATH')
47fd5c32 Poul Sander 2024-10-05 08:44 15
env['PYTHONPATH'] = \
47fd5c32 Poul Sander 2024-10-05 08:44 16
  (path + ':' if path else '') + os.path.join(support_dir, 'python')
47fd5c32 Poul Sander 2024-10-05 08:44 17
47fd5c32 Poul Sander 2024-10-05 08:44 18
config_path = os.path.join(support_dir, 'mkdocs.yml')
47fd5c32 Poul Sander 2024-10-05 08:44 19
args = sys.argv[1:]
47fd5c32 Poul Sander 2024-10-05 08:44 20
if len(args) > 0:
47fd5c32 Poul Sander 2024-10-05 08:44 21
  command = args[0]
47fd5c32 Poul Sander 2024-10-05 08:44 22
  if command == 'deploy':
47fd5c32 Poul Sander 2024-10-05 08:44 23
    git_url = 'https://github.com/' if 'CI' in os.environ else 'git@github.com:'
47fd5c32 Poul Sander 2024-10-05 08:44 24
    site_repo = git_url + 'fmtlib/fmt.dev.git'
47fd5c32 Poul Sander 2024-10-05 08:44 25
47fd5c32 Poul Sander 2024-10-05 08:44 26
    site_dir = os.  path.join(build_dir, 'fmt.dev')
47fd5c32 Poul Sander 2024-10-05 08:44 27
    try:
47fd5c32 Poul Sander 2024-10-05 08:44 28
      shutil.rmtree(site_dir)
47fd5c32 Poul Sander 2024-10-05 08:44 29
    except OSError as e:
47fd5c32 Poul Sander 2024-10-05 08:44 30
      if e.errno == errno.ENOENT:
47fd5c32 Poul Sander 2024-10-05 08:44 31
        pass
47fd5c32 Poul Sander 2024-10-05 08:44 32
    ret = call(['git', 'clone', '--depth=1', site_repo, site_dir])
47fd5c32 Poul Sander 2024-10-05 08:44 33
    if ret != 0:
47fd5c32 Poul Sander 2024-10-05 08:44 34
      sys.exit(ret)
47fd5c32 Poul Sander 2024-10-05 08:44 35
47fd5c32 Poul Sander 2024-10-05 08:44 36
    # Copy the config to the build dir because the site is built relative to it.
47fd5c32 Poul Sander 2024-10-05 08:44 37
    config_build_path = os.path.join(build_dir, 'mkdocs.yml')
47fd5c32 Poul Sander 2024-10-05 08:44 38
    shutil.copyfile(config_path, config_build_path)
47fd5c32 Poul Sander 2024-10-05 08:44 39
47fd5c32 Poul Sander 2024-10-05 08:44 40
    sys.exit(call(['mike'] + args + ['--config-file', config_build_path,
47fd5c32 Poul Sander 2024-10-05 08:44 41
                   '--branch', 'master'], cwd=site_dir, env=env))
47fd5c32 Poul Sander 2024-10-05 08:44 42
  elif not command.startswith('-'):
47fd5c32 Poul Sander 2024-10-05 08:44 43
    args += ['-f', config_path]
47fd5c32 Poul Sander 2024-10-05 08:44 44
sys.exit(call(['mkdocs'] + args, env=env))
1970-01-01 00:00 45