Skip to content

Tags: Kuberlytics/zero-to-jupyterhub-k8s

Tags

0.3.1

Toggle 0.3.1's commit message
Release v0.3.1

Corresponds to helm chart release v0.3.1

v0.4

Toggle v0.4's commit message
v0.4 - [Akram](#akram) - 2017-06-23

-----------------------------------

Stability, HTTPS & breaking changes.

Installation and upgrades
=========================

We **recommend** that you delete prior versions of the package and install the
latest version. If you are very familiar with Kubernetes, you can upgrade from
an older version, but we still suggest deleting and recreating your
installation.

Breaking changes
================

* The **name of a user pod** and a **dynamically created home directory [PVC (PersistentVolumeClaim)](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims)** no longer include
  the `userid` in them by default. If you are using dynamic PVCs for `home`
  directories (which is the default), you will need to *manually rename* these
  directories before upgrading.
  Otherwise, new PVCs will be created, and users might freak out when viewing the newly created directory and think that their home directory appears empty.

  See [PR jupyterhub#56](jupyterhub/kubespawner#56) on
  what needs to change.

* A **[StorageClass](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#storageclasses)**
  is no longer created by default. This shouldn't affect most new installs,
  since most cloud provider installations have a default (as of Kubernetes 1.6).
  If you are using an older version of Kubernetes, the easiest thing to do is to
  upgrade to a newer version. If not, you can create a StorageClass manually
  and everything should continue to work.

* `token.proxy` is removed. Use **`proxy.secretToken`** instead.
  If your `config.yaml` contains something that looks like the following:

  ```yaml
  token:
      proxy: <some-secret>
  ```

  you should change that to:

  ```yaml
  proxy:
      secretToken: <some-secret>
  ```

Added
=====

* Added **GitHub Authentication support**, thanks to [Jason Kuruzovich](https://github.com/jkuruzovich).
* Added **[Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) support**!
  If your cluster already has Ingress support (with automatic Let's Encrypt support, perhaps),
  you can easily use that now.
* We now add a **label** to user pods / PVCs with their usernames.
* Support using a **static PVC** for user `home` directories or for the hub database. This makes this release usable
  with clusters where you only have one NFS share that must be used for the whole hub.
* **PostgreSQL** is now a supported hub database backend provider.
* You can set annotations & labels on the **proxy-public service** now.

Changed
=======

* We now use the official [configurable http proxy](http://github.com/jupyterhub/configurable-http-proxy)
  (CHP) as the proxy, rather than the unofficial
  [nchp](https://github.com/yuvipanda/jupyterhub-nginx-chp). This should be a
  no-op (or require no changes) for the most part. JupyterHub errors might
  display a nicer error page.
* The version of KubeSpawner uses the official Kubernetes
  [python client](https://github.com/kubernetes-incubator/client-python/) rather
  than [pycurl](http://pycurl.io/). This helps with scalability a little.

Removed
=======

* The deprecated `createNamespace` parameter no longer works, alongside the
  deprecated `name` parameter. You probably weren't using these anyway - they
  were kept only for backwards compatibility with very early versions.

Contributors
============

This release made possible by the awesome work of the following contributors
(in alphabetical order):

* [Analect](https://github.com/analect)
* [Carol Willing](https://github.com/willingc)
* [Jason Kuruzovich](https://github.com/jkuruzovich)
* [Min RK](https://github.com/minrk/)
* [Yuvi Panda](https://github.com/yuvipanda/)

<3

Akram
=====

[Wasim Akram](https://en.wikipedia.org/wiki/Wasim_Akram) (وسیم اکرم) is considered by many to be
the greatest pace bowler of all time and a founder of the fine art of
[reverse swing bowling](https://en.wikipedia.org/wiki/Swing_bowling#Reverse_swing).

v0.3.1

Toggle v0.3.1's commit message
v0.3.1: KubeSpawner updates!

- KubeSpawner has gained several new features, thanks
  to the work of Daniel Rodriguez and ktongsc! Specifically,
  we have support for init containers, node selectors,
  pod lifecycle hooks, etc. These can be used with the
  extraConfig override for now
- Add easy ability to specify pod lifecycle hooks via the
  helm chart!

v0.3

Toggle v0.3's commit message
v0.3: Deployer UX fixes!

- No need to restart hub manually after some changes - it is
  automatically restarted now. You can disable an automatic
  restart of hub after an upgrade with the following:

  1. Finding out the current helm release's revision
  2. Adding '--set revisionOverride=<current-revision>' to your
     upgrade command.

  Only do this if you know exactly what you are doing :)
- Base images for everything upgraded to ubuntu 17.04. We can
  define the support lifecycle for the helm chart in the future,
  and decide on the base images at that point.
- Add a timestamp to the job name for the pre-puller job. This
  prevents having to manually delete it when an install fails and
  has to be tried again. Because the Release Revision hadn't changed
  when the upgrade fails, trying again will cause it to fail with a
  'job already exists' error. Adding the Timestamp to job name should
  hopefully fix that

v0.2

Toggle v0.2's commit message
v0.2

- Get rid of cull pod, move it inside the hub pod as a
  managed service
- Set a default 1G memory guarantee for user pods
- Allow setting a static global password for Dummy Authenticator
- Allow setting extra static environment variables for user pods
  from the helm config
- Upgrade kubespawner version (no major functional changes)

v0.1

Toggle v0.1's commit message
Initial public release!

https://github.com/jupyterhub/zero-to-jupyterhub-k8s has
documentation!