#!/bin/bash echo "makedist media release script" echo "Copyright (c) 2008-2012 by Silvan Calarco " echo function usage() { echo "Usage:" echo "makedist-newrelease release [distversion] [-f] [--only medium_name]" echo echo "-f: force full rebuild" echo "--only: only build the specified medium" echo "-h: show this help and exit" echo echo "Example:" echo "makedist-newrelease 2.0.10 milestone2 --only livecd/livecd-root" echo } [ "$1" ] || { echo "Error: release must be specified; aborting" usage exit 1 } while [ "$1" ]; do case $1 in -f) FORCE_ADD="FORCE=1" ;; --only) ONLY_MEDIUM=$2 [ "$ONLY_MEDIUM" ] || { echo "Error: medium name must be specified after --only; aborting." exit 1 } shift ;; -h) usage; exit 0 ;; -*) echo "Error: uknown option $1; aborting." exit 1 ;; *) if [ ! "$RELEASE" ]; then RELEASE=$1 elif [ ! "$DISTVERSION" ]; then DISTVERSION=$1 else echo "Error: exceeding option $1; aborting." exit 1 fi ;; esac shift done [ "$RELEASE" ] || { usage; exit 1; } [ "$DISTVERSION" ] || DISTVERSION="milestone2" . /etc/sysconfig/makedist echo "Releasing media for openmamba $DISTVERSION $RELEASE" ALLMEDIALAST=`expr ${#MEDIA_NAME[*]} - 1` for i in `seq 0 $ALLMEDIALAST`; do # [ "$SUBPLATFORM" = "$PLATFORM" ] && SUBPLATFORM= # [ "${ONLY_PLATFORM/\//}" = "${ONLY_PLATFORM}" ] && ONLY_PLATFORM="$ONLY_PLATFORM/" [ ! "$ONLY_MEDIUM" -o "$ONLY_MEDIUM" = "${MEDIA_NAME[i]}" ] || continue PLATFORM=${MEDIA_PLATFORM[i]} SUBPLATFORM=${MEDIA_SUBPLATFORM[i]} for lang in ${MEDIA_LANGUAGES[i]}; do for arch in ${MEDIA_ARCHS[i]}; do sudo makedist openmamba-$DISTVERSION PLATFORM=$PLATFORM SUBPLATFORM=$SUBPLATFORM LANGUAGE=$lang RELEASE=$DISTVERSION ARCH=$arch $FORCE_ADD || { echo "Error: fatal error running 'makedist openmamba-$DISTVERSION PLATFORM=$PLATFORM SUBPLATFORM=$SUBPLATFORM LANGUAGE=$lang RELEASE=$DISTVERSION ARCH=$arch $FORCE_ADD'; aborting." exit 1 } done done FORCE_OVERWRITE=1 \ RELEASE=$RELEASE \ RELEASEPLATFORM=$PLATFORM \ RELEASESUBPLATFORM=$SUBPLATFORM \ DISTVERSION=$DISTVERSION /etc/cron.daily/20-makedist-autobuild done ## Workaround: updates home page HTML which always show previous version after first run #RELEASE=$RELEASE \ #DISTVERSION=$DISTVERSION \ #/etc/cron.daily/20-makedist-autobuild exit 0