#!/bin/bash repodir="/srv/http/sites/bluewind/repo" host="bluewind.at" user="web-flo" dbfile="bluewind.db.tar.gz" all_arches=(i686 x86_64) _startdir="$PWD" error() { echo "ERROR: $@" >&2 exit 1 } warn() { echo "WARNING: $@" >&2 } if [[ $# > 0 ]]; then _dirs="$@" else _dirs="." fi for _dir in $_dirs; do cd "$_startdir/$_dir" source PKGBUILD unset -f build unset -f package for _arch in ${arch[@]}; do pkgfile="${pkgname}-${pkgver}-${pkgrel}-${_arch}.pkg.tar.xz" if [[ ! -f "$pkgfile" ]]; then warn "$pkgfile doesn't exist" continue fi rsync -t --partial --progress "$pkgfile" "$user@$host://$repodir/$_arch/$pkgfile" if [[ $_arch == "any" ]]; then for _arch in ${all_arches[@]}; do ssh "$user@$host" "ln -sf ../any/$pkgfile $repodir/$_arch/$pkgfile" ssh "$user@$host" "repo-add -q $repodir/$_arch/$dbfile $repodir/$_arch/$pkgfile" done else ssh "$user@$host" "repo-add -q $repodir/$_arch/$dbfile $repodir/$_arch/$pkgfile" fi done ssh "$user@$host" "$repodir/bin/clean_pkg_name" "$pkgname" done