From a0e2c8c32b8aa768d40dae508aa8828bee60cfbb Mon Sep 17 00:00:00 2001 From: Nicolas Vigier Date: Tue, 21 Jun 2011 15:28:07 +0000 Subject: add script to move update from updates_testing to updates repository --- functions | 16 +++++++++++++++ mga-move-update | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ mgatools.conf | 6 ++++++ 3 files changed, 86 insertions(+) create mode 100644 functions create mode 100644 mga-move-update create mode 100644 mgatools.conf diff --git a/functions b/functions new file mode 100644 index 0000000..d612ce3 --- /dev/null +++ b/functions @@ -0,0 +1,16 @@ +#!/bin/sh + +. /etc/mgatools.conf + +function isingroup() +{ + grp="$1" + for group in `groups` + do if [ "$grp" = "$group" ] + then + return 0 + fi + done + return 1 +} + diff --git a/mga-move-update b/mga-move-update new file mode 100644 index 0000000..3d5e3d9 --- /dev/null +++ b/mga-move-update @@ -0,0 +1,64 @@ +#!/bin/sh + +. /usr/share/mgatools/functions +moveupdate_allowed_group=mga-qa + +dryrun=echo + +if ! isingroup "$allowed_group" +then + echo "You are not in group $allowed_group" + exit 1 +fi + +distrorelease="$1" +section="$2" +srcname="$3" +if test -z $distrorelease || test -z $section || test -z $srcname +then + echo 'Missing argument' >&2 + exit 1 +fi + +for file in "$distribdir/$distrorelease/SRPMS/$section/updates_testing/"*.rpm +do + fname=$(rpm -qp --qf '%{NAME}' "$file") + if [ a"$fname" = a"$srcname" ] + then + srcpkg=$(basename "$file") + break + fi +done + +if [ -z $srcpkg ] +then + echo "The package $srcname could not be found in $distrorelease/$section/updates_testing repository." >&2 + exit 2 +fi + +function movepkg() +{ + srcdir="$1" + destdir="$2" + srcpkg="$3" + output="$4" + + for file in "$srcdir/"*.rpm + do + fname=$(rpm -qp --qf '%{SOURCERPM}' "$file") + if [ a"$fname" = a"$srcpkg" ] + then + $dryrun mv -v -f "$file" "$destdir" >> "$output" + fi + done +} + +mailcontent=$(mktemp) +for arch in $arches +do + movepkg "$distribdir/$distrorelease/$arch/media/$section/updates_testing" "$distribdir/$distrorelease/$arch/media/$section/updates/" "$srcpkg" "$mailcontent" + movepkg "$distribdir/$distrorelease/$arch/media/debug/$section/updates_testing" "$distribdir/$distrorelease/$arch/media/debug/$section/updates/" "$srcpkg" "$mailcontent" +done + +rm -f "$mailcontent" + diff --git a/mgatools.conf b/mgatools.conf new file mode 100644 index 0000000..8f8304d --- /dev/null +++ b/mgatools.conf @@ -0,0 +1,6 @@ +moveupdate_allowed_group=mga-qa +moveupdate_mailto=qa-report@ml.mageia.org +distribdir=/distrib/bootstrap/distrib +distroreleases='1' +distrosections='core nonfree tainted' +arches='i586 x86_64' -- cgit v1.2.1