#!/bin/bash ## fetch and update contents of /www/ from git.superglue.it _PWD=$(pwd) _USER='httpd' _WWW='/www' _URL='http://git.superglue.it/superglue/serverside/repository/archive.tar.gz' _ARC=$(curl -Is $_URL | awk -F\" '/serverside/ { print $2 }') cd /tmp if [[ -z "$_ARC" ]]; then echo 'error fetching archive version' exit 1 fi if [[ ! -e "$_ARC" ]]; then echo -n "$(date): fetching $_ARC " curl -OJs "$_URL" || exit 1 echo "OK" else exit 0 fi _DIR=($(tar xvzf $_ARC 2>/dev/null)) if [[ -z "$_DIR" ]]; then echo 'error extracting archive' exit 1 fi cp -Rf "$_DIR"/* $_WWW/ && chown -R $_USER $_WWW/* && echo -n "$(date): update OK" ## remove old archives and unpacked directory for i in $(ls -1d serverside* | grep -v "$_ARC"); do rm -Rf "$i"; done cd $_PWD exit 0