diff --git a/Makefile_old b/Makefile_old index ccfdb143..d9f1f8a2 100644 --- a/Makefile_old +++ b/Makefile_old @@ -1,44 +1,3 @@ -.PHONY: all venv_check clean install install_web install_venv clean_venv clean_schema run test deploy_test deploy_prod sync_test_media sync_test_db sync_test sync_local_media sync_local_db sync_local - -install: install_web - -install_web: venv_check - @# venv může být příšerně starý, takže nejdříve upgradujeme venvové věci - pip install --upgrade pip - pip install --upgrade setuptools - # Instalace závislostí webu - pip install -r requirements.txt --upgrade - # Pro vygenerování tesdat spusť ./manage.py testdata - # Po vygenerování testdat spusť ./manage.py loaddata data/*, ať máš menu a další modely - # Pro synchronizaci flatpages spusť make sync_prod_flatpages - -install_venv: - ${VENV} ${VENV_PATH} - -clean_venv: - # Možná není 100% foolproof... - @test ! ${VENV_PATH} = . || ! echo "Smaž si prosím venv sám, nebudu mazat celý web" - rm -rfv ${VENV_PATH} - rm -f pip-selfcheck.json -clean_schema: - rm -f schema_seminar.pdf schema_all.pdf - -run: venv_check - ./manage.py runserver - -test: venv_check - ./manage.py test -v2 seminar mamweb - -# DB schemata - -schema: schema_seminar.pdf schema_all.pdf - -schema_seminar.pdf: venv_check - ./manage.py graph_models seminar | dot -Tpdf > schema_seminar.pdf - -schema_all.pdf: venv_check - ./manage.py graph_models -a -g | dot -Tpdf > schema_all.pdf - # Deploy to current *mamweb-test* directory deploy: venv_check @if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi @@ -104,25 +63,3 @@ sync_test_db_aggressive: # Sync test with production # HACK ALERT: using aggressive variant, due to the schemas being too different. sync_test: sync_test_media sync_test_db_aggressive - - -# Sync media directory with atrey. Useful for local development with production database -# Does not sync Galerie and CACHE (too huge). -sync_local_media: - rsync -ave ssh --exclude Galerie --exclude CACHE\ - mam-web@gimli.ms.mff.cuni.cz:/akce/mam/www/mamweb-prod/media/ ./media/ -# Downloads and restores production database to local database. PostgreSQL only. -sync_local_db: - scp mam-web@gimli.ms.mff.cuni.cz:`ssh mam-web@gimli.ms.mff.cuni.cz 'ls -v /akce/mam/www/backups/mam_prod-*\.pgdump.xz | tail -n 1'` \ - ./last.pgdump.xz - xz -fd last.pgdump.xz - pg_restore -c -d mam-prod last.pgdump - -# Sync database and media. See above lines -sync_local: sync_local_media sync_local_db - -# Push local compiled Vue to gimli test site -push_compiled_vue_to_test: - scp vue_frontend/webpack-stats.json mam-web@gimli:/akce/mam/www/mamweb-test/vue_frontend/ - rsync -ave ssh seminar/static/seminar/vue mam-web@gimli:/akce/mam/www/mamweb-test/seminar/static/seminar/ - ssh mam-web@gimli.ms.mff.cuni.cz 'cd /akce/mam/www/mamweb-test/ && . env/bin/activate && ./manage.py collectstatic --noinput' diff --git a/make/install_venv b/make/install_venv index 60347f1e..f5f3664f 100755 --- a/make/install_venv +++ b/make/install_venv @@ -1,3 +1,6 @@ #!/bin/bash set -exuo pipefail +. make/lib.sh + +${VENV} ${VENV_PATH} diff --git a/make/install_web b/make/install_web index 60347f1e..5ebf963d 100755 --- a/make/install_web +++ b/make/install_web @@ -1,3 +1,16 @@ #!/bin/bash set -exuo pipefail +. make/lib.sh + +ensure_venv + +# Aktualizace toolchainu +pip install --upgrade pip setuptools +# Instalace závislostí webu +pip install -r requirements.txt --upgrade + +# XXX: Připomínka z původního Makefile: +echo 'Pro vygenerování tesdat spusť ./manage.py testdata +Po vygenerování testdat spusť ./manage.py loaddata data/*, ať máš menu a další modely +Pro synchronizaci flatpages spusť make/sync_prod_flatpages' diff --git a/make/lib.sh b/make/lib.sh index e4aac157..3e4e99c9 100644 --- a/make/lib.sh +++ b/make/lib.sh @@ -18,6 +18,7 @@ function die { } # Vždycky chceme zajistit, že běžíme z rootu repozitáře +# TODO: chceme? Nechceme naopak umět to spouštět odkudkoliv, aspoň u většiny targetů? test -d '.git' || die "Make skript spuštěn ve špatné složce, spusť ho z kořenového adresáře repozitáře." function ensure_venv { diff --git a/make/push_compiled_vue_to_test b/make/push_compiled_vue_to_test index 60347f1e..8ed57cd4 100755 --- a/make/push_compiled_vue_to_test +++ b/make/push_compiled_vue_to_test @@ -1,3 +1,9 @@ #!/bin/bash set -exuo pipefail +. make/lib.sh + +scp vue_frontend/webpack-stats.json "$GIMLI_LOGIN:$TESTWEB/vue_frontend/" +rsync -ave ssh seminar/static/seminar/vue "$GIMLI_LOGIN:$TESTWEB/seminar/static/seminar/" +# TODO: Je OK tady zapínat venv přímo takhle, nebo by to taky mělo být enkapsulováno do nějakého skriptu (e.g. make/deploy/collect_static)? +ssh "$GIMLI_LOGIN" "cd $TESTWEB && . env/bin/activate && ./manage.py collectstatic --noinput' diff --git a/make/run b/make/run index 60347f1e..44852432 100755 --- a/make/run +++ b/make/run @@ -1,3 +1,8 @@ #!/bin/bash set -exuo pipefail +. make/lib.sh + +ensure_venv + +./manage.py runserver diff --git a/make/schema b/make/schema index 60347f1e..9688e49a 100755 --- a/make/schema +++ b/make/schema @@ -1,3 +1,9 @@ #!/bin/bash set -exuo pipefail +. make/lib.sh + +ensure_venv + +./manage.py graph_models seminar | dot -Tpdf > schema_seminar.pdf +./manage.py graph_models -a -g | dot -Tpdf > schema_all.pdf diff --git a/make/schema_all.pdf b/make/schema_all.pdf deleted file mode 100755 index 60347f1e..00000000 --- a/make/schema_all.pdf +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -set -exuo pipefail diff --git a/make/schema_seminar.pdf b/make/schema_seminar.pdf deleted file mode 100755 index 60347f1e..00000000 --- a/make/schema_seminar.pdf +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -set -exuo pipefail diff --git a/make/sync_local b/make/sync_local deleted file mode 100755 index 60347f1e..00000000 --- a/make/sync_local +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -set -exuo pipefail diff --git a/make/sync_local_db b/make/sync_local_db deleted file mode 100755 index 60347f1e..00000000 --- a/make/sync_local_db +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -set -exuo pipefail diff --git a/make/sync_local_media b/make/sync_local_media deleted file mode 100755 index 60347f1e..00000000 --- a/make/sync_local_media +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -set -exuo pipefail diff --git a/make/test b/make/test index 60347f1e..bdf9f12b 100755 --- a/make/test +++ b/make/test @@ -1,3 +1,8 @@ #!/bin/bash set -exuo pipefail +. make/lib.sh + +ensure_venv + +./manage.py test -v2