X-Git-Url: http://git.onelab.eu/?p=myslice.git;a=blobdiff_plain;f=Makefile;h=6f557bae544f0079e28bfc58ee3dd64fe69d5015;hp=3cc9c2b03c9287fe377111b2096cb64ca3840b5d;hb=refs%2Fheads%2Fonelab;hpb=235e6b33a9f1f21ab5a6f22fb2384bca67262cbe diff --git a/Makefile b/Makefile index 3cc9c2b0..6f557bae 100644 --- a/Makefile +++ b/Makefile @@ -28,7 +28,7 @@ install: --install-scripts=$(DESTDIR)/$(datadir)/unfold \ --install-data=$(DESTDIR)/$(datadir)/unfold -#################### third-party layout is managed as art of collectstatic +#################### third-party layout is managed as part of collectstatic static: force ./manage.py collectstatic --noinput @@ -71,14 +71,17 @@ debian.clean: plugins-templates: force @find plugins -type f -name '*.html' local-templates: force + @$(foreach tmpl,$(shell find . -name templates | grep -v '^\./templates$$'),find $(tmpl) -maxdepth 2 -type f -name *.html;) +local-templates2: force @$(foreach tmpl,$(shell find . -name templates | grep -v '^\./templates$$'),ls -1 $(tmpl)/*;) + list-templates: plugins-templates local-templates #################### manage templates for the plugin area templates: force - mkdir -p templates - ln -sf $(foreach x,$(shell $(MAKE-SILENT) list-templates),../$(x)) ./templates + @mkdir -p templates + ln -sf $(foreach x,$(shell $(MAKE-SILENT) list-templates),"../$(x)") ./templates clean-templates templates-clean: force rm -rf ./templates @@ -91,7 +94,10 @@ redo-templates: clean-templates templates #################### compute emacs tags # list files under git but exclude third-party stuff like bootstrap and jquery myfiles: force - @git ls-files | egrep -v 'insert(_|-)above|third-party/|play/' + @git ls-files | egrep -v 'insert(_|-)above|third-party/|to-be-integrated/' + +pyfiles: force + @git ls-files | grep '\.py$$' # in general it's right to rely on the contents as reported by git tags: force @@ -107,8 +113,9 @@ ftags: force #################### sync : push current code on a box running myslice # this for now targets deployments based on the debian packaging -SSHURL:=root@$(MYSLICEBOX):/ -SSHCOMMAND:=ssh root@$(MYSLICEBOX) +SSHUSER ?= root +SSHURL := $(SSHUSER)@$(MYSLICEBOX): +SSHCOMMAND := ssh $(SSHUSER)@$(MYSLICEBOX) ### rsync options # the config file should probably not be overridden ?? @@ -116,7 +123,7 @@ SSHCOMMAND:=ssh root@$(MYSLICEBOX) LOCAL_RSYNC_EXCLUDES := --exclude '*.pyc' LOCAL_RSYNC_EXCLUDES += --exclude '*.sqlite3' --exclude myslice.ini LOCAL_RSYNC_EXCLUDES += --exclude static --exclude templates --exclude build -LOCAL_RSYNC_EXCLUDES += --exclude to-be-integrated --exclude third-party --exclude 'offline*' +LOCAL_RSYNC_EXCLUDES += --exclude to-be-integrated --exclude third-party # usual excludes RSYNC_EXCLUDES := --exclude .git --exclude '*~' --exclude TAGS --exclude .DS_Store $(LOCAL_RSYNC_EXCLUDES) # make -n will propagate as rsync -n @@ -127,7 +134,7 @@ RSYNC := rsync -a -v $(RSYNC_COND_DRY_RUN) $(RSYNC_EXCLUDES) #################### minimal convenience for pushing work-in-progress in an apache-based depl. # xxx until we come up with a packaging this is going to be a wild guess # on debian04 I have stuff in /usr/share/myslice and a symlink in /root/myslice -INSTALLED_MAIN =/usr/share/unfold +INSTALLED_MAIN =/usr/share/pyshared # this is for a debian box INSTALLED_APACHE =/etc/apache2/sites-available/ @@ -148,8 +155,8 @@ ifeq (,$(MYSLICEBOX)) @echo " $(MAKE) MYSLICEBOX=debian04.pl.sophia.inria.fr "$@"" @exit 1 else - +$(RSYNC) ./apache/myslice.conf $(SSHURL)/$(INSTALLED_APACHE)/ - +$(RSYNC) ./apache/init-ssl.sh ./apache/init-ssl.py $(SSHURL)/$(bindir)/ + +$(RSYNC) ./apache/unfold.conf $(SSHURL)/$(INSTALLED_APACHE)/ + +$(RSYNC) ./apache/unfold-init-ssl.sh $(SSHURL)/$(bindir)/ endif restart: @@ -160,3 +167,14 @@ ifeq (,$(MYSLICEBOX)) else +$(SSHCOMMAND) apachectl restart endif + +#SSHUSER=tparment +#MYSLICEBOX=srv-diana.inria.fr +sync-devel: +ifeq (,$(MYSLICEBOX)) + @echo "you need to set MYSLICEBOX, like in e.g." + @echo " $(MAKE) MYSLICEBOX=srv-diana.inria.fr "$@"" + @exit 1 +else + +$(RSYNC) --relative $$(git ls-files) $(SSHURL)myslice/ +endif