Skip to main content

jupyterlab_scheduler

A simple plugin for scheduling files for recurring execution using the cron utility within the Jupyter Lab UI. Use cases

Security Note: Cron jobs are executed under the permission set of the JupyerLab process; if you start jupyter as root (not recommended!) every job that is scheduled via the UI will also run as root.

Screenshots

Scheduling a job

Context Menu

Schedule Job

Viewing Scheduled Jobs

Menu

Scheduled Jobs

Viewing Run Logs

View Logs

Prerequisites

  • JupyterLab
  • Cron installed on the JupyterLab host

Installation

To install using pip:

pip install jupyterlab_scheduler

jupyter labextension install jupyterlab_scheduler

Development

For a development install (requires npm version 4 or later), do the following in the repository directory:

# Clone the repo to your local environment
# Move to jupyterlab_scheduler directory
# Install dependencies
npm install

# Install your development version of the extension
jupyter labextension install .

You run JupyterLab in watch mode to watch for changes in the extension's source and automatically rebuild.

# Run jupyterlab in watch mode & compile JS on change
npm run watch & jupyter lab --watch

Now every change will be built locally and bundled into JupyterLab. Be sure to refresh your browser page after saving file changes to reload the extension (note: you'll need to wait for webpack to finish, which can take 10s+ at times).

# Run jupyterlab in auto reload mode & compile JS on change
npm run watch &  jupyter lab  --autoreload --NotebookApp.token='' --NotebookApp.password='' --no-browser

Works better when developing server extensions

Note: Make sure to close any old npm run watch jobs that may be running in the background.

Publishing

Update version number in:

  • package.json
  • jupyterlab_scheduler/_version.py

Update JavaScript files:

npm install

Build the server-side portion of the plugin for disitibution on Pypi:

python3 setup.py sdist bdist_wheel

python3 -m twine upload --repository pypi dist/*

Uninstall

jupyter labextension uninstall jupyterlab_scheduler

Metadata

Release files for jupyterlab-scheduler 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jupyterlab-scheduler 0.1.5
File Size Uploaded
jupyterlab_scheduler-0.1.5.tar.gz 914.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jupyterlab-scheduler 0.1.5
File Interpreter ABI Platform
jupyterlab_scheduler-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 2.7 MB

Release files / jupyterlab_scheduler-0.1.5.tar.gz

Download URL jupyterlab_scheduler-0.1.5.tar.gz
Size 914.6 kB
Tags Source
SHA-256 checksum
How to use checksums
2a6c5e8a3f4315eb9d6e713fb1f577a8ce2c7e092bd1d45b2448018f51f22f53
BLAKE2b-256 checksum
How to use checksums
85d4cacd3750fc4e97b5d5cc19f8d416ed37bcbed83fa03e98958a29f65eb3a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/52.0.0.post20210125 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release files / jupyterlab_scheduler-0.1.5-py3-none-any.whl

Download URL jupyterlab_scheduler-0.1.5-py3-none-any.whl
Size 1.8 MB
Tags Python 3
SHA-256 checksum
How to use checksums
608bf6ecedcf3b2302f498fce94a8b99f2c66d66d63569872ad9df91a44e501a
BLAKE2b-256 checksum
How to use checksums
81d9e9928d4b269c5a87873a94de69689e42bfa2dd6d6f33b1b1e67c6663e769
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/52.0.0.post20210125 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page