2008-11-04 01:25:14 +02:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
# sync.sh
|
|
|
|
|
#
|
|
|
|
|
# this script is written to syncronize the lkd planet..
|
2008-11-04 01:44:20 +02:00
|
|
|
|
#
|
|
|
|
|
# author: Alper KANAT <alper.kanat@linux.org.tr>
|
2008-11-04 01:25:14 +02:00
|
|
|
|
|
2008-11-04 01:44:20 +02:00
|
|
|
|
PLANET_DIR="${HOME}/public_html/gezegen"
|
2008-11-05 01:19:37 +02:00
|
|
|
|
LOG_DIR="$PLANET_DIR/logs"
|
|
|
|
|
LOG_FILE="planet-$(date +"%d.%m.%Y").log"
|
2008-11-04 01:44:20 +02:00
|
|
|
|
LOCK_FILE="planet-sync.lck"
|
|
|
|
|
|
2008-11-05 01:19:37 +02:00
|
|
|
|
usage() {
|
|
|
|
|
cat << EOF
|
|
|
|
|
Synchronizes the planet by invoking the necessary commands and logges everything.
|
|
|
|
|
|
|
|
|
|
Options:
|
|
|
|
|
-h, --help this help
|
|
|
|
|
-p, --planetdir useful if the planet dir is somewhere else than the
|
|
|
|
|
default one
|
|
|
|
|
|
|
|
|
|
Usage: $(basename $0) [--help] [--planetdir /path/to/planet]
|
|
|
|
|
EOF
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
while (( $# > 0 )); do
|
|
|
|
|
case "$1" in
|
|
|
|
|
--help|-h)
|
|
|
|
|
usage
|
|
|
|
|
shift
|
|
|
|
|
exit 0
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
--planetdir|-p)
|
|
|
|
|
case "$2" in
|
|
|
|
|
[a-zA-Z0-9\/]*)
|
|
|
|
|
PLANET_DIR="$2"
|
|
|
|
|
LOG_DIR="$PLANET_DIR/logs"
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
*)
|
|
|
|
|
usage
|
|
|
|
|
exit 1
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
shift 2
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
-*)
|
|
|
|
|
usage
|
|
|
|
|
exit 1
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
?*)
|
|
|
|
|
usage
|
|
|
|
|
exit 1
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
# checking planet dir
|
|
|
|
|
if [[ ! -d "$PLANET_DIR" ]]; then
|
|
|
|
|
echo "invalid planet directory.. please specify the correct planet dir with --planetdir /path/to/planet"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# checking if the log file created for the current date
|
|
|
|
|
if [[ ! -f "$LOG_DIR/$LOG_FILE" ]]; then
|
|
|
|
|
touch "$LOG_DIR/$LOG_FILE"
|
|
|
|
|
fi
|
|
|
|
|
|
2008-11-04 01:44:20 +02:00
|
|
|
|
if [[ -f "$PLANET_DIR/$LOCK_FILE" ]]; then
|
2008-11-05 01:19:37 +02:00
|
|
|
|
echo "there's a sync process running behind, please try again later.."
|
2008-11-04 01:44:20 +02:00
|
|
|
|
exit 1
|
|
|
|
|
else
|
|
|
|
|
touch "$PLANET_DIR/$LOCK_FILE"
|
2008-11-05 01:47:04 +02:00
|
|
|
|
echo >> "$LOG_DIR/$LOG_FILE" 2>&1
|
2008-11-05 01:51:24 +02:00
|
|
|
|
echo "starting new sync ($(date +"%d.%m.%Y, %H:%M"))" >> "$LOG_DIR/$LOG_FILE" 2>&1
|
2008-11-05 01:47:04 +02:00
|
|
|
|
echo "-----------------------------------------------------------" >> "$LOG_DIR/$LOG_FILE" 2>&1
|
2008-11-05 01:19:37 +02:00
|
|
|
|
"$PLANET_DIR/planet.py" "$PLANET_DIR/gezegen/config.ini" >> "$LOG_DIR/$LOG_FILE" 2>&1
|
2008-11-05 01:47:04 +02:00
|
|
|
|
echo "-----------------------------------------------------------" >> "$LOG_DIR/$LOG_FILE" 2>&1
|
2008-11-04 01:44:20 +02:00
|
|
|
|
fi
|
2008-11-05 01:19:37 +02:00
|
|
|
|
|
|
|
|
|
# if ended successfully delete the lock file
|
|
|
|
|
rm "$PLANET_DIR/$LOCK_FILE"
|