diff --git a/Makefile b/Makefile index 202dbcc4..2d040ebf 100644 --- a/Makefile +++ b/Makefile @@ -6,6 +6,9 @@ make-p: # Launch all P targets in parallel and exit as soon as one exits. set -m; (for p in $(P); do ($(MAKE) $$p || kill 0)& done; wait) +build-client: + $(NPM) build + clean-install: rm -fr $(NODE_MODULES) rm -fr $(VENV) @@ -42,6 +45,15 @@ lint-react: migrate-db: $(FLASK) db migrate --directory $(MIGRATIONS) +run: + $(MAKE) P="run-server run-client" make-p + +run-client: + serve -s fittrackee_client/build -l 3000 + +run-server: + cd fittrackee_api && $(GUNICORN) -b 127.0.0.1:5000 "fittrackee_api:create_app()" + serve-python: $(FLASK) run --with-threads -h $(HOST) -p $(API_PORT) diff --git a/Makefile.config b/Makefile.config index c8436615..e95d0327 100644 --- a/Makefile.config +++ b/Makefile.config @@ -20,6 +20,7 @@ PYTHON = $(VENV)/bin/python PIPENV = $(shell command -v pipenv 2> /dev/null) FLASK = $(VENV)/bin/flask PYTEST = $(VENV)/bin/py.test +GUNICORN = $(VENV)/bin/gunicorn COV = $(VENV)/bin/python-codacy-coverage # Node env diff --git a/fittrackee_api/Pipfile b/fittrackee_api/Pipfile index 147bac44..ddef3e49 100644 --- a/fittrackee_api/Pipfile +++ b/fittrackee_api/Pipfile @@ -13,6 +13,7 @@ gpxpy = "==1.2.0" staticmap = "==0.5.3" pytz = "==2018.4" python-forecastio = "==1.4.0" +gunicorn = "==19.8.1" [dev-packages] pytest = "==3.6.1" diff --git a/fittrackee_api/Pipfile.lock b/fittrackee_api/Pipfile.lock index 36026a96..485465f9 100644 --- a/fittrackee_api/Pipfile.lock +++ b/fittrackee_api/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "92d0c43fa07e58aa6a8d6fe38cd8792c363ea6211e6820d2cfc8158267cec57e" + "sha256": "e3e55984559d903ea7c15da7610aa364b9323cb1d0f0b6b8f001a07a17a1bdf2" }, "pipfile-spec": 6, "requires": { @@ -153,6 +153,14 @@ "index": "pypi", "version": "==1.2.0" }, + "gunicorn": { + "hashes": [ + "sha256:7ef2b828b335ed58e3b64ffa84caceb0a7dd7c5ca12f217241350dec36a1d5dc", + "sha256:bc59005979efb6d2dd7d5ba72d99f8a8422862ad17ff3a16e900684630dd2a10" + ], + "index": "pypi", + "version": "==19.8.1" + }, "idna": { "hashes": [ "sha256:156a6814fb5ac1fc6850fb002e0852d56c0c8d2531923a51032d1b70760e186e",