#!/bin/sh STYLESHEET=/usr/share/xml/docbook/stylesheet/nwalsh/current/xhtml/docbook.xsl WEBSITE=/srv/www/html PROJECTS="web docs docs-fr" HOMEDIR=/home/judas_iscariote SVN_BIN=/usr/bin/svn publish() { case $1 in *.xml) b=${1%.*} if [ -f $WEBSITE/$b.htm ]; then b=$b.htm f="$WEBSITE/$b" else b=$b.html f="$WEBSITE/$b" fi echo "Converting $1 from XML to HTML ($b) ..." xmllint --valid --noout $1 && xsltproc --output $f --stringparam html.stylesheet html.css --stringparam ulink.target _self -param toc.section.depth 3 $STYLESHEET $1 chmod g+w $f ;; *) cp $1 $WEBSITE/$1 chmod g+w $WEBSITE/$1 ;; esac } for project in $PROJECTS; do cd $HOMEDIR/$project $SVN_BIN update --non-interactive | while read UA file; do case $UA in U|P|G) publish $file ;; A) [ -d $file ] && mkdir $WEBSITE/$file || publish $file ;; esac done done