#!/bin/bash if [ -z "$1" ]; then echo "You must supply a package." >&2 exit 1 fi PKG=$1 SOURCE_TREE=cauldron DEST_TREE=updates/1 ROOT="svn+ssh://svn.mageia.org/svn/packages" BIN_ROOT="svn+ssh://svn.mageia.org/svn/binrepos" SOURCE="${ROOT}/${SOURCE_TREE}/$PKG" DEST="${ROOT}/${DEST_TREE}/$PKG" BIN_SOURCE="${BIN_ROOT}/${SOURCE_TREE}/$PKG" BIN_DEST="${BIN_ROOT}/${DEST_TREE}/$PKG" # Check to see if DEST exists... OP=$(svn ls $DEST/current 2>/dev/null) BIN_OP=$(svn ls $BIN_DEST/current 2>/dev/null) if [ -n "$OP" -o -n "$BIN_OP" ]; then echo "The destination tree $DEST already exists" >&2 exit 1 fi # Check to make sure SOURCE does! OP=$(svn ls $SOURCE/current 2>/dev/null) BIN_OP=$(svn ls $BIN_SOURCE/current 2>/dev/null) if [ -z "$OP" -o -z "$BIN_OP" ]; then echo "The source tree $SOURCE does not exist" >&2 exit 1 fi TMP_NAME=$(mktemp /tmp/`basename $0`.XXXXXX) rm -rf $TMP_NAME mkdir $TMP_NAME pushd $TMP_NAME svn="svn" $svn mkdir -m "SILENT: Prepare backport of $PKG from $SOURCE_TREE" $DEST $svn cp -m "SILENT: Backport of $PKG from $SOURCE_TREE" $SOURCE/current $DEST/ $svn mkdir -m "SILENT: Prepare backport of $PKG from $SOURCE_TREE (binrepos)" $BIN_DEST $svn co $BIN_DEST pushd $PKG $svn export $BIN_SOURCE/current $svn add current $svn commit -m "SILENT: Backport of $PKG from $SOURCE_TREE (binrepos)" popd rm -rf $PKG popd rm -rf $TMP_NAME