Using profile_options with choice in kubespawner

Following the doc: KubeSpawner — Kubespawner
but keep getting error with hub not able to find ‘choices’…

      File "/usr/local/lib/python3.9/site-packages/tornado/web.py", line 1713, in _execute
        result = await result
      File "/usr/local/lib/python3.9/site-packages/jupyterhub/handlers/pages.py", line 203, in _get
        spawner_options_form = await spawner.get_options_form()
      File "/usr/local/lib/python3.9/site-packages/jupyterhub/spawner.py", line 524, in get_options_form
        if callable(self.options_form):
      File "/usr/local/lib/python3.9/site-packages/traitlets/traitlets.py", line 686, in __get__
        return self.get(obj, cls)
      File "/usr/local/lib/python3.9/site-packages/traitlets/traitlets.py", line 648, in get
        default = obj.trait_defaults(self.name)
      File "/usr/local/lib/python3.9/site-packages/traitlets/traitlets.py", line 1752, in trait_defaults
        return self._get_trait_default_generator(names[0])(self)
      File "/usr/local/lib/python3.9/site-packages/traitlets/traitlets.py", line 1132, in __call__
        return self.func(*args, **kwargs)
      File "/usr/local/lib/python3.9/site-packages/kubespawner/spawner.py", line 2906, in _options_form_default
        return self._render_options_form(self.profile_list)
      File "/usr/local/lib/python3.9/site-packages/kubespawner/spawner.py", line 2885, in _render_options_form
        return profile_form_template.render(profile_list=self._profile_list)
      File "/usr/local/lib/python3.9/site-packages/jinja2/environment.py", line 1301, in render
        self.environment.handle_exception()
      File "/usr/local/lib/python3.9/site-packages/jinja2/environment.py", line 936, in handle_exception
        raise rewrite_traceback_stack(source=source)
      File "<template>", line 54, in top-level template code
      File "/usr/local/lib/python3.9/site-packages/jinja2/environment.py", line 485, in getattr
        return getattr(obj, attribute)
    jinja2.exceptions.UndefinedError: 'dict object' has no attribute 'choices'

It was issue with tabs, worked out later

1 Like