6
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-11-13 08:46:34 +00:00

fix!: use correct case for authsource mongo

Update `authSource`  keyword argument to  `authsource`

Authsource was configurated in camelcase.
https://github.com/overhangio/tutor/blob/master/tutor/templates/apps/openedx/settings/partials/common_all.py#L16
Something I think is ok because pymongo uses it in camelcase.
https://pymongo.readthedocs.io/en/3.10.1/api/pymongo/mongo_client.html

However, the error was presented because edx-platform use another variable when credentials are provided **(LOWERCASE)**.
https://github.com/openedx/edx-platform/blob/master/xmodule/mongo_utils.py#L72

Looking more ,  the `auth_source `is configured with another key name:  `authsource` **(LOWERCASE)** from the kwargs.
https://github.com/openedx/edx-platform/blob/master/xmodule/mongo_utils.py#L34

This won't change the **kwargs behavior of the camelCase in pymongo `MongoClient` because pymongo has a caseInsentive method.
https://github.com/mongodb/mongo-python-driver/blob/3.12.3/pymongo/mongo_client.py#L651
 ``it's  OK to pass `authsource` instead of authSource as a keyword argument.``
This commit is contained in:
Johan Castiblanco 2023-05-24 18:46:07 -05:00 committed by Régis Behmo
parent 93688e18a1
commit 4bb8671f26
2 changed files with 2 additions and 1 deletions

View File

@ -0,0 +1 @@
- [Bugfix] Change `authSource` to `authsource`(LOWERCASE) in mongo db parameters. This allow to authenticate with credentials in openedx code.(by @johanv26)

View File

@ -13,7 +13,7 @@ mongodb_parameters = {
"password": {% if MONGODB_PASSWORD %}"{{ MONGODB_PASSWORD }}"{% else %}None{% endif %},
# Connection/Authentication
"ssl": {{ MONGODB_USE_SSL }},
"authSource": "{{ MONGODB_AUTH_SOURCE }}",
"authsource": "{{ MONGODB_AUTH_SOURCE }}",
"replicaSet": {% if MONGODB_REPLICA_SET %}"{{ MONGODB_REPLICA_SET }}"{% else %}None{% endif %},
{% if MONGODB_AUTH_MECHANISM %}"authMechanism": "{{ MONGODB_AUTH_MECHANISM }}",{% endif %}
}