]> git.nbdom.net Git - nb.git/commitdiff
cleanup
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Mon, 8 Aug 2016 16:10:49 +0000 (18:10 +0200)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Mon, 8 Aug 2016 16:10:49 +0000 (18:10 +0200)
bin/nb-update
etc/cron/nb

index b08fc692aed3bcc7e9767879da0fd4edc451b033..ba04e1c56a66fe355e7e214d7e7910b246e81891 100755 (executable)
@@ -10,6 +10,8 @@
 . "${BASH_SOURCE%/*}/../etc/profile" || exit
 declare -r NAME="$(basename "${0}")"
 declare -r TMP="/tmp/$NAME.tmp"
+declare CLEANUP=0
+[ "$1" = "-cleanup" ] && CLEANUP=1 
 
 #####################################################################
 # Git Connection check
@@ -72,12 +74,13 @@ for repo in $(nb-repo-dirs); do
   echo ">git pull $repo (user=$user)"
 
   cmd="GIT_SSH=$GIT_SSH cd \"$repo\" && git pull"
+  [ "$CLEANUP" = "1" ] && cmd="$cmd && git gc"
 
   if [ 1 = 1 ] && ! git_conn_check; then
      [ 1 = 1 ]
-  elif [ "$USER" == "$user" ]; then
+  elif [ "$USER" = "$user" ]; then
     bash -c "$cmd"
-  elif [ "$USER" == "root" ]; then
+  elif [ "$USER" = "root" ]; then
     su $user -c "$cmd"
   else
     echo "Ignore $repo: current user=$USER repo user=$user"
@@ -107,7 +110,7 @@ rm -f "$TMP"
 #####################################################################
 # End
 #
-if [ "$ex" == "0" ]; then
+if [ "$ex" = "0" ]; then
   printf ">OK\n"
 else
   printf ">ERR\n"
index a7f55b503b67969eb869a793cb605226181006bd..2a676af430f436429c96a67daac6f8cce1158cb9 100644 (file)
@@ -9,4 +9,5 @@ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/nb/bin
 # m h dom mon dow user command
 #
 */15 09-23 * * * root nb-update >/var/log/nb.log 2>&1 || cat /var/log/nb.log
-0    00-08 * * * root nb-update >/var/log/nb.log 2>&1 || cat /var/log/nb.log
+0       00 * * * root nb-update -cleanup >/var/log/nb.log 2>&1 || cat /var/log/nb.log
+0    01-08 * * * root nb-update >/var/log/nb.log 2>&1 || cat /var/log/nb.log