You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
1.9 KiB

.PHONY: clean_env init_env clean_virtualenv install_packages clean install run all schema_seminar.pdf schema_all.pdf
PYTHON=python2.7
VE_VER=12.0.7
LOCAL_PYTHON=bin/python
all: install
clean: clean_env
veryclean: clean clean_virtualenv
install: virtualenv bin/python install_packages
# phony, but depends on file
make_env: ${LOCAL_PYTHON}
# phony, but fast repeated execution
install_packages: make_env
bin/pip install -r requirements.txt
# phony
clean_env:
rm -rf bin/ include/ lib/ local/ share/
rm -f pip-selfcheck.json
rm -f schema_seminar.pdf schema_all.pdf
# binary name representing set-up env
${LOCAL_PYTHON}: virtualenv
${PYTHON} virtualenv/virtualenv.py .
# directory name
virtualenv:
curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-${VE_VER}.tar.gz
tar xvfz virtualenv-${VE_VER}.tar.gz
mv virtualenv-${VE_VER} virtualenv
rm virtualenv-${VE_VER}.tar.gz
# phony
clean_virtualenv:
rm -rf virtualenv/
run:
./manage.py runserver_plus
test:
./manage.py test
# DB schemata
schema: schema_seminar.pdf schema_all.pdf
schema_seminar.pdf:
./manage.py graph_models seminar | dot -Tpdf > schema_seminar.pdf
schema_all.pdf:
./manage.py graph_models -a -g | dot -Tpdf > schema_all.pdf
TEST_USER=test-mam
TEST_SERVER=atrey.karlin.mff.cuni.cz
TEST_DIR=/home/test-mam/mamweb-test/
# remote commands
HEAD=`git log --color=never |head -1|sed 's/.*commit //'`
push_test:
@echo "Checking out commited HEAD (${HEAD}) state at ${TEST_SSH} ..."
git push --all
ssh ${TEST_USER}@${TEST_SERVER} -n -x "\
cd ${TEST_DIR} && \
git fetch --all && \
git checkout ${HEAD} -f && \
git clean -f && \
cp mamweb/settings_test.py mamweb/settings.py && \
make install && \
./manage.py collectstatic --noinput && \
./manage.py migrate --noinput && \
(chown -Rf :mam . || true ) && \
(chmod -Rf g+w . || true ) && \
echo Done."
@echo "Test deployed at ${TEST_SERVER}:${TEST_DIR} successfully."