More resiliant initialization of plugins, win32 requirements

pull/825/head
Piero Toffanin 2020-02-26 22:47:49 -05:00
rodzic c1effc5e75
commit fd771a2220
2 zmienionych plików z 13 dodań i 4 usunięć

Wyświetl plik

@ -72,7 +72,12 @@ def build_plugins():
# and run npm install if needed
if plugin.path_exists("public/package.json") and not plugin.path_exists("public/node_modules"):
logger.info("Running npm install for {}".format(plugin))
subprocess.call(['npm', 'install'], cwd=plugin.get_path("public"))
try:
subprocess.call(['npm', 'install'], cwd=plugin.get_path("public"))
except FileNotFoundError:
logger.warn("npm is not installed, will skip this plugin")
continue
# Check if we need to generate a webpack.config.js
if len(plugin.build_jsx_components()) > 0 and plugin.path_exists('public'):
@ -105,8 +110,11 @@ def build_plugins():
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"))
try:
subprocess.call(['webpack-cli'], cwd=plugin.get_path("public"))
except FileNotFoundError:
logger.warn("webpack-cli is not installed, plugin will not work")
def webpack_watch_process_count():
count = 0

Wyświetl plik

@ -3,7 +3,7 @@ anyjson==0.3.3
appdirs==1.4.0
APScheduler==3.2.0
billiard==3.5.0.3
celery==4.1.0
celery==4.4.0
coreapi==2.0.9
Django==2.1.15
django-appconf==1.0.2
@ -59,4 +59,5 @@ rio-cogeo==1.1.8
rasterio==1.1.0 ; sys_platform == 'linux' or sys_platform == 'darwin'
https://download.lfd.uci.edu/pythonlibs/s2jqpv5t/rasterio-1.1.3-cp38-cp38-win_amd64.whl ; sys_platform == "win32"
https://download.lfd.uci.edu/pythonlibs/s2jqpv5t/GDAL-3.0.4-cp38-cp38-win_amd64.whl ; sys_platform == "win32"
Shapely==1.7.0 ; sys_platform == "win32"
Shapely==1.7.0 ; sys_platform == "win32"
waitress==1.4.3 ; sys_platform == "win32"