Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jupyter: Restore terminal and allow recursive folder deletion #280

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 1.22.8
current_version = 1.22.9
commit = True
tag = False
tag_name = {new_version}
Expand Down Expand Up @@ -30,11 +30,11 @@ search = {current_version}
replace = {new_version}

[bumpversion:file:RELEASE.txt]
search = {current_version} 2023-01-24T02:14:38Z
search = {current_version} 2023-01-25T22:58:52Z
replace = {new_version} {utcnow:%Y-%m-%dT%H:%M:%SZ}

[bumpversion:part:releaseTime]
values = 2023-01-24T02:14:38Z
values = 2023-01-25T22:58:52Z

[bumpversion:file(version):birdhouse/config/canarie-api/docker_configuration.py.template]
search = 'version': '{current_version}'
Expand Down
18 changes: 18 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,24 @@

[//]: # (list changes here, using '-' for each new entry, remove this when items are added)

[1.22.9](https://github.com/bird-house/birdhouse-deploy/tree/1.22.9) (2023-01-25)
------------------------------------------------------------------------------------------------------------------

## Changes:
- Jupyter: allow recursive directory deletion

This was not possible before since non-empty dir deletion was not possible.

- Jupyter: re-enable terminal for all users

It was disabled to avoid malicious usage but with the monitoring in
place and the demo account restricted to limited resources, it's
probably safe to try enabling this again.

For legitimate users, not having the terminal is pretty annoying.
Should not penalize legit users for some rogue users.


[1.22.8](https://github.com/bird-house/birdhouse-deploy/tree/1.22.8) (2023-01-24)
------------------------------------------------------------------------------------------------------------------

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Generic variables
override SHELL := bash
override APP_NAME := birdhouse-deploy
override APP_VERSION := 1.22.8
override APP_VERSION := 1.22.9

# utility to remove comments after value of an option variable
override clean_opt = $(shell echo "$(1)" | $(_SED) -r -e "s/[ '$'\t'']+$$//g")
Expand Down
8 changes: 4 additions & 4 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ for a full-fledged production platform.
* - releases
- | |latest-version| |commits-since|

.. |commits-since| image:: https://img.shields.io/github/commits-since/bird-house/birdhouse-deploy/1.22.8.svg
.. |commits-since| image:: https://img.shields.io/github/commits-since/bird-house/birdhouse-deploy/1.22.9.svg
:alt: Commits since latest release
:target: https://github.com/bird-house/birdhouse-deploy/compare/1.22.8...master
:target: https://github.com/bird-house/birdhouse-deploy/compare/1.22.9...master

.. |latest-version| image:: https://img.shields.io/badge/tag-1.22.8-blue.svg?style=flat
.. |latest-version| image:: https://img.shields.io/badge/tag-1.22.9-blue.svg?style=flat
:alt: Latest Tag
:target: https://github.com/bird-house/birdhouse-deploy/tree/1.22.8
:target: https://github.com/bird-house/birdhouse-deploy/tree/1.22.9

.. |readthedocs| image:: https://readthedocs.org/projects/birdhouse-deploy/badge/?version=latest
:alt: ReadTheDocs Build Status (latest version)
Expand Down
2 changes: 1 addition & 1 deletion RELEASE.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.22.8 2023-01-24T02:14:38Z
1.22.9 2023-01-25T22:58:52Z
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ SERVICES = {
'info': {
'name': 'Node',
'synopsis': 'Nodes are data, compute and index endpoints accessed through the PAVICS platform or external clients. The Node service is the backend that allows: data storage, harvesting, indexation and discovery of local and federated data; authentication and authorization; server registration and management. Node service is therefore composed of several other services.',
'version': '1.22.8',
'releaseTime': '2023-01-24T02:14:38Z',
'version': '1.22.9',
'releaseTime': '2023-01-25T22:58:52Z',
'institution': 'Ouranos',
'researchSubject': 'Climatology',
'supportEmail': '${SUPPORT_EMAIL}',
Expand Down Expand Up @@ -242,8 +242,8 @@ PLATFORMS = {
'info': {
'name': 'PAVICS',
'synopsis': 'The PAVICS (Power Analytics for Visualization of Climate Science) platform is a collection of climate analysis services served through Open Geospatial Consortium (OGC) protocols. These services include data access, processing and visualization. Both data and algorithms can be accessed either programmatically, through OGC-compliant clients such as QGIS or ArcGIS, or a custom web interface.',
'version': '1.22.8',
'releaseTime': '2023-01-24T02:14:38Z',
'version': '1.22.9',
'releaseTime': '2023-01-25T22:58:52Z',
'institution': 'Ouranos',
'researchSubject': 'Climatology',
'supportEmail': '${SUPPORT_EMAIL}',
Expand Down
6 changes: 5 additions & 1 deletion birdhouse/config/jupyterhub/jupyterhub_config.py.template
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,11 @@ c.Spawner.http_timeout = 60 # default 30
c.Spawner.start_timeout = 120 # default 60

## Extra arguments to be passed to the single-user server.
c.Spawner.args = ["--NotebookApp.terminals_enabled=False"]
c.Spawner.args = [
# Allow non-empty directory deletion which enable recursive dir deletion.
# https://jupyter-server.readthedocs.io/en/latest/other/full-config.html
"--FileContentsManager.always_delete_dir=True",
]

c.DockerSpawner.extra_host_config = {
# start init pid 1 process to reap defunct processes
Expand Down
3 changes: 1 addition & 2 deletions birdhouse/env.local.example
Original file line number Diff line number Diff line change
Expand Up @@ -285,8 +285,7 @@ export GEOSERVER_ADMIN_PASSWORD=geoserverpass
# For example, a user named "bob" will have his data in $JUPYTERHUB_USER_DATA_DIR/bob
# and this folder will be mounted when he logs into JupyterHub.
# (note: if using 'DATA_PERSIST_ROOT', it must be defined earlier, either in this file or from 'default.env')
# Must use single-quote for delayed eval.
#export JUPYTERHUB_USER_DATA_DIR='$DATA_PERSIST_ROOT/jupyterhub_user_data'
#export JUPYTERHUB_USER_DATA_DIR="$DATA_PERSIST_ROOT/jupyterhub_user_data"

# Path to the file containing the clientID for the google drive extension for jupyterlab
# This file will be mounted into JupyterLab instances.
Expand Down
4 changes: 2 additions & 2 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,9 @@
# built documents.
#
# The short X.Y version.
version = '1.22.8'
version = '1.22.9'
# The full version, including alpha/beta/rc tags.
release = '1.22.8'
release = '1.22.9'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down