Commit 774c402e authored by Dmitriy Safronov's avatar Dmitriy Safronov
Browse files

superuser

parent 8eecb597
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2,3 +2,4 @@
**
!/Dockerfile
!/entrypoint.sh
!/superuser.py
+1 −0
Original line number Diff line number Diff line
@@ -48,6 +48,7 @@ RUN set -ex && \
    chown -R sopds:sopds /home/sopds
COPY --from=builder /opt/sopds/ /opt/sopds/
COPY --from=git --chown=sopds:sopds /tmp/ /home/sopds/
COPY superuser.py /home/sopds/
COPY entrypoint.sh /entrypoint.sh
RUN set -ex && \
	chmod a+x /entrypoint.sh
+2 −15
Original line number Diff line number Diff line
@@ -2,8 +2,6 @@

CONTROL="python3 -u manage.py"

test -z ${}

config() {
    chmod a+rwX /srv
    ## config
@@ -14,23 +12,12 @@ config() {
    chown -R sopds:sopds /home/sopds
    chmod -R a+rwX /srv
    # essential setup
    exec sudo -E \
    sudo -E \
        -u sopds \
        -g sopds \
        sh -c \
        "${CONTROL} migrate && \
        python3 -c \"
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'sopds.settings'
import django
django.setup()
from django.contrib.auth.management.commands.createsuperuser import get_user_model
if get_user_model().objects.filter(username='${SOPDS_USER}'): 
    print('Super user already exists. SKIPPING...')
else:
    print('Creating super user...')
    get_user_model()._default_manager.db_manager('default').create_superuser(username='${SOPDS_USER}', email='${SOPDS_EMAIL}', password='${SOPDS_PASSWORD}')
    print('Super user created...')\"
        python3 superuser.py && \
        ${CONTROL} sopds_util setconf SOPDS_ROOT_LIB '/books' && \
        ${CONTROL} sopds_util setconf SOPDS_ZIPSCAN True && \
        ${CONTROL} sopds_util setconf SOPDS_ZIPCODEPAGE 'utf-8' && \

superuser.py

0 → 100644
+10 −0
Original line number Diff line number Diff line
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'sopds.settings'
import django
django.setup()
from django.contrib.auth.management.commands.createsuperuser import get_user_model
if get_user_model().objects.filter(username=os.environ.get('SOPDS_USER', 'root')): 
    print('Super user already exists. SKIPPING...')
else:
    print('Creating super user...')
    get_user_model()._default_manager.db_manager('default').create_superuser(username=os.environ.get('SOPDS_USER', 'root'), email=os.environ.get('SOPDS_EMAIL', 'root@localhost'), password=os.environ.get('SOPDS_PASSWORD', 'Ab,12345'))