mirror of
https://github.com/ChristianLight/tutor.git
synced 2024-12-12 14:17:46 +00:00
Dynamic openedx settings configuration
`tutor.production` should not be hardcoded in the init scripts. Instead, we load the `$SERVICE_VARIANT.envs.$SETTINGS` settings. This was inspired by a conversation on slack: https://openedx.slack.com/archives/CGE253B7V/p1573561290003700?thread_ts=1573478499.002800&cid=CGE253B7V Thanks @cacciaresi!
This commit is contained in:
parent
b1d0039d66
commit
1f08006e90
@ -59,18 +59,28 @@ def initialise(runner):
|
|||||||
|
|
||||||
|
|
||||||
def create_user_command(superuser, staff, username, email, password=None):
|
def create_user_command(superuser, staff, username, email, password=None):
|
||||||
|
command = """
|
||||||
|
export DJANGO_SETTINGS_MODULE=$SERVICE_VARIANT.envs.$SETTINGS
|
||||||
|
echo "Loading settings $DJANGO_SETTINGS_MODULE"
|
||||||
|
"""
|
||||||
|
|
||||||
opts = ""
|
opts = ""
|
||||||
if superuser:
|
if superuser:
|
||||||
opts += " --superuser"
|
opts += " --superuser"
|
||||||
if staff:
|
if staff:
|
||||||
opts += " --staff"
|
opts += " --staff"
|
||||||
command = "./manage.py lms --settings=tutor.production manage_user {opts} {username} {email}\n"
|
command += """
|
||||||
|
./manage.py lms manage_user {opts} {username} {email}
|
||||||
|
"""
|
||||||
if password:
|
if password:
|
||||||
command += "./manage.py lms --settings=tutor.production shell -c \"from django.contrib.auth import get_user_model; u = get_user_model().objects.get(username='{username}'); u.set_password('{password}'); u.save()\""
|
command += """
|
||||||
|
./manage.py lms shell -c "from django.contrib.auth import get_user_model; u = get_user_model().objects.get(username='{username}'); u.set_password('{password}'); u.save()"
|
||||||
|
"""
|
||||||
else:
|
else:
|
||||||
command += (
|
command += """
|
||||||
"./manage.py lms --settings=tutor.production changepassword {username}"
|
./manage.py lms changepassword {username}
|
||||||
)
|
"""
|
||||||
|
|
||||||
return command.format(opts=opts, username=username, email=email, password=password)
|
return command.format(opts=opts, username=username, email=email, password=password)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,2 +1,5 @@
|
|||||||
|
export DJANGO_SETTINGS_MODULE=$SERVICE_VARIANT.envs.$SETTINGS
|
||||||
|
echo "Loading settings $DJANGO_SETTINGS_MODULE"
|
||||||
|
|
||||||
git clone https://github.com/edx/edx-demo-course --branch open-release/ironwood.2 --depth 1 ../edx-demo-course
|
git clone https://github.com/edx/edx-demo-course --branch open-release/ironwood.2 --depth 1 ../edx-demo-course
|
||||||
python ./manage.py cms --settings=tutor.production import ../data ../edx-demo-course
|
python ./manage.py cms import ../data ../edx-demo-course
|
||||||
|
@ -1 +1,4 @@
|
|||||||
./manage.py cms --settings=tutor.production reindex_course --all --setup
|
export DJANGO_SETTINGS_MODULE=$SERVICE_VARIANT.envs.$SETTINGS
|
||||||
|
echo "Loading settings $DJANGO_SETTINGS_MODULE"
|
||||||
|
|
||||||
|
./manage.py cms reindex_course --all --setup
|
||||||
|
@ -1,7 +1,11 @@
|
|||||||
dockerize -wait tcp://{{ MYSQL_HOST }}:{{ MYSQL_PORT }} -timeout 20s
|
dockerize -wait tcp://{{ MYSQL_HOST }}:{{ MYSQL_PORT }} -timeout 20s
|
||||||
./manage.py lms --settings=tutor.production migrate
|
|
||||||
|
|
||||||
./manage.py lms --settings=tutor.production create_oauth2_client \
|
export DJANGO_SETTINGS_MODULE=$SERVICE_VARIANT.envs.$SETTINGS
|
||||||
|
echo "Loading settings $DJANGO_SETTINGS_MODULE"
|
||||||
|
|
||||||
|
./manage.py lms migrate
|
||||||
|
|
||||||
|
./manage.py lms create_oauth2_client \
|
||||||
"http://androidapp.com" "http://androidapp.com/redirect" public \
|
"http://androidapp.com" "http://androidapp.com/redirect" public \
|
||||||
--client_id android --client_secret {{ ANDROID_OAUTH2_SECRET }} \
|
--client_id android --client_secret {{ ANDROID_OAUTH2_SECRET }} \
|
||||||
--trusted
|
--trusted
|
||||||
|
Loading…
Reference in New Issue
Block a user