diff options
author | Colin Guthrie <colin@mageia.org> | 2014-07-28 23:23:06 +0100 |
---|---|---|
committer | Colin Guthrie <colin@mageia.org> | 2014-07-29 01:42:38 +0100 |
commit | 29a5fca67c79bb7bfc7e7b3002d1be4eee607203 (patch) | |
tree | 8eb639703b8bc1c6e405800f7849171038d21f0e | |
parent | 5acc38d8ff13f871d5b6de3a80a05bf349f1aee8 (diff) | |
download | mgatools-29a5fca67c79bb7bfc7e7b3002d1be4eee607203.tar mgatools-29a5fca67c79bb7bfc7e7b3002d1be4eee607203.tar.gz mgatools-29a5fca67c79bb7bfc7e7b3002d1be4eee607203.tar.bz2 mgatools-29a5fca67c79bb7bfc7e7b3002d1be4eee607203.tar.xz mgatools-29a5fca67c79bb7bfc7e7b3002d1be4eee607203.zip |
Add some utility scripts to update hdlists.
These are the same scripts that were present on the live server and have
thus proven useful.
That said, common code has been factored out and centralised and the syntax
has been neatened up.
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | functions | 40 | ||||
-rwxr-xr-x | mga-hdlists | 23 | ||||
-rwxr-xr-x | mga-hdlists-backports | 23 | ||||
-rwxr-xr-x | mga-hdlists-cauldron | 22 | ||||
-rwxr-xr-x | mga-hdlists-updates | 23 |
6 files changed, 135 insertions, 0 deletions
@@ -10,6 +10,10 @@ install: $(ALL) install mgaiso-addmd5 $(DESTDIR)/usr/bin install mgaiso-checkmd5 $(DESTDIR)/usr/bin install clean-rpmsrate $(DESTDIR)/usr/bin + install mga-hdlists $(DESTDIR)/usr/bin + install mga-hdlists-cauldron $(DESTDIR)/usr/bin + install mga-hdlists-updates $(DESTDIR)/usr/bin + install mga-hdlists-backports $(DESTDIR)/usr/bin install -d $(DESTDIR)/$(PERL_VENDORLIB)/MGATools for i in rpmsrate.pm iso.pm; do install pm/MGATools/$$i $(DESTDIR)/$(PERL_VENDORLIB)/MGATools/; done @@ -35,6 +35,28 @@ function inlist() return 1 } +function valid_release() +{ + [ "cauldron" = "$1" ] && return 0 + inlist "$1" "$distroreleases" && return 0 + echo "Invalid release '$1'" >&2 + return 1 +} + +function valid_section() +{ + inlist "$1" "$distrosections" && return 0 + echo "Invalid section '$1'" >&2 + return 1 +} + +function valid_subsection() +{ + inlist "$1" "$distrosubsections" && return 0 + echo "Invalid subsection '$1'" >&2 + return 1 +} + function update_hdlist() { repository="$1" @@ -43,6 +65,24 @@ function update_hdlist() /usr/bin/genhdlist2 -v --versioned --allow-empty-media $ofdeps "$repository" } +function update_distro_hdlist() +{ + if [ "$1" = "--nocheck" ]; then + shift + else + valid_release "$1" && valid_section "$2" && valid_subsection "$3" || return 1 + fi + release="$1" + section="$2" + subsection="$3" + + for arch in $arches; do + update_hdlist "$distribdir/$release/$arch/media/$section/$subsection" + update_hdlist "$distribdir/$release/$arch/media/debug/$section/$subsection" + done + update_hdlist "$distribdir/$release/SRPMS/$section/$subsection" +} + function update_common_MD5SUM() { distrorelease="$1" diff --git a/mga-hdlists b/mga-hdlists new file mode 100755 index 0000000..f14407f --- /dev/null +++ b/mga-hdlists @@ -0,0 +1,23 @@ +#!/bin/sh + +set -e + +. /usr/share/mgatools/functions + +if [ "$1" = "--dry-run" ]; then + dryrun=echo + shift +fi + +if [ $# != 3 ]; then + echo "Usage: $0 [--dry-run] <release> <section> <subsection>" >&2 + exit 1 +fi + +release="$1" +section="$2" +subsection="$3" + +update_distro_hdlist "$release" "$section" "$subsection" +update_common_MD5SUM "$release" +mirror_repository "$release" diff --git a/mga-hdlists-backports b/mga-hdlists-backports new file mode 100755 index 0000000..6a0c19b --- /dev/null +++ b/mga-hdlists-backports @@ -0,0 +1,23 @@ +#!/bin/sh + +set -e + +. /usr/share/mgatools/functions + +if [ "$1" = "--dry-run" ]; then + dryrun=echo + shift +fi + +if [ $# != 2 ]; then + echo "Usage: $0 [--dry-run] <release> <section>" >&2 + exit 1 +fi + +release="$1" +section="$2" + +update_distro_hdlist "$release" "$section" "backports_testing" +update_distro_hdlist "$release" "$section" "backports" +update_common_MD5SUM "$release" +mirror_repository "$release" diff --git a/mga-hdlists-cauldron b/mga-hdlists-cauldron new file mode 100755 index 0000000..dc4404c --- /dev/null +++ b/mga-hdlists-cauldron @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e + +. /usr/share/mgatools/functions + +if [ "$1" = "--dry-run" ]; then + dryrun=echo + shift +fi + +if [ $# != 2 ]; then + echo "Usage: $0 [--dry-run] <section>" >&2 + exit 1 +fi + +section="$1" + +update_distro_hdlist "cauldron" "$section" "updates_testing" +update_distro_hdlist "cauldron" "$section" "release" +update_common_MD5SUM "cauldron" +mirror_repository "cauldron" diff --git a/mga-hdlists-updates b/mga-hdlists-updates new file mode 100755 index 0000000..66f3e7e --- /dev/null +++ b/mga-hdlists-updates @@ -0,0 +1,23 @@ +#!/bin/sh + +set -e + +. /usr/share/mgatools/functions + +if [ "$1" = "--dry-run" ]; then + dryrun=echo + shift +fi + +if [ $# != 2 ]; then + echo "Usage: $0 [--dry-run] <release> <section>" >&2 + exit 1 +fi + +release="$1" +section="$2" + +update_distro_hdlist "$release" "$section" "updates_testing" +update_distro_hdlist "$release" "$section" "updates" +update_common_MD5SUM "$release" +mirror_repository "$release" |