Generate an nbgitpuller link through a command-line interface or Python code.
Install the latest stable release of nbgitpuller-link with pip
:
pip install nbgitpuller-link
or with conda
:
conda install nbgitpuller-link -c conda-forge
To install from source, after cloning or downloading the nbgitpuller-link repository,
change into the repository directory
and install the package with pip
:
pip install -e .
The nbgitpuller-link package includes a CLI and a Python API. The repository holds short examples of both, which are adapted here.
To see how to use the CLI,
call nbgitpuller-link
with the --help
option:
$ nbgitpuller-link --help
Usage: nbgitpuller-link [OPTIONS]
Generate an nbgitpuller link to load a repository on a JupyterHub
Options:
--version Show the version and exit.
--jupyterhub-url TEXT Target JupyterHub for link. [required]
--repository-url TEXT Source repository for link. [required]
--branch TEXT Branch to use from source repository. [default:
main]
--launch-path TEXT Relative path to file or directory in source
repository to launch on target JupyterHub.
[default: ]
--interface [notebook|lab] Open with classic Jupyter Notebook interface or
next-generation JupyterLab. [default: notebook]
--help Show this message and exit.
Generate a link to load a repository on a JupyterHub, specifying the file to launch and the branch to use:
nbgitpuller-link \
--jupyterhub-url=https://lab.openearthscape.org \
--repository-url=https://github.com/csdms/ivy \
--branch=main \
--launch-path=lessons/bmi/index.ipynb
The resulting link:
https://lab.openearthscape.org/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fcsdms%2Fivy&urlpath=tree%2Fivy%2Flessons%2Fbmi%2Findex.ipynb&branch=main
Start a Python session and import the Link
class from the nbgitpuller-link package:
from nbgitpuller_link import Link
Generate a link though a Link
instance:
linker = Link(
jupyterhub_url="https://lab.openearthscape.org",
repository_url="https://github.com/csdms/ivy",
branch="main",
launch_path="lessons/bmi/index.ipynb",
interface="lab",
)
Note that this example uses the JupyterLab interface.
The link
property holds the URL:
print(f"The nbgitpuller link is:\n{linker.link}")
The nbgitpuller link is:
https://lab.openearthscape.org/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fcsdms%2Fivy&urlpath=lab%2Ftree%2Fivy%2Flessons%2Fbmi%2Findex.ipynb%3Fautodecode&branch=main