diff --git a/.gitignore b/.gitignore index 1377554..e3740eb 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,7 @@ *.swp +deployment-config.mk +scanner/venv +scanner/floatapp/app.cfg +*.pyc +*.min.css +*.min.js diff --git a/deployment-config.mk b/deployment-config.mk.sample similarity index 100% rename from deployment-config.mk rename to deployment-config.mk.sample diff --git a/scanner/.gitignore b/scanner/.gitignore deleted file mode 100644 index 0d20b64..0000000 --- a/scanner/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.pyc diff --git a/scanner/floatapp/app.cfg b/scanner/floatapp/app.cfg.sample similarity index 100% rename from scanner/floatapp/app.cfg rename to scanner/floatapp/app.cfg.sample diff --git a/web/.htaccess b/web/.htaccess deleted file mode 100755 index 2069589..0000000 --- a/web/.htaccess +++ /dev/null @@ -1,19 +0,0 @@ -AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript application/json - - - Header set Cache-Control "max-age=29030400, public" - - - Header set Cache-Control "max-age=5184000, public" - - - Header set Cache-Control "max-age=2678400, public" - - - Header set Cache-Control "max-age=3600, public" - - - - deny from all - - diff --git a/web/Makefile b/web/Makefile new file mode 100644 index 0000000..fc9e181 --- /dev/null +++ b/web/Makefile @@ -0,0 +1,69 @@ +JS_DIR = js +CSS_DIR = css + +JS_MIN = $(JS_DIR)/scripts.min.js +CSS_MIN = $(CSS_DIR)/styles.min.css + +JS_MIN_FILES := $(sort $(patsubst %.js, %.min.js, $(filter-out %.min.js, $(wildcard $(JS_DIR)/*.js)))) +CSS_MIN_FILES := $(sort $(patsubst %.css, %.min.css, $(filter-out %.min.css, $(wildcard $(CSS_DIR)/*.css)))) + +JS_COMPILER := java -jar bin/closure-compiler.jar --warning_level QUIET +CSS_COMPILER := java -jar bin/yui-compressor.jar --type css + +DEBUG ?= 0 + +.PHONY: all deploy clean + +all: $(JS_MIN) $(CSS_MIN) + +ifeq ($(DEBUG),0) +%.min.js: %.js + @echo " JS " $@ + @$(JS_COMPILER) --js $< --js_output_file $@ +else +%.min.js: %.js + @echo " JS " $@ + @cat $< > $@ +endif + +%.min.css: %.css + @echo " CSS " $@ + @$(CSS_COMPILER) -o $@ $< + +$(JS_MIN): $(JS_MIN_FILES) + @echo " CAT " $@ + @cat $^ > $@ + +$(CSS_MIN): $(CSS_MIN_FILES) + @echo " CAT " $@ + @cat $^ > $@ + +clean: + @echo " RM " $(JS_MIN) $(JS_MIN_FILES) $(CSS_MIN) $(CSS_MIN_FILES) + @rm -fv $(JS_MIN) $(JS_MIN_FILES) $(CSS_MIN) $(CSS_MIN_FILES) + +include ../deployment-config.mk + +SSH_OPTS := -q -o ControlMaster=auto -o ControlPath=.ssh-deployment.sock + +deploy: all + @echo " SSH $(WEB_SERVER)" + @ssh $(SSH_OPTS) -Nf $(WEB_SERVER) + + @echo " RSYNC . $(WEB_SERVER):$(HTDOCS_PATH)" + @ssh -t $(SSH_OPTS) $(WEB_SERVER) "sudo -u $(HTDOCS_USER) -v" + @rsync -aizm --delete-excluded --exclude=.ssh-deployment.sock --exclude=Makefile --exclude=*.swp \ + --exclude=bin/ --include=scripts.min.js --include=styles.min.css \ + --exclude=*.js --exclude=*.css --rsh="ssh $(SSH_OPTS)" \ + --rsync-path="sudo -n -u $(HTDOCS_USER) rsync" \ + . "$(WEB_SERVER):$(HTDOCS_PATH)" + + @echo " CHOWN $(HTDOCS_USER):$(HTDOCS_USER) $(WEB_SERVER):$(HTDOCS_PATH)" + @ssh -t $(SSH_OPTS) $(WEB_SERVER) "sudo chown -R $(HTDOCS_USER):$(HTDOCS_USER) '$(HTDOCS_PATH)'" + + @echo " CHMOD 750/640 $(WEB_SERVER):$(HTDOCS_PATH)" + @ssh -t $(SSH_OPTS) $(WEB_SERVER) "sudo find '$(HTDOCS_PATH)' -type f -exec chmod 640 {} \;; \ + sudo find '$(HTDOCS_PATH)' -type d -exec chmod 750 {} \;;" + + @echo " SSH $(WEB_SERVER)" + @ssh -O exit $(SSH_OPTS) $(WEB_SERVER) diff --git a/web/bin/closure-compiler.jar b/web/bin/closure-compiler.jar new file mode 100644 index 0000000..53037b0 Binary files /dev/null and b/web/bin/closure-compiler.jar differ diff --git a/web/bin/yui-compressor.jar b/web/bin/yui-compressor.jar new file mode 100644 index 0000000..bf39747 Binary files /dev/null and b/web/bin/yui-compressor.jar differ diff --git a/web/css/.gitignore b/web/css/.gitignore deleted file mode 100644 index 433b482..0000000 --- a/web/css/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.min.css diff --git a/web/css/.htaccess b/web/css/.htaccess deleted file mode 100755 index 764e76c..0000000 --- a/web/css/.htaccess +++ /dev/null @@ -1,3 +0,0 @@ - - deny from all - diff --git a/web/css/css-minify.sh b/web/css/css-minify.sh deleted file mode 100755 index 37a60c1..0000000 --- a/web/css/css-minify.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# minify all .css-files -ls -1 *.css|grep -Ev "min.css$" | while read cssfile; do - newfile="${cssfile%.*}.min.css" - echo "$cssfile --> $newfile" - curl -X POST -s --data-urlencode "input@$cssfile" http://cssminifier.com/raw > $newfile -done - -# merge all into one single file -rm -f styles.min.css -cat *.min.css > styles.min.css diff --git a/web/js/.gitignore b/web/js/.gitignore deleted file mode 100644 index 121531a..0000000 --- a/web/js/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.min.js diff --git a/web/js/.htaccess b/web/js/.htaccess deleted file mode 100755 index 2448b79..0000000 --- a/web/js/.htaccess +++ /dev/null @@ -1,3 +0,0 @@ - - deny from all - diff --git a/web/js/js-minify.sh b/web/js/js-minify.sh deleted file mode 100755 index 00faa9f..0000000 --- a/web/js/js-minify.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# minify all .js-files -ls -1 *.js|grep -Ev "min.js$" | while read jsfile; do - newfile="${jsfile%.*}.min.js" - echo "$jsfile --> $newfile" - curl -X POST -s --data-urlencode "input@$jsfile" http://javascript-minifier.com/raw > $newfile -done - -# merge all into one single file -rm -f scripts.min.js -cat *.min.js > scripts.min.js