mirror of
https://github.com/ChristianLight/tutor.git
synced 2024-12-12 14:17:46 +00:00
Make it easier to override mongodb connection parameters
Pymongo clients can connect to Mongodb with many parameters (https://pymongo.readthedocs.io/en/stable/api/pymongo/mongo_client.html#pymongo.mongo_client.MongoClient) but we don't want to create a new Tutor setting for every one of them. This makes it easy for users to override Mongodb connection parameters, simply by modifying the `mongodb_parameters` object. In particular, this makes it easy to add "replicaSet" connection parameters. See https://github.com/overhangio/tutor/pull/372
This commit is contained in:
parent
e17eede179
commit
f32eb08940
@ -4,6 +4,7 @@ Note: Breaking changes between versions are indicated by "💥".
|
||||
|
||||
## Unreleased
|
||||
|
||||
- [Improvement] Make it easier to override Mongodb connection parameters
|
||||
- [Bugfix] Add support for .woff and .woff2 font files in themes (thanks @mrtndwrd!)
|
||||
|
||||
## v10.3.0 (2020-10-13)
|
||||
|
@ -1,35 +1,13 @@
|
||||
"SECRET_KEY": "{{ OPENEDX_SECRET_KEY }}",
|
||||
"AWS_ACCESS_KEY_ID": "{{ OPENEDX_AWS_ACCESS_KEY }}",
|
||||
"AWS_SECRET_ACCESS_KEY": "{{ OPENEDX_AWS_SECRET_ACCESS_KEY }}",
|
||||
"CONTENTSTORE": null,
|
||||
"DOC_STORE_CONFIG": null,
|
||||
{{ patch("openedx-auth", separator=",\n", suffix=",")|indent(2) }}
|
||||
"XQUEUE_INTERFACE": {
|
||||
"django_auth": null,
|
||||
"url": null
|
||||
},
|
||||
"CONTENTSTORE": {
|
||||
"ENGINE": "xmodule.contentstore.mongo.MongoContentStore",
|
||||
"DOC_STORE_CONFIG": {
|
||||
"host": "{{ MONGODB_HOST }}",
|
||||
"port": {{ MONGODB_PORT }},
|
||||
{% if MONGODB_USERNAME and MONGODB_PASSWORD %}
|
||||
"user": "{{ MONGODB_USERNAME }}",
|
||||
"password": "{{ MONGODB_PASSWORD }}",
|
||||
{% endif %}
|
||||
"db": "{{ MONGODB_DATABASE }}"
|
||||
}
|
||||
},
|
||||
"DOC_STORE_CONFIG": {
|
||||
"host": "{{ MONGODB_HOST }}",
|
||||
"port": {{ MONGODB_PORT }},
|
||||
{% if MONGODB_USERNAME and MONGODB_PASSWORD %}
|
||||
"user": "{{ MONGODB_USERNAME }}",
|
||||
"password": "{{ MONGODB_PASSWORD }}",
|
||||
{% else %}
|
||||
"user": null,
|
||||
"password": null,
|
||||
{% endif %}
|
||||
"db": "{{ MONGODB_DATABASE }}"
|
||||
},
|
||||
"DATABASES": {
|
||||
"default": {
|
||||
"ENGINE": "django.db.backends.mysql",
|
||||
|
@ -2,6 +2,32 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
# Mongodb connection parameters: simply modify `mongodb_parameters` to affect all connections to MongoDb.
|
||||
mongodb_parameters = {
|
||||
"host": "{{ MONGODB_HOST }}",
|
||||
"port": {{ MONGODB_PORT }},
|
||||
{% if MONGODB_USERNAME and MONGODB_PASSWORD %}
|
||||
"user": "{{ MONGODB_USERNAME }}",
|
||||
"password": "{{ MONGODB_PASSWORD }}",
|
||||
{% else %}
|
||||
"user": None,
|
||||
"password": None,
|
||||
{% endif %}
|
||||
"db": "{{ MONGODB_DATABASE }}",
|
||||
}
|
||||
DOC_STORE_CONFIG = mongodb_parameters
|
||||
CONTENTSTORE = {
|
||||
"ENGINE": "xmodule.contentstore.mongo.MongoContentStore",
|
||||
"ADDITIONAL_OPTIONS": {},
|
||||
"DOC_STORE_CONFIG": DOC_STORE_CONFIG
|
||||
}
|
||||
# Load module store settings from config files
|
||||
update_module_store_settings(MODULESTORE, doc_store_settings=DOC_STORE_CONFIG)
|
||||
DATA_DIR = "/openedx/data/"
|
||||
for store in MODULESTORE["default"]["OPTIONS"]["stores"]:
|
||||
store["OPTIONS"]["fs_root"] = DATA_DIR
|
||||
|
||||
|
||||
DEFAULT_FROM_EMAIL = ENV_TOKENS.get("DEFAULT_FROM_EMAIL", ENV_TOKENS["CONTACT_EMAIL"])
|
||||
DEFAULT_FEEDBACK_EMAIL = ENV_TOKENS.get("DEFAULT_FEEDBACK_EMAIL", ENV_TOKENS["CONTACT_EMAIL"])
|
||||
SERVER_EMAIL = ENV_TOKENS.get("SERVER_EMAIL", ENV_TOKENS["CONTACT_EMAIL"])
|
||||
@ -15,12 +41,6 @@ BULK_EMAIL_DEFAULT_FROM_EMAIL = ENV_TOKENS.get("BULK_EMAIL_DEFAULT_FROM_EMAIL",
|
||||
API_ACCESS_MANAGER_EMAIL = ENV_TOKENS.get("API_ACCESS_MANAGER_EMAIL", ENV_TOKENS["CONTACT_EMAIL"])
|
||||
API_ACCESS_FROM_EMAIL = ENV_TOKENS.get("API_ACCESS_FROM_EMAIL", ENV_TOKENS["CONTACT_EMAIL"])
|
||||
|
||||
# Load module store settings from config files
|
||||
update_module_store_settings(MODULESTORE, doc_store_settings=DOC_STORE_CONFIG)
|
||||
DATA_DIR = "/openedx/data/"
|
||||
for store in MODULESTORE["default"]["OPTIONS"]["stores"]:
|
||||
store["OPTIONS"]["fs_root"] = DATA_DIR
|
||||
|
||||
# Get rid completely of coursewarehistoryextended, as we do not use the CSMH database
|
||||
INSTALLED_APPS.remove("coursewarehistoryextended")
|
||||
DATABASE_ROUTERS.remove(
|
||||
|
Loading…
Reference in New Issue
Block a user