Commit Graph

87 Commits

Author SHA1 Message Date
Ayaz Salikhov
f8cd90ade1 Add an ability to specify registry when using docker images (#2008)
* Add an ability to specify registry when using docker images

* Fix typo

* [TMP] Speedup workflow

* Revert "[TMP] Speedup workflow"

This reverts commit 3af0055ccf.
2023-10-19 21:15:10 +02:00
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
Bjørn Jørgensen
52a999a554 Upgrade Apache Spark to 3.5.0 (#1995)
* 1.

* add note for pandas version

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

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

* Update images/pyspark-notebook/Dockerfile

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-09-16 20:56:10 +04:00
Ayaz Salikhov
3675f63d08 Test run_hooks when executables fail (#1987) 2023-09-04 19:50:30 +04:00
Ayaz Salikhov
0d8b4e4987 Replace os with pathlib where paths are used (#1984) 2023-08-26 17:41:40 +04:00
Ayaz Salikhov
6aded4bc1d Fix style 2023-08-26 01:39:26 +04:00
Ayaz Salikhov
7a4381ff2f Use only rv['StatusCode'] to simplify code (#1982) 2023-08-25 13:47:36 +04:00
Ayaz Salikhov
74bbd0bffc Implement run-hooks as a separate script (#1979)
* Implement run-hooks as a separate script

* Add more tests

* Add more docs
2023-08-25 01:53:00 +04: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
Ayaz Salikhov
2edc0fe214 Put pluto test in one common file (#1934) 2023-07-05 22:07:43 +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
Yuvi Panda
a489a0f259 Add jupyter/julia-notebook (#1926)
* Add jupyter/julia-notebook

There is a growing number of Julia users in the Jupyter
ecosystem who do not use R, and hence would <3 to have a
dedicated docker image that doesn't bring in all the R
stuff that datascience-notebook brings in! The built image
size is much smaller, and eventually paves the way to
better ecosystem support for Julia.

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

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

* Add a test for julia-notebook

* Tell tests what julia-notebook inherits from

* Sort lists with julia-notebook

* Fix README for julia-notebook

* Add julia-notebook to the makefile

* Move julia-notebook below r-notebook

* Use hard tabs in Makefile

* Do some more sorting

* Rename test_julia to avoid mypy issue

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

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

* Re-order julia/r-notebook

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

* Move julia-notebook stanza under r-notebook

* Update inheritance diagram

---------

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-28 14:41:45 +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
9e3ab9075a Add local_sparklyr test (#1916) 2023-06-06 18:59:35 +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
Bjørn Jørgensen
5bcf21052b Upgrade Python 3.11 (#1844)
* Update Dockerfile

* Update test_python.py

* [TMP] Do not install numba

* test with spark 3.4 rc2

* Update Dockerfile

* install tf with pip in conda

* remove mamba install pip

* Update Dockerfile

---------

Co-authored-by: Ayaz Salikhov <mathbunnyru@gmail.com>
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>
2023-06-01 15:26:51 +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
Darek
0fd68f0e6a Remove inkscape package from the minimal-notebook (#1765)
* Removing inkscape

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

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

* Adding Rprofile to add plot_mimetypes

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

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

* Update datascience-notebook/Dockerfile

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

* Update datascience-notebook/Rprofile.site

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

* Adding R notebook tests

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

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

* Moving Rprofile.site to minimal;
Removing duplicate R test code

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

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

* Fixing flake8 errors

* Update minimal-notebook/Dockerfile

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

* Update minimal-notebook/Rprofile.site

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

* Removing empty line

* Renaming minetypes to  mimetypes

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

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

* Renaming test module to avoid mypy error

* Adding to jupyter.plot_mimetypes

* Update R_mimetype_check.py

* Update test_mimetypes.py

* Update test_R_mimetypes.py

* Update test_R_mimetypes.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>
2022-08-20 10:17:03 +04:00
Ayaz Salikhov
64c4cd717a Do not hardcode owner of the image (#1769)
* Do not hardcode owner of the image

* Fix
2022-08-11 11:51:10 +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
Darek
4449d13ba7 Merge branch 'jupyter:master' into master 2022-07-05 14:04:08 -04:00
Ayaz Salikhov
5eb78a141b Do not import sparklyr, because it requires spark>=3.3 2022-07-05 00:56:27 +04:00
Ayaz Salikhov
61b20aa69e Run pytest as a module 2022-07-04 19:16:06 +04:00
Darek
5d584b2126 Merge branch 'jupyter:master' into master 2022-07-04 06:32:56 -04:00