diff --git a/app/plugins/functions.py b/app/plugins/functions.py index d3937d32..d7313200 100644 --- a/app/plugins/functions.py +++ b/app/plugins/functions.py @@ -94,9 +94,13 @@ def build_plugins(): "Cannot generate webpack.config.js for {}, a path is missing: {}".format(plugin, ' '.join(build_paths))) # Check for webpack.config.js (if we need to build it) - if plugin.path_exists("public/webpack.config.js") and not plugin.path_exists("public/build"): - logger.info("Running webpack for {}".format(plugin.get_name())) - subprocess.call(['webpack-cli'], cwd=plugin.get_path("public")) + if plugin.path_exists("public/webpack.config.js"): + if settings.DEV: + logger.info("Running webpack with watcher for {}".format(plugin.get_name())) + subprocess.Popen(['webpack-cli', '--watch'], cwd=plugin.get_path("public")) + elif not plugin.path_exists("public/build"): + logger.info("Running webpack for {}".format(plugin.get_name())) + subprocess.call(['webpack-cli'], cwd=plugin.get_path("public")) def register_plugins(): diff --git a/webodm.sh b/webodm.sh index 8ac4fa23..dbb15258 100755 --- a/webodm.sh +++ b/webodm.sh @@ -77,6 +77,7 @@ case $key in ;; --dev) export WO_DEBUG=YES + export WO_DEV=YES dev_mode=true shift # past argument ;; diff --git a/webodm/settings.py b/webodm/settings.py index 855d513b..4bef0b3b 100644 --- a/webodm/settings.py +++ b/webodm/settings.py @@ -50,6 +50,7 @@ WORKER_RUNNING = sys.argv[2:3] == ["worker"] # SECURITY WARNING: don't run with debug turned on a public facing server! DEBUG = os.environ.get('WO_DEBUG', 'YES') == 'YES' or TESTING +DEV = os.environ.get('WO_DEV', 'YES') == 'YES' SESSION_COOKIE_SECURE = CSRF_COOKIE_SECURE = os.environ.get('WO_SSL', 'NO') == 'YES' INTERNAL_IPS = ['127.0.0.1']