jupyter-server / enterprise_gateway

A lightweight, multi-tenant, scalable and secure gateway that enables Jupyter Notebooks to share resources across distributed clusters such as Apache Spark, Kubernetes and others.
https://jupyter-enterprise-gateway.readthedocs.io/en/latest/
Other
617 stars 222 forks source link

Collect docker logs, cap jupyter_server < 1.19 #1163

Closed kevin-bates closed 1 year ago

kevin-bates commented 1 year ago

The CI tests have started failing the last few days[*][**] with no related changes (so probably a dependency issue). The problem is that I can't reproduce the failures, even with similar package versions, etc. I noticed that the docker log collection will not occur if the integration tests (which rely on docker) don't succeed. This change will perform that step regardless of the previous step's outcome.

Note, however, that should the unit tests fail (make test), the integration tests are not run and, as a result, the log collection step will fail since there's no docker instance from which to collect logs. We could go ahead and also run the integration tests unconditionally, but I felt that was getting us further away from a "fail fast" model, so choose to live with the log collection failures in this case.

[*]: This pull request also caps pyzmq < 24.0.0. This version was produced a few days ago and it appears to side affect the tests so we'll need to look into it. There was a 24.0.1 version immediately after the release, but that is causing the failure (or at least has some influence). [**]: It turns out the pyzmq pin was a red-herring and the real culprit is the jupyter_server 1.19 release where the type of Future being used was changed. As a result, the pyzmq cap has been removed and a cap for jupyter_server<1.19 has been added for now.

kevin-bates commented 1 year ago

I'm going ahead with this PR's merge since it enables successful builds.