[devel] Ультиматум (~/bin/rebuild)

Michael Shigorin mike at osdn.org.ua
Tue Oct 6 17:43:45 UTC 2009


On Tue, Oct 06, 2009 at 02:23:28PM +0400, Yury Aliaev wrote:
> Простите, но я вижу тут только один пакет. Я спрашивал о том,
> как одной командой отправить на пересборку сразу весь косяк
> пакетов, подобно тому, как я их оним вызовом rsync туда залил.
> А будут ли собираться пакеты в рамках одной задачи или на
> каждый создастся своя -- мне, честно говоря, глубоко всё равно.

Мой велосипедик опять в аттаче.  Питается спеками и src.rpm.

-- 
 ---- WBR, Michael Shigorin <mike at altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/
-------------- next part --------------
#!/bin/sh
# build spec or src.rpm with hasher

hsh_build()
{
	nice time hsh $HSHARGS \
		--apt-conf="${APTCONF:=/etc/apt/apt.conf}" \
		--mountpoints=/proc \
		"${WORKDIR:=$HOME/hasher/tmpfs}" \
		"$@" \
	&& echo "rpm --resign $@ && rsync -Pav $@ git.alt: && ssh git.alt task new && ssh git.alt task add srpm `basename $@` && echo -n 'fire: ' && read && ssh git.alt task run"
	# "task new" before rsync might be slightly better
	# if hanging tasks after rsync failures are deleted
}

rpmbs()
{
	nice rpm -bs --nodeps "$1" \
	| sed -ns 's/^.*: \(.*\.src\.rpm\)$/\1/p'
}

fatal()
{
	echo "$0: error: $*" >&2
	exit 1
}

while [ $# -gt 0 ]; do
	case "$1" in
		*.spec) hsh_build `rpmbs "$1"`; shift;;
		*.src.rpm) hsh_build "$1"; shift;;
		*) fatal "$1 is neither src.rpm nor spec file";;
	esac
done

#find "$WORKDIR/repo" -name '*.rpm'


More information about the Devel mailing list