openbsd-webzine/issues/make_issue.sh

35 lines
668 B
Bash
Executable File

#!/bin/sh
usage() {
echo "./$0 directory"
exit 1
}
die() {
echo "$1"
exit 1
}
DIR=$(basename $1)
CURINODE=$(stat -f "%i" current/)
test -d "$DIR" || usage
test -d ../public/ || die "You must run this from openbsd-webzine/current"
ls $DIR/*.html 2>&1 >/dev/null || die "no html file in $DIR"
if [ "$(stat -f '%i' $DIR)" -eq "$CURINODE" ]
then
DEST=dev
else
DEST=public
fi
cat _common/header $DIR/*html _common/footer > ../${DEST}/${DIR}.html
# replace with issue number
issue=$(echo -n "$1" | egrep -o "[0-9]+")
sed -i "s/__ISSUE__/${issue}/g" ../${DEST}/${DIR}.html
# replace date
sed -i "s/__DATE__/$(date -u)/" ../${DEST}/${DIR}.html