summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.example79
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