Skip to content

Commit 6fc3d41

Browse files
authored
Merge pull request #2528 from consideRatio/pr/add-changelog-for-2.0.0
docs: add changelog for 2.0.0 (beta.1)
2 parents 6be5267 + e8cc8a1 commit 6fc3d41

File tree

2 files changed

+242
-8
lines changed

2 files changed

+242
-8
lines changed

docs/source/administrator/upgrading/upgrade-1-to-2.md

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
Z2JH 2 contains several breaking changes, including some that affect the security of your deployment.
44
This guide will help you upgrade from 1.\* to 2.\*.
55

6+
(upgrade-1-2-security-breaking-change)=
7+
68
## Security: breaking change to `*.networkPolicy.egress`
79

810
NetworkPolicy egress rules have been extended with a new property.
@@ -47,23 +49,29 @@ and the configuration reference entries under
4749

4850
## JupyterHub 2 and related hub components
4951

50-
Z2JH 2.0.0 upgrades JupyterHub to the 2.\* series, and also upgrades all hub components.
52+
Z2JH 2.0.0 upgrades from JupyterHub 1 directly to JupyterHub 3, and also upgrades all hub components.
5153
If you are using any custom JupyterHub services, addons, API integrations, or extra configuration, you should review the breaking changes in the
52-
[JupyterHub 2.0.0 changelog](https://github.com/jupyterhub/jupyterhub/blob/2.3.1/docs/source/changelog.md#200).
54+
major releases of JupyterHub 2 and 3 in the [JupyterHub changelog](https://jupyterhub.readthedocs.io/en/latest/changelog.html).
5355

54-
JupyterHub 2 uses an updated database schema.
55-
Z2JH 2.0.0 automatically handles the upgrade for SQLite databases (the default), but if you use an external database you need to configure [`hub.db.upgrade`](schema_hub.db.upgrade) to true when upgrading. It will not be possible to downgrade to older releases after this without also using a backup or resetting the database.
56+
JupyterHub 2 and 3 updates the database schema, which means a migration takes place when you upgrade JupyterHub.
57+
Z2JH automatically handles the upgrade if you are using sqlite (`hub.db.type = 'sqlite-pvc'`, the default), but it may not be possible to downgrade to older releases after this.
58+
When using sqlite, JupyterHub automatically creates a backup in the `hub-db` volume,
59+
which can be restored manually if you need to downgrade.
60+
If you use an external database you need to configure [`hub.db.upgrade`](schema_hub.db.upgrade) to `true` when upgrading.
5661

5762
JupyterHub 2 adds RBAC for managing permissions in JupyterHub.
58-
The old permissions model of admin/non-admin still works but you should use
59-
[RBAC to assign the required privileges to users or services in future](https://jupyterhub.readthedocs.io/en/stable/rbac/index.html)
63+
The old permissions model of admin/non-admin still works, but we recommend using [RBAC to assign only the required privileges to users or services in future](https://jupyterhub.readthedocs.io/en/stable/rbac/index.html).
64+
Default permissions are mostly unchanged, but a few have:
65+
66+
- Servers' own API tokens have limited permissions by default, which can be expanded by defining the `server` role. The previous behavior was the maximum permission of `inherit`.
67+
- `admin_access` as a concept is removed, so disabling it has no effect. In 2.0, admins by definition can do everything, including access servers. To limit user permissions, assign them to roles which have only the needed permissions.
6068

6169
KubeSpawner has replaced the [`kubernetes`] library with [`kubernetes_asyncio`](https://github.com/tomplus/kubernetes_asyncio).
6270
If you have extended the JupyterHub image and you rely on the kubernetes library you will need to modify your extensions.
6371

6472
See
65-
`TODO: link to Notable dependencies updated`
66-
in the changelog for more information on other upgraded hub components.
73+
[Notable dependencies updated](notable-dependencies-200)
74+
for more information on other upgraded hub components.
6775

6876
## JupyterLab and Jupyter Server
6977

@@ -81,6 +89,16 @@ singleuser:
8189
allowPrivilegeEscalation: true
8290
```
8391

92+
If you want to add custom arguments to the command, you must specify the full command and any arguments in `singleuser.cmd`, for example:
93+
94+
```yaml
95+
singleuser:
96+
cmd:
97+
- jupyterhub-singleuser
98+
- "--collaborative"
99+
- "--debug"
100+
```
101+
84102
## Configuration in `jupyterhub_config.d` has a higher priority than `hub.config` [#2457](https://github.com/jupyterhub/zero-to-jupyterhub-k8s/pull/2457)
85103

86104
Previously if `hub.config` was used to configure some JupyterHub traitlets it would override any custom configuration files mounted into `jupyterhub_config.d` in the hub container.

0 commit comments

Comments
 (0)