]> git.donarmstrong.com Git - neurodebian.git/blobdiff - Makefile
ENH: mirmon and refresh (the one to be called hourly from cron) Makefile rules
[neurodebian.git] / Makefile
index fb0bc49bf6f00a19901ab1014ee0e9ff7546838f..cf3899471a2864bdf335316887c9c980c5005fd0 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,10 @@
 WWW_UPLOAD_URI = ../www
 WWW_DIR = build/html/
 
-all: updatedb upload-website
+# Lentghy one due to updatedb
+all: updatedb upload-website mirmon
+# Quick one -- just rebuilds html if new changes and adjusts the status of the mirrors
+refresh: upload-website-stamp mirmon
 
 
 pics:
@@ -10,12 +13,17 @@ pics:
 
 
 html: pics source
-       rsync -rvlhp sphinx/ build/src
+       rsync -rvlhpt sphinx/ build/src
+       cd artwork;     cp button_w200.png logo_tuned/fmri_w200.png ../build/src/_static; cd ..
+       cp 3rd/jquery.livetwitter/jquery.livetwitter.min.js build/src/_static
        cd build/src && $(MAKE) html BUILDDIR=$(CURDIR)/build 2>&1
+       mv $(WWW_DIR)/_static/robots.txt $(WWW_DIR)/
+       cp -r build/src/lists $(WWW_DIR)/
+       cp -r sphinx/survey/2011/figures/* $(WWW_DIR)/_images/
 
 
 clean:
-       -rm html-stamp source-stamp
+       -rm html-stamp source-stamp upload-website-stamp
        $(MAKE) -C artwork clean
 
 
@@ -25,11 +33,12 @@ distclean: clean
 
 source: source-stamp
 source-stamp: build/db.db
-       PYTHONPATH=. python neurodebian/dde.py \
+       PYTHONPATH=.:$(PYTHONPATH) python neurodebian/dde.py \
                --cfg neurodebian.cfg \
                --db build/db.db \
                --outdir build/src \
                --pkgaddenum pkgs \
+               --extracts /home/www/neuro.debian.net/www/debian/extracts \
                commandisirrelevant
        rm -f html-stamp
        touch $@
@@ -39,7 +48,7 @@ removecache:
        -rm -rf build/cache
 
 removedb:
-       -rm build/db.db
+       -rm -f build/db.db
 
 
 updatedb: removedb removecache build/db.db
@@ -47,15 +56,27 @@ updatedb: removedb removecache build/db.db
 
 build/db.db:
        mkdir -p build
-       PYTHONPATH=. python neurodebian/dde.py \
+       PYTHONPATH=.:$(PYTHONPATH) python neurodebian/dde.py \
                --cfg neurodebian.cfg \
                --db build/db.db \
                updatedb
-       -rm source-stamp
+       -rm -f source-stamp
 
 
 upload-website: html
-       rsync -rvzlhp --delete --exclude=debian --chmod=Dg+s,g+rw $(WWW_DIR) $(WWW_UPLOAD_URI)
+       rsync -rvzlhp --delete \
+        --exclude=debian --exclude=debian-local --exclude=_files \
+        --chmod=Dg+s,g+rw $(WWW_DIR) $(WWW_UPLOAD_URI)
+       : # Touch stamp here so we get it updated on every upload
+       touch $@-stamp
 
-.PHONY: removedb removecache updatedb upload-website clean distclean pics html
+# call upload iff .git/index was modified, i.e. new changes got pulled in
+upload-website-stamp: .git/index
+       $(MAKE) upload-website
+
+mirmon:
+       # update and generate mirrors report
+       [ -x /usr/bin/mirmon ] && mirmon -q -get update -c mirmon-neurodebian.conf
+
+.PHONY: removedb removecache updatedb upload-website clean distclean pics html mirmon