Commit Graph

54 Commits

Author SHA1 Message Date
Yuvi Panda
bceaead5d2 Migrate start-notebook & start-singleuser to python (#2006)
* Migrate start-notebook.sh to bash

Based on

> Stop using bash, haha 👍

from https://github.com/jupyter/docker-stacks/issues/1532.

If there's more apetite for this, I'll try to migrate
`start.sh` and `start-singleuser.sh` as well - I think they should
all be merged together. We can remove the `.sh` suffixes for
accuracy, and keep symlinks in so old config still works. Since
the shebang is what is used to launch the correct interpreter,
the `.sh` doesn't matter.

Will help fix https://github.com/jupyter/docker-stacks/issues/1532,
as I believe all those things are going to be easier to do from
python than bash

* Rename start-notebook.sh to start-notebook

* Cleanup start-notebook a little

* Fix typo

* Migrate start-singleuser as well

* Remove unused import

* Run symlink commands as root

* Combine repetitive RUN commands

* Remove multiple args to env

-u can not be set by shebang, we must set the env var
instead

* Fix conditional inversion

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>

* Fix how start-singleuser is exec'd

* Actually call jupyterhub-singleuser in start-singleuser

* Pass through any additional args we get

* Put .py suffix on the start-* scripts

* Add .sh shims for the start-* scripts

* Document start-notebook.sh and start-singleuser.sh

* Partially test start-notebook.sh

* Reflow warning docs

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>

---------

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-10-17 14:46:43 +02:00
Ayaz Salikhov
c2bf3c6bfd Revert "Temporarily disable tests using conda --json output"
This reverts commit bc938c50dc.
2023-08-24 15:25:53 +04:00
Matthias Jobst
72ef9bc17d Healthcheck gives correct result even behind proxy (#1964)
* Fixed #1962

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update base-notebook/docker_healthcheck.py

Use empty string instead of None

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-08-13 23:14:47 +04:00
Ayaz Salikhov
bc938c50dc Temporarily disable tests using conda --json output 2023-07-28 18:22:43 +04:00
Ayaz Salikhov
4b2a473cbb Revert "Temporarily disable tests using conda --json output"
This reverts commit 7c03161578.
2023-07-28 18:11:35 +04:00
Ayaz Salikhov
df06e24103 Improve wording in docs about Jupyter Notebook (#1949)
* Improve wording in docs about Jupyter Notebook

* Fixes

* Better naming

* Apply suggestions from code review
2023-07-28 12:16:02 +04:00
Ayaz Salikhov
7c03161578 Temporarily disable tests using conda --json output 2023-07-28 12:06:40 +04:00
Ayaz Salikhov
bfe5f20914 Use correct ServerApp options in examples and tests (#1947) 2023-07-26 20:09:47 +04:00
Yuvi Panda
39582f7099 Install Pluto.jl and jupyter-pluto-proxy (#1929)
* Install Pluto.jl and jupyter-pluto-proxy

[Pluto.jl](https://plutojl.org/) is an alternative reactive notebook
frontend focused specifically on Julia. I think shipping this
by default in the julia-enabled images helps serve the Julia
community better, particularly when used with JupyterHub.

For context, I am working with the Julia users of the
[Jupyter Meets the Earth](https://jupytearth.org/) project, and
trying to understand how to best serve their needs on a JupyterHub.
We currently maintain a massive image that 'has everything', but
I'm trying to instead work upstream wherever possible so everyone
working in these subfields can benefit. Meeting Julia users where
they are at seems a useful path forward here.

* Add note about Pluto.jl to selecting.md

* Default to replacing - with _ in package imports

* Add jupyter-pluto-proxy to package import mapping

* Add Pluto.jl to datascience-notebook image

* Add test for pluto proxy starting correctly

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update test_packages.py

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-07-05 18:48:36 +04:00
Ayaz Salikhov
c44f6e9476 Remove extra line in some test files 2023-07-03 00:35:00 +04:00
Ayaz Salikhov
2343fdba34 Add run_command script in tests (#1931)
* Add run_command script in tests

* Fix

* Add timeout back
2023-07-03 00:34:06 +04:00
Bjørn Jørgensen
df5d516e34 Pin pandas to version 1.5.3 to all spark images (#1925)
* 1.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add note

* typo

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* remove test

* >=1.5.3 and <2.0.0

* update test

* Update pyspark-notebook/Dockerfile

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update pyspark-notebook/Dockerfile

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>

* move test to file

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add pandas to EXCLUDED_PACKAGES

* add 1.5.3,<2.0.0 and sort list

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add '

* "pandas[version='>"

* Rename test_pandas_version.py to unit_pandas_version.py

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-06-27 15:42:18 +04:00
Ayaz Salikhov
5c660db02e Try to remove r-sparklyr fix (#1915) 2023-06-04 23:27:16 +04:00
Ayaz Salikhov
88392974b8 Remove nodejs exception in tests 2023-06-04 12:16:48 +04:00
Ayaz Salikhov
7a3418ac4a Remove jupyter_server version fix (#1905) 2023-05-26 17:59:53 +04:00
Kenta Murata
e98be3d3d0 Install nodejs >= 18.0 (#1902)
* Install nodejs >= 18.0

NodeJS >= 18.0 requires `jupyter lab build` command.

Fixes #1901.

* Update Dockerfile

* Update Dockerfile

* Update test_packages.py

---------

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-05-26 11:29:13 +04:00
Romeo Kienzler
62018ccc9e add jupyterlab-git extension (#1895)
* add jupyterlab-git extension

* order requirements

* add doc for jupyterlab-git

* fix ordering

* add test exclude for jupyterlab-git

---------

Co-authored-by: Romeo Kienzler <romeo.kienzler1@ibm.com>
2023-04-27 14:49:43 +04:00
Muhammad Aji Muharrom
bcd323f794 Healthcheck url from json (#1868)
* Get healthcheck URL from JSON file

Obtain Jupyter server's full URL from
/home/$NB_USER/.local/share/jupyter/runtime/*.json
and use it for healthcheck.

* Expand tests for healthcheck

* Update pre-commit config

* Remove workdir from tests

* Wait for container start with 0.1s interval

* Quote NB_USER variable on base-notebook/Dockerfile

* Fix style and make test actually work

* Ooops, GitHub didn't show last line

* Fix mypy

* Use bash with pipefail option for healthcheck

* Create python script for healthcheck

* Don't verify SSL certificate on healthcheck

* Update healthcheck test

- Add "user" parameter
- Add tests when container should not be healthy

* Fix typo

* Update test_healthcheck.py

---------

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-02-28 14:07:52 +04:00
Muhammad Aji Muharrom
0d324bc0b3 Parameterize healthcheck by internal port (#1859)
* Use the JUPYTER_PORT environment variable to configure server port

- Remove port setting in jupyter_server_config.py
- Declare the $JUPYTER_PORT env on the base Dockerfile
- Use it for HEALTHCHECK

* Add test case for JUPYTER_PORT env variable

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update documentation

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update style

* Better wording

* Better wording

* Add test for custom internal port

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Parametrize internal port test case

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Try to fix test

* Better tests

Co-authored-by: Muhammad Aji Muharrom <ajimuharrom@uchicago.edu>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
Co-authored-by: Ayaz Salikhov <mathbunnyru@gmail.com>
2023-01-24 11:19:39 +04:00
Ayaz Salikhov
a905ff6f6d Check healthcheck in all jupyter applications (#1854)
* Check healthcheck in all jupyter applications

* Fix

* Remove JUPYTERHUB_API_TOKEN healthcheck test
2023-01-04 10:24:09 +04:00
Ayaz Salikhov
c9ac681f8f Increase sleep for healthcheck 2023-01-01 12:07:37 +03:00
Ayaz Salikhov
2a1cd45ebf Pin jupyter_server>=2.0.0 (#1853)
* Pin jupyter_server==2.0.0

* Update scipy-notebook/Dockerfile

Co-authored-by: Erik Sundell <erik.i.sundell@gmail.com>

* Fix test

* Fix test

* Test healthcheck properly

* Fix typing

Co-authored-by: Erik Sundell <erik.i.sundell@gmail.com>
2022-12-30 11:08:27 +02:00
Kevin Bates
10e52ee843 Create base image to base-notebook for non-server Jupyter applications (#1825)
* Create base-jupyter from base-notebook for non-server jupyter applications

* Fix pre-commit errors and begin test refactoring

* More test refactoring

* Add base-jupyter to images_hierarchy

* Use folder work instead of .jupyter in nb-user test

* Add base-jupyter to tagging hierarchy

* Linting: trailing comma

* Apply review comments, remove obsolute Miniforge reference

* Add self-signed cert comment back to base-notebook doc

* Update docs/using/selecting.md

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>

* Remove redundant apt-get upgrade per review

* Remove b/c approaches per review

* Move test_nb_user_change back to base-notebook tests, per review

* fix linting

* Rename base-jupyter to docker-stacks-foundation, per review

* Rename tests/base-jupyter to docker-stacks-foundation

* Use alphabetical order

* Use alphabetical order

* Fix markdown style

* Split test_nb_user_change between the foundation and base tests

Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2022-11-13 01:44:44 +04:00
Ayaz Salikhov
61fe0e3abe Build images with ubuntu-22.04 and python-3.10 2022-10-10 01:36:30 +04:00
Ayaz Salikhov
ed2908bbb6 Build images with ubuntu-22.04 and python-3.9 2022-10-09 23:08:01 +04:00
Ayaz Salikhov
7285848c0a Build images with ubuntu-22.04 and python-3.8 2022-10-09 23:04:42 +04:00
Ayaz Salikhov
b86753318a Build images with ubuntu-22.04 and python-3.7 2022-10-09 17:14:52 +04:00
Ayaz Salikhov
f3079808ca Build images with ubuntu-20.04 and python-3.10 2022-10-09 15:38:45 +04:00
Ayaz Salikhov
5ae537728c Build images with ubuntu-20.04 and python-3.9 2022-10-09 14:21:30 +04:00
Ayaz Salikhov
a374cab4fc Build images with ubuntu-20.04 and python-3.8 2022-10-09 14:17:20 +04:00
Ayaz Salikhov
1aac87eb7f Build images with ubuntu-20.04 and python-3.7 (#1793) 2022-10-09 12:45:03 +04:00
Ayaz Salikhov
6e62efb398 Reduce sleep timeouts in tests 2022-07-17 13:20:54 +04:00
Ayaz Salikhov
b186ce5fea Update test_packages.py 2022-07-11 21:59:24 +04:00
Ayaz Salikhov
5eb78a141b Do not import sparklyr, because it requires spark>=3.3 2022-07-05 00:56:27 +04:00
Bjørn Jørgensen
5048b02246 Remove spylon-kernel from all images. (#1729)
* Remove scala

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Remove scala from web

* Remove scala from specifics

* Remove scala and spylon

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-07-04 10:04:16 +04:00
Ayaz Salikhov
84d041b9df Compare major.minor python version to be expected one 2022-05-31 22:40:39 +04:00
Ayaz Salikhov
ee338c370f Update test_python.py 2022-05-28 17:18:36 +04:00
Ayaz Salikhov
806a0c3a29 Fix python version test 2022-05-27 16:52:09 +04:00
Ayaz Salikhov
c6ae418538 Merge branch 'master' into asalikhov/modules 2022-05-01 13:15:45 +03:00
Ben Mares
c9e507c94b Don't exclude Mamba from tests 2022-04-29 23:33:54 +02:00
Ayaz Salikhov
10b1efedb0 Merge branch 'master' into asalikhov/modules 2022-04-28 16:35:14 +01:00
Ayaz Salikhov
0aa95c71ad Make tests a module and make imports absolute 2022-04-01 01:26:37 +01:00
Ayaz Salikhov
c1a892c6dc Remove JUPYTER_ENABLE_LAB variable warning 2022-04-01 00:23:17 +01:00
Ayaz Salikhov
bcf5118cb7 Fix minor PyCharm issues 2022-03-19 00:15:27 +02:00
Ayaz Salikhov
2da008cf5a Merge branch 'master' into asalikhov/pre_commit_isort_reqs 2022-03-16 17:18:38 +02:00
Ayaz Salikhov
812c713a64 Fix PyCharm issues 2022-03-16 16:47:30 +02:00
Ayaz Salikhov
2f201a4b81 Run pre-commit tools: isort, requirements-txt-fixer 2022-03-16 14:48:23 +02:00
Ayaz Salikhov
b487d1afbe Make mypy config strict and work on pre-commit 2022-03-08 23:23:13 +03:00
Ayaz Salikhov
39e36f2d44 Add inline TODO comment 2022-03-06 23:07:13 +00:00
Ayaz Salikhov
ecb03a40e2 Refactor package helper 2022-03-05 19:30:25 +00:00