1313import invoke
1414from invoke import Collection
1515
16- from website import settings
1716from .utils import pip_install , bin_prefix
1817
1918
@@ -63,6 +62,8 @@ def decorator(f):
6362@task
6463def server (ctx , host = None , port = 5000 , debug = True , gitlogs = False ):
6564 """Run the app server."""
65+ from website import settings
66+
6667 if os .environ .get ('WERKZEUG_RUN_MAIN' ) == 'true' or not debug :
6768 if os .environ .get ('WEB_REMOTE_DEBUG' , None ):
6869 import pydevd
@@ -95,6 +96,8 @@ def git_logs(ctx, branch=None):
9596def apiserver (ctx , port = 8000 , wait = True , autoreload = True , host = '127.0.0.1' , pty = True ):
9697 """Run the API server."""
9798 env = os .environ .copy ()
99+ from website import settings
100+
98101 cmd = 'DJANGO_SETTINGS_MODULE=api.base.settings {} manage.py runserver {}:{} --nothreading' \
99102 .format (sys .executable , host , port )
100103 if not autoreload :
@@ -114,6 +117,8 @@ def apiserver(ctx, port=8000, wait=True, autoreload=True, host='127.0.0.1', pty=
114117def adminserver (ctx , port = 8001 , host = '127.0.0.1' , pty = True ):
115118 """Run the Admin server."""
116119 env = 'DJANGO_SETTINGS_MODULE="admin.base.settings"'
120+ from website import settings
121+
117122 cmd = f'{ env } python3 manage.py runserver { host } :{ port } --nothreading'
118123 if settings .SECURE_MODE :
119124 cmd = cmd .replace ('runserver' , 'runsslserver' )
@@ -141,6 +146,7 @@ def sharejs(ctx, host=None, port=None, db_url=None, cors_allow_origin=None):
141146 os .environ ['SHAREJS_DB_URL' ] = db_url
142147 if cors_allow_origin :
143148 os .environ ['SHAREJS_CORS_ALLOW_ORIGIN' ] = cors_allow_origin
149+ from website import settings
144150
145151 if settings .SENTRY_DSN :
146152 os .environ ['SHAREJS_SENTRY_DSN' ] = settings .SENTRY_DSN
@@ -179,7 +185,7 @@ def celery_beat(ctx, level='debug', schedule=None):
179185 ctx .run (bin_prefix (cmd ), pty = True )
180186
181187@task
182- def migrate_search (ctx , delete = True , remove = False , index = settings . ELASTIC_INDEX ):
188+ def migrate_search (ctx , delete = True , remove = False , index = 'website' ):
183189 """Migrate the search-enabled models."""
184190 from website .app import init_app
185191 init_app (routes = False , set_backends = False )
@@ -546,6 +552,7 @@ def wheelhouse(ctx, addons=False, release=False, dev=False, pty=True):
546552 inv wheelhouse --addons
547553 inv wheelhouse --release
548554 """
555+ from website import settings
549556 if release or addons :
550557 for directory in os .listdir (settings .ADDON_PATH ):
551558 path = os .path .join (settings .ADDON_PATH , directory )
@@ -567,6 +574,8 @@ def wheelhouse(ctx, addons=False, release=False, dev=False, pty=True):
567574@task
568575def addon_requirements (ctx ):
569576 """Install all addon requirements."""
577+ from website import settings
578+
570579 for directory in os .listdir (settings .ADDON_PATH ):
571580 path = os .path .join (settings .ADDON_PATH , directory )
572581
@@ -583,6 +592,8 @@ def addon_requirements(ctx):
583592
584593@task
585594def ci_addon_settings (ctx ):
595+ from website import settings
596+
586597 for directory in os .listdir (settings .ADDON_PATH ):
587598 path = os .path .join (settings .ADDON_PATH , directory , 'settings' )
588599 if os .path .isdir (path ):
@@ -595,6 +606,8 @@ def ci_addon_settings(ctx):
595606
596607@task
597608def copy_addon_settings (ctx ):
609+ from website import settings
610+
598611 for directory in os .listdir (settings .ADDON_PATH ):
599612 path = os .path .join (settings .ADDON_PATH , directory , 'settings' )
600613 if os .path .isdir (path ) and not os .path .isfile (os .path .join (path , 'local.py' )):
0 commit comments