opendatahub-io-contrib / jupyterhub-odh

Example JupyterHub deployment using OpenShift OAuth authenticator.
16 stars 31 forks source link

Update JSP to 0.4.1 #94

Closed vpavlin closed 3 years ago

vpavlin commented 3 years ago

Related Issues and Dependencies

This introduces a breaking change

This Pull Request implements

… Explain your changes.

Description

This PR updates JupyterHub Singleuser Profiles to 0.4.0 - see changelog: https://github.com/opendatahub-io/jupyterhub-singleuser-profiles/pull/143

vpavlin commented 3 years ago

@LaVLaS Hey, here is the updated JH image with the new UI

LaVLaS commented 3 years ago

I noticed two similar errors in the logs when there were imagestreams with no tags or imagestreamtags with tags[].annotations=null

[I 2021-05-18 02:50:14.914 JupyterHub service:121] Spawning jupyterhub-singleuser-profiles-api
02:50:15.517 [ConfigProxy] info: 200 GET /api/routes
Traceback (most recent call last):
  File "/opt/app-root/bin/jupyterhub-singleuser-profiles-api", line 5, in <module>
    from jupyterhub_singleuser_profiles.api.api import main
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/api/api.py", line 19, in <module>
    _PROFILES = SingleuserProfiles(verify_ssl=False)
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/profiles.py", line 38, in __init__
    self.user = User(self.openshift, default_image=self.images.get_default())
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/images.py", line 43, in get_default
    image_list = self.load()
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/images.py", line 76, in load
    software=json.loads(tag.annotations.get(SOFTWARE_ANNOTATION, "[]")),\
AttributeError: 'NoneType' object has no attribute 'get'
[2021-05-18 03:15:58,260] ERROR in app: Exception on /services/jsp-api/api/images [GET]
Traceback (most recent call last):
  File "/opt/app-root/lib/python3.6/site-packages/flask/app.py", line 2051, in wsgi_app
    response = self.full_dispatch_request()
  File "/opt/app-root/lib/python3.6/site-packages/flask/app.py", line 1501, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/opt/app-root/lib/python3.6/site-packages/flask/app.py", line 1499, in full_dispatch_request
    rv = self.dispatch_request()
  File "/opt/app-root/lib/python3.6/site-packages/flask/app.py", line 1485, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
  File "/opt/app-root/lib/python3.6/site-packages/connexion/decorators/decorator.py", line 48, in wrapper
    response = function(request)
  File "/opt/app-root/lib/python3.6/site-packages/connexion/decorators/uri_parsing.py", line 144, in wrapper
    response = function(request)
  File "/opt/app-root/lib/python3.6/site-packages/connexion/decorators/parameter.py", line 121, in wrapper
    return function(**kwargs)
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/api/api.py", line 52, in decorated
    return f(user=user, *args, **kwargs)
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/api/api.py", line 107, in get_images
    images = _PROFILES.images.get()
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/images.py", line 88, in get
    result = self.load()
  File "/opt/app-root/lib/python3.6/site-packages/jupyterhub_singleuser_profiles/images.py", line 76, in load
    software=json.loads(tag.annotations.get(SOFTWARE_ANNOTATION, "[]")),\
AttributeError: 'NoneType' object has no attribute 'get'
vpavlin commented 3 years ago

@LaVLaS I am happy to release a new JSP version - here is the fix: https://github.com/opendatahub-io/jupyterhub-singleuser-profiles/pull/144

LaVLaS commented 3 years ago

The spawner UI works with no issues when using properly annotated imagestreamtags