111 lines
3.9 KiB
Bash
Executable File
111 lines
3.9 KiB
Bash
Executable File
#!/bin/bash
|
|
# makedist-announcement
|
|
# Copyright (c) 2012-2013 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
|
#
|
|
|
|
. /usr/share/makedist/VERSION
|
|
VERSION=$makedist_version
|
|
outputlangs="en it"
|
|
distribution="openmamba"
|
|
|
|
TEXTDOMAIN="makedist"; export TEXTDOMAIN
|
|
|
|
function usage() {
|
|
echo $"Usage"": makedist-announcement distversion [mediumname] [--rebuild-announcement] [--rebuild-catalog]
|
|
[--send-email] [--send-test-email] [-h|--help] [-y|--yes]
|
|
|
|
"$"Example"":
|
|
makedist-announcement milestone2 livecd --send-test-email
|
|
"
|
|
|
|
exit 1
|
|
|
|
}
|
|
|
|
while [ "$1" ]; do
|
|
case $1 in
|
|
--rebuild-announcement) SCRIPT_ENV_ADD="$SCRIPT_ENV_ADD REBUILDANNOUNCEMENT=1" ;;
|
|
--rebuild-catalog) SCRIPT_ENV_ADD="$SCRIPT_ENV_ADD REBUILDCATALOG=1" ;;
|
|
--send-email) SCRIPT_ENV_ADD="$SCRIPT_ENV_ADD SENDEMAIL=1" ;;
|
|
--send-test-email) SCRIPT_ENV_ADD="$SCRIPT_ENV_ADD SENDTESTEMAIL=1" ;;
|
|
-h|--help) usage; exit 0 ;;
|
|
-y|--yes) EXTRA_OPTS="-y" ;;
|
|
-*) echo "Error: uknown option $1; aborting."
|
|
exit 1
|
|
;;
|
|
*) if [ ! "$distversion" ]; then
|
|
distversion=$1
|
|
elif [ ! "$mediumname" ]; then
|
|
mediumname=$1
|
|
else
|
|
echo "Error: exceeding option $1; aborting."
|
|
exit 1
|
|
fi
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
[ "$distversion" ] || usage
|
|
|
|
if [ "$distversion" != "devel" ]; then
|
|
RELEASE=1
|
|
DISTVERSION=$distversion
|
|
else
|
|
RELEASE=
|
|
fi
|
|
. /etc/sysconfig/makedist
|
|
|
|
echo "makedist-announcement $VERSION"
|
|
echo "========================="
|
|
|
|
if [ "$mediumname" ]; then
|
|
for outputlang in $outputlangs; do
|
|
case $outputlang in
|
|
en) export LC_ALL=en_US.UTF8 ;;
|
|
it) export LC_ALL=it_IT.UTF8 ;;
|
|
*) echo "Error: unsupported language $outputlang; aborting."; exit 1 ;;
|
|
esac
|
|
[ "$SCRIPT_ENV_ADD" ] && export $SCRIPT_ENV_ADD
|
|
/usr/share/makedist/makedist-announcement.sh $EXTRA_OPTS $distversion $mediumname $outputlang || exit 1
|
|
done
|
|
fi
|
|
|
|
#if [ ! "$SENDEMAIL" -a ! "$SENDTESTEMAIL" ]; then
|
|
echo $"Generating $distversion announcements indexes"
|
|
for outputlang in $outputlangs; do
|
|
tmpfile=`mktemp -q -t makedist-announcement.XXXXXXXX`
|
|
indexfile=/var/ftp/pub/$distribution/media/$distversion/release-announcement-index.$outputlang.html.inc
|
|
dateindexfile=/var/ftp/pub/$distribution/media/$distversion/release-announcement-dateindex.$outputlang.html.inc
|
|
> $dateindexfile
|
|
echo "<table>" > $indexfile
|
|
column=0
|
|
for i in `seq 1 ${#MEDIA_NAME[*]}`; do
|
|
mediumdir=/var/ftp/pub/$distribution/media/$distversion/${MEDIA_NAME[i-1]}
|
|
version=
|
|
for f in $mediumdir/info/release-announcement-*.$outputlang.html; do
|
|
[ -r $f ] || continue
|
|
version=`echo $f | sed "s|.*/release-announcement-\(.*\)\.$outputlang.html|\1|"`
|
|
announcedate=`stat --format=%X $f`
|
|
echo "$announcedate `date -d @$announcedate +%d/%m/%Y` ${MEDIA_NAME[i-1]} $version" >> $tmpfile
|
|
done
|
|
[ "$version" ] || continue
|
|
[ $column -eq 0 ] && echo -n "<tr>" >> $indexfile
|
|
echo -n "<td>${MEDIA_NAME[i-1]}</td>" >> $indexfile
|
|
echo -n "<td><a href='?distrelease=${distversion}&medium=${MEDIA_NAME[i-1]}&version=${version}&lang=${outputlang}'>${version}</a></td>" >> $indexfile
|
|
[ $column -eq 1 ] && echo "</tr>" >> $indexfile
|
|
# [ $i -lt ${#MEDIA_NAME[*]} ] && echo -n "<br>" >> $indexfile
|
|
column=`expr $column + 1`
|
|
[ $column -gt 1 ] && column=0
|
|
done
|
|
[ $column -eq 0 ] && echo -n "<td></td></tr>" >> $indexfile
|
|
echo "</table>" >> $indexfile
|
|
sort -r $tmpfile | \
|
|
while read line; do
|
|
set -- $line
|
|
echo "<br>$2 <a href=\"/distribution/announcements.html?distrelease=${distversion}&medium=$3&version=$4\">"$"Release: ""$distribution $distversion $3 $4</a>" >> $dateindexfile
|
|
done
|
|
rm -f $tmpfile
|
|
done
|
|
#fi
|