summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MD5SUM0
-rwxr-xr-xmga-move-backports-nosync112
-rwxr-xr-xmga-move-backports-sync-mail99
-rwxr-xr-xmga-move-cauldron-nosync125
-rwxr-xr-x[-rw-r--r--]mga-move-update-nosync (renamed from mga-move-update)57
-rw-r--r--mgatools.conf2
-rwxr-xr-xupdate_hdlists36
-rwxr-xr-xupdate_hdlists_any30
-rwxr-xr-xupdate_hdlists_backports37
-rwxr-xr-xupdate_hdlists_cauldron30
10 files changed, 510 insertions, 18 deletions
diff --git a/MD5SUM b/MD5SUM
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/MD5SUM
diff --git a/mga-move-backports-nosync b/mga-move-backports-nosync
new file mode 100755
index 0000000..773a2fc
--- /dev/null
+++ b/mga-move-backports-nosync
@@ -0,0 +1,112 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 3 ]
+then
+ echo 'Usage: mga-move-update distrorelease section srcname' >&2
+ exit 1
+fi
+
+distrorelease="$1"
+section="$2"
+srcname="$3"
+
+if ! inlist "$distrorelease" "$distroreleases"
+then
+ echo "Incorrect distrorelease $distrorelease" >&2
+ exit 1
+fi
+
+if ! inlist "$section" "$distrosections"
+then
+ echo "Incorrect section $section" >&2
+ exit 1
+fi
+
+for file in "$distribdir/$distrorelease/SRPMS/$section/backports_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/backports_testing repository." >&2
+ exit 2
+fi
+
+# safety check
+echo " This SRPM (and matching binarys) will be moved from backports_testing to backports: $srcpkg" >&2
+
+read -p " Are you sure ? " yn >&2
+
+case $yn in
+ [Yy]* ) continue;;
+ * ) exit;;
+esac
+
+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"
+ echo "$(basename $file)<br/>"
+ fi
+ done
+}
+
+#function post()
+#{
+# for arch in $arches
+# do
+# update_hdlist "$distribdir/$distrorelease/$arch/media/$section/backports_testing"
+# update_hdlist "$distribdir/$distrorelease/$arch/media/$section/backports"
+# update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/backports_testing"
+# update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/backports"
+# done
+# update_hdlist "$distribdir/$distrorelease/SRPMS/$section/backports_testing"
+# update_hdlist "$distribdir/$distrorelease/SRPMS/$section/backports"
+# update_common_MD5SUM $distrorelease
+# mirror_repository $distrorelease
+#}
+
+echo ""
+echo "moving binary and source rpms:"
+mailcontent=$(mktemp)
+for arch in $arches
+do
+ echo ""
+ echo "$arch:<br/>"
+ movepkg "$distribdir/$distrorelease/$arch/media/$section/backports_testing" "$distribdir/$distrorelease/$arch/media/$section/backports/" "$srcpkg" "$mailcontent"
+ movepkg "$distribdir/$distrorelease/$arch/media/debug/$section/backports_testing" "$distribdir/$distrorelease/$arch/media/debug/$section/backports/" "$srcpkg" "$mailcontent"
+done
+echo ""
+echo "SRPMS:<br/>"
+echo "$srcpkg<br/>"
+echo ""
+$dryrun mv -v -f "$distribdir/$distrorelease/SRPMS/$section/backports_testing/$srcpkg" "$distribdir/$distrorelease/SRPMS/$section/backports/" >> "$output"
+
+if [ -n "$dryrun" ]
+then
+ cat "$mailcontent"
+else
+ /usr/bin/mailx -s "mga-move-update $distrorelease $section $srcname" -S "from=moveupdate_mailfrom" "$moveupdate_mailto" < "$mailcontent"
+#
+# (tmb) dont do post before all rpms are moved, call update_hdlists manually
+# post
+fi
+rm -f "$mailcontent"
diff --git a/mga-move-backports-sync-mail b/mga-move-backports-sync-mail
new file mode 100755
index 0000000..a91c06d
--- /dev/null
+++ b/mga-move-backports-sync-mail
@@ -0,0 +1,99 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 4 ]
+then
+ echo 'Usage: mga-move-backports-sync-mail distrorelease section srcname bugnumber' >&2
+ exit 1
+fi
+
+distrorelease="$1"
+section="$2"
+srcname="$3"
+bugnumber="$4"
+
+export SIG="https://bugs.mageia.org/show_bug.cgi?id=$4"
+
+
+if ! inlist "$distrorelease" "$distroreleases"
+then
+ echo "Incorrect distrorelease $distrorelease" >&2
+ exit 1
+fi
+
+if ! inlist "$section" "$distrosections"
+then
+ echo "Incorrect section $section" >&2
+ exit 1
+fi
+
+for file in "$distribdir/$distrorelease/SRPMS/$section/backports_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/backports_testing repository." >&2
+ exit 2
+fi
+
+# safety check
+echo " This SRPM (and matching binarys) will be moved from backports_testing to backports: $srcpkg" >&2
+
+read -p " Are you sure ? " yn >&2
+
+case $yn in
+ [Yy]* ) continue;;
+ * ) exit;;
+esac
+
+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"
+ echo "$(basename $file)<br/>"
+ fi
+ done
+}
+
+
+echo ""
+echo "moving binary and source rpms:"
+mailcontent=$(mktemp)
+for arch in $arches
+do
+ echo ""
+ echo "$arch:<br/>"
+ movepkg "$distribdir/$distrorelease/$arch/media/$section/backports_testing" "$distribdir/$distrorelease/$arch/media/$section/backports/" "$srcpkg" "$mailcontent"
+ movepkg "$distribdir/$distrorelease/$arch/media/debug/$section/backports_testing" "$distribdir/$distrorelease/$arch/media/debug/$section/backports/" "$srcpkg" "$mailcontent"
+done
+echo ""
+echo "SRPMS:<br/>"
+echo "$srcpkg<br/>"
+echo ""
+$dryrun mv -v -f "$distribdir/$distrorelease/SRPMS/$section/backports_testing/$srcpkg" "$distribdir/$distrorelease/SRPMS/$section/backports/" >> "$output"
+
+$
+mutt -e 'set from="Mageia Backports <buildsystem-daemon@mageia.org>"' \
+ -e 'set signature="echo $SIG|"' \
+ -e 'set sig_dashes=no' \
+ backports-announce@ml.mageia.org -s "Package backport: Mga $1/$2: $3" \
+ -i $mailcontent
+rm -f "$mailcontent"
diff --git a/mga-move-cauldron-nosync b/mga-move-cauldron-nosync
new file mode 100755
index 0000000..3920c5f
--- /dev/null
+++ b/mga-move-cauldron-nosync
@@ -0,0 +1,125 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 2 ]
+then
+ echo 'Usage: mga-move-cauldron-nosync section srcname' >&2
+ exit 1
+fi
+
+section="$1"
+srcname="$2"
+
+
+if ! inlist "$section" "$distrosections"
+then
+ echo "Incorrect section $section" >&2
+ exit 1
+fi
+
+# old package
+for file in "$distribdir/cauldron/SRPMS/$section/release/"*.rpm
+do
+ fname=$(rpm -qp --qf '%{NAME}' "$file")
+ if [ a"$fname" = a"$srcname" ]
+ then
+ oldsrcpkg=$(basename "$file")
+ break
+ fi
+done
+
+if [ -z $oldsrcpkg ]
+then
+ echo "The package $srcname could not be found in cauldron/$section/release repository." >&2
+fi
+
+# new package
+for file in "$distribdir/cauldron/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 cauldron/$section/updates_testing repository." >&2
+fi
+
+# safety check
+echo " This SRPM (and matching binarys) will be removed from release to old: $oldsrcpkg" >&2
+
+echo " This SRPM (and matching binarys) will be moved from updates_testing to release: $srcpkg" >&2
+
+read -p " Are you sure ? " yn >&2
+
+case $yn in
+ [Yy]* ) continue;;
+ * ) exit;;
+esac
+
+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"
+ echo "$(basename $file)<br/>"
+ fi
+ done
+}
+
+echo ""
+echo "moving old binary and source rpms to shedbot/old:"
+mailcontent=$(mktemp)
+for arch in $arches
+do
+ echo ""
+ echo "$arch:<br/>"
+ movepkg "$distribdir/cauldron/$arch/media/$section/release" "/var/lib/schedbot/old/" "$oldsrcpkg" "$mailcontent"
+ movepkg "$distribdir/cauldron/$arch/media/debug/$section/release" "/var/lib/schedbot/old/" "$oldsrcpkg" "$mailcontent"
+done
+echo ""
+echo "SRPMS:<br/>"
+echo "$oldsrcpkg<br/>"
+echo ""
+$dryrun mv -v -f "$distribdir/cauldron/SRPMS/$section/updates_testing/$srcpkg" "$distribdir/cauldron/SRPMS/$section/release/" >> "$output"
+
+echo ""
+echo "moving binary and source rpms:"
+mailcontent=$(mktemp)
+for arch in $arches
+do
+ echo ""
+ echo "$arch:<br/>"
+ movepkg "$distribdir/cauldron/$arch/media/$section/updates_testing" "$distribdir/cauldron/$arch/media/$section/release/" "$srcpkg" "$mailcontent"
+ movepkg "$distribdir/cauldron/$arch/media/debug/$section/updates_testing" "$distribdir/cauldron/$arch/media/debug/$section/release/" "$srcpkg" "$mailcontent"
+done
+echo ""
+echo "SRPMS:<br/>"
+echo "$srcpkg<br/>"
+echo ""
+$dryrun mv -v -f "$distribdir/cauldron/SRPMS/$section/updates_testing/$srcpkg" "$distribdir/cauldron/SRPMS/$section/release/" >> "$output"
+
+if [ -n "$dryrun" ]
+then
+ cat "$mailcontent"
+else
+ /usr/bin/mailx -s "mga-move-update cauldron $section $srcname" -S "from=moveupdate_mailfrom" "$moveupdate_mailto" < "$mailcontent"
+#
+# (tmb) dont do post before all rpms are moved, call update_hdlists manually
+# post
+fi
+rm -f "$mailcontent"
diff --git a/mga-move-update b/mga-move-update-nosync
index 353b1c3..ad0782c 100644..100755
--- a/mga-move-update
+++ b/mga-move-update-nosync
@@ -40,6 +40,18 @@ then
exit 2
fi
+# safety check
+echo " This SRPM (and matching binarys) will be moved from updates_testing to updates:" >&2
+echo " " >&2
+echo " $srcpkg" >&2
+echo " " >&2
+read -p " Are you sure ? " yn >&2
+
+case $yn in
+ [Yy]* ) continue;;
+ * ) exit;;
+esac
+
function movepkg()
{
srcdir="$1"
@@ -48,44 +60,55 @@ function movepkg()
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"
+ echo "$(basename $file)"
fi
done
}
-function post()
-{
- for arch in $arches
- do
- update_hdlist "$distribdir/$distrorelease/$arch/media/$section/updates_testing"
- update_hdlist "$distribdir/$distrorelease/$arch/media/$section/updates"
- update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/updates_testing"
- update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/updates"
- done
- update_hdlist "$distribdir/$distrorelease/SRPMS/$section/updates_testing"
- update_hdlist "$distribdir/$distrorelease/SRPMS/$section/updates"
- update_common_MD5SUM $distrorelease
- mirror_repository $distrorelease
-}
+#function post()
+#{
+# for arch in $arches
+# do
+# update_hdlist "$distribdir/$distrorelease/$arch/media/$section/updates_testing"
+# update_hdlist "$distribdir/$distrorelease/$arch/media/$section/updates"
+# update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/updates_testing"
+# update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/updates"
+# done
+# update_hdlist "$distribdir/$distrorelease/SRPMS/$section/updates_testing"
+# update_hdlist "$distribdir/$distrorelease/SRPMS/$section/updates"
+# update_common_MD5SUM $distrorelease
+# mirror_repository $distrorelease
+#}
+echo ""
+echo "moving binary and source rpms:"
mailcontent=$(mktemp)
for arch in $arches
do
+ echo ""
+ echo "$arch:"
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
+echo ""
+echo "SRPMS:"
+echo "$srcpkg"
+echo ""
$dryrun mv -v -f "$distribdir/$distrorelease/SRPMS/$section/updates_testing/$srcpkg" "$distribdir/$distrorelease/SRPMS/$section/updates/" >> "$output"
if [ -n "$dryrun" ]
then
cat "$mailcontent"
else
- /usr/bin/mailx -s "mga-move-update $distrorelease $section $srcname" -S "from=moveupdate_mailfrom" "$moveupdate_mailto" < "$mailcontent"
- post
+ /usr/bin/mailx -s "mga-move-update $distrorelease $section $srcname" -S "from=$moveupdate_mailfrom" "$moveupdate_mailto" < "$mailcontent"
+#
+# (tmb) dont do post before all rpms are moved, call update_hdlists manually
+# post
fi
rm -f "$mailcontent"
-
diff --git a/mgatools.conf b/mgatools.conf
index 6467b35..86964b8 100644
--- a/mgatools.conf
+++ b/mgatools.conf
@@ -10,7 +10,7 @@ fi
moveupdate_mailfrom="$requestuser <root@mageia.org>"
distribdir=/distrib/bootstrap/distrib
finaldistribdir=/distrib/mirror/distrib
-distroreleases='1'
+distroreleases='1 2 3'
distrosections='core nonfree tainted'
arches='i586 x86_64'
mirror_rsync_options="--dry-run --delete -alH"
diff --git a/update_hdlists b/update_hdlists
new file mode 100755
index 0000000..e046a22
--- /dev/null
+++ b/update_hdlists
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 2 ]
+then
+ echo 'Usage: update_hdlists distrorelease section' >&2
+ exit 1
+fi
+
+distrorelease="$1"
+section="$2"
+
+#if ! inlist "$distrorelease" "$distroreleases"
+#then
+# echo "Incorrect distrorelease $distrorelease" >&2
+# exit 1
+#fi
+
+if ! inlist "$section" "$distrosections"
+then
+ echo "Incorrect section $section" >&2
+ exit 1
+fi
+
+for arch in $arches
+ do
+ update_hdlist "$distribdir/$distrorelease/$arch/media/$section/updates_testing"
+ update_hdlist "$distribdir/$distrorelease/$arch/media/$section/updates"
+ update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/updates_testing"
+ update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/updates"
+ done
+ update_hdlist "$distribdir/$distrorelease/SRPMS/$section/updates_testing"
+ update_hdlist "$distribdir/$distrorelease/SRPMS/$section/updates"
+ update_common_MD5SUM $distrorelease
+ mirror_repository $distrorelease
diff --git a/update_hdlists_any b/update_hdlists_any
new file mode 100755
index 0000000..4687c07
--- /dev/null
+++ b/update_hdlists_any
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 3 ]
+then
+ echo 'Usage: update_hdlists_any distro media section' >&2
+ exit 1
+fi
+
+distro="$1"
+media="$2"
+section="$3"
+
+
+if ! inlist "$media" "$distrosections"
+then
+ echo "Incorrect section $media" >&2
+ exit 1
+fi
+
+for arch in $arches
+ do
+ update_hdlist "$distribdir/$distro/$arch/media/$media/$section"
+ update_hdlist "$distribdir/$distro/$arch/media/debug/$media/$section"
+ done
+
+ update_hdlist "$distribdir/$distro/SRPMS/$media/$section"
+ update_common_MD5SUM $distro
+ mirror_repository $distro
diff --git a/update_hdlists_backports b/update_hdlists_backports
new file mode 100755
index 0000000..c9a17cb
--- /dev/null
+++ b/update_hdlists_backports
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 2 ]
+then
+ echo 'Usage: update_hdlists_backports distrorelease section' >&2
+ exit 1
+fi
+
+distrorelease="$1"
+section="$2"
+
+#if ! inlist "$distrorelease" "$distroreleases"
+#then
+# echo "Incorrect distrorelease $distrorelease" >&2
+# exit 1
+#fi
+
+if ! inlist "$section" "$distrosections"
+then
+ echo "Incorrect section $section" >&2
+ exit 1
+fi
+
+for arch in $arches
+ do
+ update_hdlist "$distribdir/$distrorelease/$arch/media/$section/backports_testing"
+ update_hdlist "$distribdir/$distrorelease/$arch/media/$section/backports"
+ update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/backports_testing"
+ update_hdlist "$distribdir/$distrorelease/$arch/media/debug/$section/backports"
+ done
+
+ update_hdlist "$distribdir/$distrorelease/SRPMS/$section/backports_testing"
+ update_hdlist "$distribdir/$distrorelease/SRPMS/$section/backports"
+ update_common_MD5SUM $distrorelease
+ mirror_repository $distrorelease
diff --git a/update_hdlists_cauldron b/update_hdlists_cauldron
new file mode 100755
index 0000000..6c2241f
--- /dev/null
+++ b/update_hdlists_cauldron
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+. /usr/share/mgatools/functions
+
+if [ $# != 1 ]
+then
+ echo 'Usage: update_hdlists_cauldron section' >&2
+ exit 1
+fi
+
+section="$1"
+
+if ! inlist "$section" "$distrosections"
+then
+ echo "Incorrect section $section" >&2
+ exit 1
+fi
+
+for arch in $arches
+ do
+ update_hdlist "$distribdir/cauldron/$arch/media/$section/updates_testing"
+ update_hdlist "$distribdir/cauldron/$arch/media/$section/release"
+ update_hdlist "$distribdir/cauldron/$arch/media/debug/$section/updates_testing"
+ update_hdlist "$distribdir/cauldron/$arch/media/debug/$section/release"
+ done
+
+ update_hdlist "$distribdir/cauldron/SRPMS/$section/updates_testing"
+ update_hdlist "$distribdir/cauldron/SRPMS/$section/release"
+ update_common_MD5SUM cauldron
+ mirror_repository cauldron