jupyterhub / the-littlest-jupyterhub

Simple JupyterHub distribution for 1-100 users on a single server
https://tljh.jupyter.org
BSD 3-Clause "New" or "Revised" License
1.04k stars 339 forks source link

Traefik v2, TraefikProxy v1 #861

Closed minrk closed 1 year ago

minrk commented 1 year ago

Updates:

traefik v2 totally changed their config file format, so several config options needed to move around, but ultimately the behavior is unchanged. jupyterhub-traefik-proxy 1.0 is required to use traefik v2 due to the config and API changes. Some configuration is no longer required as jupyterhub-traefik-proxy writes initial dynamic config (api route, auth) during its startup, instead of requiring to duplicate that info to the traefik config file.

This is a breaking change for the rare cases where users configured traefik or TraefikProxy directly, since both are major changes, but for most users the change should not be noticed (🤞) except as a performance boost when there are many users.

closes #513

consideRatio commented 1 year ago

Wieee tests are passing, ping me for review when its ready for review @minrk!

minrk commented 1 year ago

Tests are passing and I did a test deployment to verify that the letsencrypt config works. Good to go from me!

consideRatio commented 1 year ago

@minrk can you update title, PR description, and labels?

If there is breaking changes, can you clarify them in the PR description in a dedicated section as well?

My rough understanding is that we are updating the traefik-proxy, and setting it up to work against traefik v2 instead of v1.7.33. As part of this, we update misc config of traefik-proxy as well that ships with the TLJH distribution.

minrk commented 1 year ago

It's possible the 0.2.0 upgrade test failed because of https://github.com/jupyterhub/the-littlest-jupyterhub/pull/895. I don't understand the error message well enough to be sure, but I ran a test deployment and can confirm that without the PATH change upgrading from 0.2.0 to jupyterhub 4 does not work, so I don't really understand why the test are passing most of the time. It could be that the initial 0.2.0 setup doesn't let old jupyterhub get fully set up enough.

minrk commented 1 year ago

All green!

The intermittent failure in the integration test seems to be increasing in frequency. I still don't really understand the cause.

minrk commented 1 year ago

Yes, thanks! I still don't have good intuition for chomping.

consideRatio commented 1 year ago

:heart: :tada: wieeeeeeeeeeeeeeeee!!!!

Thank you @minrk for your efforts into this!!!!