#!/bin/bash DATE=$(date +%F) LOG_DATE=$(date +%F-%R) BASE_DIR="/var/www/planet.gentoo.org/" # created by cfengine RESTRICT="" VENUS_DIR="/usr/lib/python2.6/site-packages/venus/" # Create folders and symlinks (for initial setup) [[ -d ${BASE_DIR}htdocs ]] || mkdir ${BASE_DIR}htdocs [[ -d ${BASE_DIR}logs/planet ]] || mkdir -p ${BASE_DIR}logs/planet [[ -d ${BASE_DIR}logs/universe ]] || mkdir -p ${BASE_DIR}logs/universe [[ -d ${BASE_DIR}generated_configs ]] || mkdir ${BASE_DIR}generated_configs [[ -L ${BASE_DIR}htdocs/images ]] || ln -s ${BASE_DIR}planet-gentoo/media/* ${BASE_DIR}htdocs/ [[ -d ${BASE_DIR}htdocs/archives ]] || mkdir ${BASE_DIR}htdocs/archives [[ -d ${BASE_DIR}themes_common ]] || mkdir -p ${BASE_DIR}themes_common; \ cp /usr/share/webapps/$(ls /usr/share/webapps/ | grep "^20" | sort -r | head -n 1)/themes/common/* ${BASE_DIR}/themes_common/ [[ -d ${BASE_DIR}htdocs/universe/archives ]] || \ mkdir -p ${BASE_DIR}htdocs/universe/archives [[ -L ${BASE_DIR}htdocs/archives/index.php ]] || \ ln -s ${BASE_DIR}planet-gentoo/archives/planet/index.php ${BASE_DIR}htdocs/archives/index.php [[ -L ${BASE_DIR}htdocs/universe/archives/index.php ]] || \ ln -s ${BASE_DIR}planet-gentoo/archives/universe/index.php ${BASE_DIR}htdocs/universe/archives/index.php # Get latest Git changes cd ${BASE_DIR}planet-gentoo; git pull --force >/dev/null 2>&1 # Run Venus for x in planet universe; do if [[ ! -z $RESTRICT ]]; then for y in $RESTRICT; do rm -f ${BASE_DIR}planet-gentoo/configs/${x}/${y} done fi cat ${BASE_DIR}planet-gentoo/configs/base/venus.${x} ${BASE_DIR}planet-gentoo/configs/${x}/* > ${BASE_DIR}generated_configs/venus.${x}.ini python ${VENUS_DIR}planet.py ${BASE_DIR}generated_configs/venus.${x}.ini > ${BASE_DIR}logs/${x}/${LOG_DATE}.log 2>&1 done rm -f ${BASE_DIR}generated_configs/venus.{planet,universe}.ini # Delete old logs find ${BASE_DIR}logs -type f -mtime +30 -delete # Archive posts cp ${BASE_DIR}htdocs/index.html \ ${BASE_DIR}htdocs/archives/$(date +%G)/${DATE}.html cp ${BASE_DIR}htdocs/universe/index.html \ ${BASE_DIR}htdocs/universe/archives/$(date +%G)/${DATE}.html