]> git.phdru.name Git - phdru.name/cgi-bin/blog-ru/search-tags.git/blobdiff - update
Refactor update script
[phdru.name/cgi-bin/blog-ru/search-tags.git] / update
diff --git a/update b/update
index 1b9b51822abc9f224b8ab7b50eedef592453b357..ad37f0cb3fa89932d62e10ab29e4aef185609442 100755 (executable)
--- a/update
+++ b/update
@@ -1,33 +1,23 @@
 #! /bin/sh
 
-current="`git config --get --path remote.current.url`"
-origin="`git config --get --path remote.origin.url`"
-
-if [ -n "$origin" ]; then
-   if [ -n "$current" ]; then
-      echo "UNKNOWN ERROR"
-   else
-      echo "This script must be run in the origin directory: $origin"
-   fi >&2
-   exit 1
-elif [ -z "$current" ]; then
-   echo "UNKNOWN ERROR" >&2
-   exit 1
-fi
+"$HOME"/admin/prog/git-scripts/update || exit 1
 
-git pull --ff-only current master &&
-
-web="`git config --get --path remote.web.url`" &&
-[ -n "$web" ] && git push web
+current="`git config --get --path remote.current.url`"
 
 # Copy templates and generated files with timestamps to avoid rebuilding
 rsync -ahP "$current"/html/html.py "$current"/html/html.tmpl \
            "$current"/html/redirect.py "$current"/html/redirect.tmpl html &&
 
-# Save files generated by yacc
+# Copy files generated by yacc
 rsync -ahP "$current"/parser.out "$current"/parsetab.py . &&
 
 cgi="`git config --get --path remote.cgi.url`" &&
-[ -n "$cgi" ] && cd "$cgi" && git pull origin &&
+if [ -n "$cgi" ]; then
+   umask 022 && cd "$cgi" && git pull origin &&
+   rsync -ahP "$current"/html/html.py "$current"/html/html.tmpl \
+              "$current"/html/redirect.py "$current"/html/redirect.tmpl html &&
+   rsync -ahP "$current"/parser.out "$current"/parsetab.py . &&
+   compyleall && chmod -R a+rX .
+fi &&
 
 cd "$current" && exec git pull origin