Sure,
the tljh-config file looks like:
and the logs show this:
Dec 15 18:18:45 JupyterHub python3[2671]: File “/usr/lib/python3.6/importlib/init.py”, line 126, in import_module
Dec 15 18:18:45 JupyterHub python3[2671]: return _bootstrap._gcd_import(name[level:], package, level)
Dec 15 18:18:45 JupyterHub python3[2671]: File “”, line 994, in _gcd_import
Dec 15 18:18:45 JupyterHub python3[2671]: File “”, line 971, in _find_and_load
Dec 15 18:18:45 JupyterHub python3[2671]: File “”, line 955, in _find_and_load_unlocked
Dec 15 18:18:45 JupyterHub python3[2671]: File “”, line 665, in _load_unlocked
Dec 15 18:18:45 JupyterHub python3[2671]: File “”, line 678, in exec_module
Dec 15 18:18:45 JupyterHub python3[2671]: File “”, line 219, in _call_with_frames_removed
Dec 15 18:18:45 JupyterHub python3[2671]: File “/opt/tljh/hub/lib/python3.6/site-packages/oauthenticator/azuread.py”, line
Dec 15 18:18:45 JupyterHub python3[2671]: import jwt
Dec 15 18:18:45 JupyterHub python3[2671]: ModuleNotFoundError: No module named ‘jwt’
Dec 15 18:18:45 JupyterHub python3[2671]:
Dec 15 18:18:45 JupyterHub systemd[1]: jupyterhub.service: Main process exited, code=exited, status=1/FAILURE
Dec 15 18:18:45 JupyterHub systemd[1]: jupyterhub.service: Failed with result ‘exit-code’.
Dec 15 18:18:46 JupyterHub systemd[1]: jupyterhub.service: Service hold-off time over, scheduling restart.
Dec 15 18:18:46 JupyterHub systemd[1]: jupyterhub.service: Scheduled restart job, restart counter is at 4.
Dec 15 18:18:46 JupyterHub systemd[1]: Stopped jupyterhub.service.
Dec 15 18:18:46 JupyterHub systemd[1]: Started jupyterhub.service.
Dec 15 18:18:47 JupyterHub python3[2720]: /opt/tljh/hub/lib/python3.6/site-packages/jupyterhub/crypto.py:17: CryptographyDepreca
Dec 15 18:18:47 JupyterHub python3[2720]: import cryptography
Dec 15 18:18:47 JupyterHub python3[2720]: [E 2023-12-15 18:18:47.037 JupyterHub app:2991]
Dec 15 18:18:47 JupyterHub python3[2720]: Traceback (most recent call last):
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/jupyterhub/app.py”, line 2988, i
Dec 15 18:18:47 JupyterHub python3[2720]: await self.initialize(argv)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/jupyterhub/app.py”, line 2478, i
Dec 15 18:18:47 JupyterHub python3[2720]: self.load_config_file(self.config_file)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/decorator.py”, line 232, in fun
Dec 15 18:18:47 JupyterHub python3[2720]: return caller(func, *(extras + args), **kw)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/traitlets/config/application.py”
Dec 15 18:18:47 JupyterHub python3[2720]: return method(app, *args, **kwargs)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/traitlets/config/application.py”
Dec 15 18:18:47 JupyterHub python3[2720]: self.update_config(new_config)
Dec 15 18:18:47 JupyterHub python3[2720]: File "/opt/tljh/hub/lib/python3.6/site-packages/traitlets/config/configurable.py
Dec 15 18:18:47 JupyterHub python3[2720]: self._load_config(config)
Dec 15 18:18:47 JupyterHub python3[2720]: File "/opt/tljh/hub/lib/python3.6/site-packages/traitlets/config/configurable.py
Dec 15 18:18:47 JupyterHub python3[2720]: setattr(self, name, deepcopy(config_value))
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/traitlets/traitlets.py”, line 58
Dec 15 18:18:47 JupyterHub python3[2720]: self.set(obj, value)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/traitlets/traitlets.py”, line 55
Dec 15 18:18:47 JupyterHub python3[2720]: new_value = self._validate(obj, value)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/traitlets/traitlets.py”, line 59
Dec 15 18:18:47 JupyterHub python3[2720]: value = self.validate(obj, value)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/jupyterhub/traitlets.py”, line 1
Dec 15 18:18:47 JupyterHub python3[2720]: value = registry[key].load()
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/entrypoints.py”, line 79, in loa
Dec 15 18:18:47 JupyterHub python3[2720]: mod = import_module(self.module_name)
Dec 15 18:18:47 JupyterHub python3[2720]: File “/usr/lib/python3.6/importlib/init.py”, line 126, in import_module
Dec 15 18:18:47 JupyterHub python3[2720]: return _bootstrap._gcd_import(name[level:], package, level)
Dec 15 18:18:47 JupyterHub python3[2720]: File “”, line 994, in _gcd_import
Dec 15 18:18:47 JupyterHub python3[2720]: File “”, line 971, in _find_and_load
Dec 15 18:18:47 JupyterHub python3[2720]: File “”, line 955, in _find_and_load_unlocked
Dec 15 18:18:47 JupyterHub python3[2720]: File “”, line 665, in _load_unlocked
Dec 15 18:18:47 JupyterHub python3[2720]: File “”, line 678, in exec_module
Dec 15 18:18:47 JupyterHub python3[2720]: File “”, line 219, in _call_with_frames_removed
Dec 15 18:18:47 JupyterHub python3[2720]: File “/opt/tljh/hub/lib/python3.6/site-packages/oauthenticator/azuread.py”, line
Dec 15 18:18:47 JupyterHub python3[2720]: import jwt
Dec 15 18:18:47 JupyterHub python3[2720]: ModuleNotFoundError: No module named ‘jwt’
Dec 15 18:18:47 JupyterHub python3[2720]:
Dec 15 18:18:47 JupyterHub systemd[1]: jupyterhub.service: Main process exited, code=exited, status=1/FAILURE
Dec 15 18:18:47 JupyterHub systemd[1]: jupyterhub.service: Failed with result ‘exit-code’.
Dec 15 18:18:47 JupyterHub systemd[1]: jupyterhub.service: Service hold-off time over, scheduling restart.
Dec 15 18:18:47 JupyterHub systemd[1]: jupyterhub.service: Scheduled restart job, restart counter is at 5.
Dec 15 18:18:47 JupyterHub systemd[1]: Stopped jupyterhub.service.
Dec 15 18:18:47 JupyterHub systemd[1]: jupyterhub.service: Start request repeated too quickly.
Dec 15 18:18:47 JupyterHub systemd[1]: jupyterhub.service: Failed with result ‘exit-code’.
Dec 15 18:18:47 JupyterHub systemd[1]: Failed to start jupyterhub.service.