diff options
author | Étienne Loks <etienne.loks@proxience.com> | 2015-02-01 16:48:52 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@proxience.com> | 2015-02-01 16:48:52 +0100 |
commit | b13531ff2d00911f653c9c2804319177332d9481 (patch) | |
tree | 07521e277204f8b4fac75ff403e83e0262586e27 | |
parent | 25de58fa4006105f41f3d33c4f03b5243e3ec6da (diff) | |
download | Ishtar-b13531ff2d00911f653c9c2804319177332d9481.tar.bz2 Ishtar-b13531ff2d00911f653c9c2804319177332d9481.zip |
Add makefile sample
-rw-r--r-- | Makefile.example | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/Makefile.example b/Makefile.example new file mode 100644 index 000000000..e1dfcd606 --- /dev/null +++ b/Makefile.example @@ -0,0 +1,79 @@ +SHELL := /bin/bash + +# if a virtualenv is used put the full python path +# e.g.: PYTHON=$$HOME/.virtualenvs/ishtar/bin/python +PYTHON=python +# put name of your current project +project=example_project +# list used apps +apps="ishtar_common" "archaeological_operations" "archaeological_context_records" "archaeological_files" "archaeological_finds" "archaeological_warehouse" +default_data='fr' +url='ishtar.example.com' +project_name='Test' + +clean: + -rm -rf *~* + -find . -name '*.pyc' -exec rm {} \; + -find . -name '.*.swp' -exec rm {} \; + +test: clean + cd $(project); $(PYTHON) manage.py test + +pep8: + pep8.py --filename=*.py --ignore=W --exclude="manage.py,settings.py" --statistics --repeat . + +pylint: + pylint . --max-public-methods=50 --include-ids=y --ignored-classes=Item.Meta --method-rgx='[a-z_][a-z0-9_]{2,40}$$' + +fresh_syncdb: + cd $(project); $(PYTHON) ./manage.py syncdb --noinput 2> /dev/null > /dev/null + cd $(project); $(PYTHON) ./manage.py migrate ishtar_common 2> /dev/null > /dev/null + if [[ '$(apps)' == *archaeological_files* ]]; then cd $(project); $(PYTHON) ./manage.py migrate archaeological_files 0013 2> /dev/null > /dev/null; fi + if [[ '$(apps)' == *archaeological_operations* ]]; then cd $(project); $(PYTHON) ./manage.py migrate archaeological_operations 2> /dev/null > /dev/null; fi + if [[ '$(apps)' == *archaeological_files* ]]; then cd $(project); $(PYTHON) ./manage.py migrate archaeological_files 2> /dev/null > /dev/null; fi + cd $(project); $(PYTHON) ./manage.py migrate 2> /dev/null > /dev/null + echo "* load default data" + # data migrations have created some default data - return to a clean state + cd $(project); $(PYTHON) ./manage.py flush --noinput 2> /dev/null + cd $(project); $(PYTHON) ./manage.py loaddata \ + '../fixtures/initial_data-auth-'$(default_data)'.json' 2> /dev/null + cd $(project); $(PYTHON) ./manage.py loaddata \ + '../ishtar_common/fixtures/initial_data-'$(default_data)'.json' 2> /dev/null + cd $(project); $(PYTHON) ./manage.py loaddata \ + '../ishtar_common/fixtures/initial_towns-'$(default_data)'.json' 2> /dev/null + if [[ '$(apps)' == *archaeological_operations* ]]; then cd $(project); $(PYTHON) ./manage.py loaddata \ + '../archaeological_operations/fixtures/initial_data-'$(default_data)'.json' 2> /dev/null; fi + if [[ '$(apps)' == *archaeological_files* ]]; then cd $(project); $(PYTHON) ./manage.py loaddata \ + '../archaeological_files/fixtures/initial_data-'$(default_data)'.json' 2> /dev/null; fi + if [[ '$(apps)' == *archaeological_context_records* ]]; then cd $(project); $(PYTHON) ./manage.py loaddata \ + '../archaeological_context_records/fixtures/initial_data-'$(default_data)'.json' 2> /dev/null; fi + if [[ '$(apps)' == *archaeological_finds* ]]; then cd $(project); $(PYTHON) ./manage.py loaddata \ + '../archaeological_finds/fixtures/initial_data-'$(default_data)'.json' 2> /dev/null; fi + if [[ '$(apps)' == *archaeological_warehouse* ]]; then cd $(project); $(PYTHON) ./manage.py loaddata \ + '../archaeological_warehouse/fixtures/initial_data-'$(default_data)'.json' 2> /dev/null; fi + echo "* create superuser" + cd $(project); $(PYTHON) ./manage.py createsuperuser + # "de-flush" migrations + $(PYTHON) ./manage.py migrate --fake 2> /dev/null > /dev/null + # add a default site + echo '[{"pk":null, "model": "sites.site", "fields": {"domain": "'$(URL)'", "name": "'$(PROJECT_NAME)'"}}]' > \ + /tmp/site.json + cd $(project); $(PYTHON) ./manage.py loaddata /tmp/site.json + rm /tmp/site.json + +syncdb: + cd $(project); $(PYTHON) manage.py syncdb --noinput + cd $(project); $(PYTHON) manage.py migrate + +shell: + cd $(project);$(PYTHON) manage.py shell + +run: + cd $(project); $(PYTHON) manage.py runserver 0.0.0.0:8000 + +compilemessages: + for DIR in $(apps); do \ + echo $(CURDIR)/$$DIR; \ + cd $(CURDIR)/$$DIR; \ + django-admin compilemessages; \ + done |