82 lines
2.5 KiB
Python
82 lines
2.5 KiB
Python
#-----------------------------------------------------------------------------
|
|
# Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors.
|
|
# All rights reserved.
|
|
#
|
|
# The full license is in the file LICENSE.txt, distributed with this software.
|
|
#-----------------------------------------------------------------------------
|
|
'''
|
|
|
|
'''
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Boilerplate
|
|
#-----------------------------------------------------------------------------
|
|
from __future__ import annotations
|
|
|
|
import logging # isort:skip
|
|
log = logging.getLogger(__name__)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Imports
|
|
#-----------------------------------------------------------------------------
|
|
|
|
# Standard library imports
|
|
from argparse import Namespace
|
|
|
|
# Bokeh imports
|
|
from bokeh.ext import build
|
|
|
|
# Bokeh imports
|
|
from ..subcommand import Argument, Subcommand
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Globals and constants
|
|
#-----------------------------------------------------------------------------
|
|
|
|
__all__ = ("Build",)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Private API
|
|
#-----------------------------------------------------------------------------
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# General API
|
|
#-----------------------------------------------------------------------------
|
|
|
|
class Build(Subcommand):
|
|
'''
|
|
Build a bokeh extension in the given directory.
|
|
'''
|
|
|
|
name = "build"
|
|
|
|
help = "Manage and build a bokeh extension"
|
|
|
|
args = (
|
|
("base_dir", Argument(
|
|
metavar="BASE_DIR",
|
|
type=str,
|
|
nargs="?",
|
|
default=".",
|
|
)),
|
|
("--rebuild", Argument(
|
|
action="store_true",
|
|
help="Ignore all caches and perform a full rebuild",
|
|
)),
|
|
("--debug", Argument(
|
|
action="store_true",
|
|
help="Run nodejs in debug mode (use --inspect-brk)",
|
|
)),
|
|
)
|
|
|
|
def invoke(self, args: Namespace) -> bool:
|
|
return build(args.base_dir, rebuild=args.rebuild, debug=args.debug)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Dev API
|
|
#-----------------------------------------------------------------------------
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Code
|
|
#-----------------------------------------------------------------------------
|