You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.3 KiB
Python
48 lines
1.3 KiB
Python
#!/usr/bin/env python3
|
|
""" perform a development install of jupyterlite-echo-kernel
|
|
|
|
On Binder, this will run _after_ the environment has been fully created from
|
|
the environment.yml in this directory.
|
|
|
|
This script should also run locally on Linux/MacOS/Windows:
|
|
|
|
python3 binder/postBuild
|
|
"""
|
|
import subprocess
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
|
|
ROOT = Path.cwd()
|
|
|
|
def _(*args, **kwargs):
|
|
""" Run a command, echoing the args
|
|
|
|
fails hard if something goes wrong
|
|
"""
|
|
print("\n\t", " ".join(args), "\n")
|
|
return_code = subprocess.call(args, **kwargs)
|
|
if return_code != 0:
|
|
print("\nERROR", return_code, " ".join(args))
|
|
sys.exit(return_code)
|
|
|
|
# verify the environment is self-consistent before even starting
|
|
_(sys.executable, "-m", "pip", "check")
|
|
|
|
# install the labextension
|
|
_(sys.executable, "-m", "pip", "install", "-e", ".")
|
|
_(sys.executable, "-m", "jupyter", "labextension", "develop", "--overwrite", ".")
|
|
|
|
# verify the environment the extension didn't break anything
|
|
_(sys.executable, "-m", "pip", "check")
|
|
|
|
# list the extensions
|
|
_("jupyter", "server", "extension", "list")
|
|
|
|
# initially list installed extensions to determine if there are any surprises
|
|
_("jupyter", "labextension", "list")
|
|
|
|
|
|
print("JupyterLab with jupyterlite-echo-kernel is ready to run with:\n")
|
|
print("\tjupyter lab\n")
|