While reading the ecommerce documentation, I discovered that the oauth2 client needed to be changed in order to use admin/oauth2_provider/application/ instead of admin/oauth2/client/
After following the instructions on https://edx-ecommerce.readthedocs.io/en/latest/install_ecommerce.html#configure-oauth and https://edx-ecommerce.readthedocs.io/en/latest/install_ecommerce.html#configure-a-site-partner-and-site-configuration I am able to launch the ecommerce version under Python 3.
Unfortunately, I am redirected to the oauth2 provider but after authenticating I end up with the following error messages:
Dec 5 11:58:16 ip-10-0-0-71 [service_variant=lms][root][env:sandbox] ERROR [ip-10-0-0-71 25718] [signals.py:21] - Uncaught exception from None
Traceback (most recent call last):
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/exception.py”, line 41, in inner
response = get_response(request)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”, line 249, in _legacy_get_response
response = self._get_response(request)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”, line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”, line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/utils/decorators.py”, line 185, in inner
return func(*args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/decorators/csrf.py”, line 58, in wrapped_view
return view_func(*args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/generic/base.py”, line 68, in view
return self.dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/edx-platform/openedx/core/djangoapps/oauth_dispatch/views.py”, line 55, in dispatch
return view(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/generic/base.py”, line 68, in view
return self.dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/oauth2_provider/views/base.py”, line 37, in dispatch
return super(BaseAuthorizationView, self).dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/contrib/auth/mixins.py”, line 56, in dispatch
return super(LoginRequiredMixin, self).dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/generic/base.py”, line 88, in dispatch
return handler(request, *args, **kwargs)
File “/edx/app/edxapp/edx-platform/openedx/core/djangoapps/oauth_dispatch/dot_overrides/views.py”, line 97, in get
return self.error_response(error)
TypeError: error_response() takes exactly 3 arguments (2 given)
Dec 5 11:58:16 ip-10-0-0-71 [service_variant=lms][django.request][env:sandbox] ERROR [ip-10-0-0-71 25718] [exception.py:135] - Internal Server Error: /oauth2/authorize
Traceback (most recent call last):
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/exception.py”, line 41, in inner
response = get_response(request)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”, line 249, in _legacy_get_response
response = self._get_response(request)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”, line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”, line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/utils/decorators.py”, line 185, in inner
return func(*args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/decorators/csrf.py”, line 58, in wrapped_view
return view_func(*args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/generic/base.py”, line 68, in view
return self.dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/edx-platform/openedx/core/djangoapps/oauth_dispatch/views.py”, line 55, in dispatch
return view(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/generic/base.py”, line 68, in view
return self.dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/oauth2_provider/views/base.py”, line 37, in dispatch
return super(BaseAuthorizationView, self).dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/contrib/auth/mixins.py”, line 56, in dispatch
return super(LoginRequiredMixin, self).dispatch(request, *args, **kwargs)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/views/generic/base.py”, line 88, in dispatch
return handler(request, *args, **kwargs)
File “/edx/app/edxapp/edx-platform/openedx/core/djangoapps/oauth_dispatch/dot_overrides/views.py”, line 97, in get
return self.error_response(error)
TypeError: error_response() takes exactly 3 arguments (2 given)
I am seriously wondering if there are incompatibilities between the version of oauth and django oauth toolkit used in Ironwood and expected from the Python 3 version of ecommerce. Anyone knows?
I am now tempted to wait until the first release of the Juniper Python 3 beta before trying any further. Unless someone has a solution to my problem?
Have a nice day.