From d4dbb527dcb20e987dec75ddcc6db595f71ea1b2 Mon Sep 17 00:00:00 2001 From: Aaron Griffin Date: Tue, 3 Mar 2009 09:00:56 -0800 Subject: Rename extrapkg to commitpkg Also allow for uploads to any user-specified repo name Signed-off-by: Aaron Griffin --- Makefile | 12 +++--- commitpkg | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ extrapkg | 119 ---------------------------------------------------------- 3 files changed, 133 insertions(+), 124 deletions(-) create mode 100755 commitpkg delete mode 100755 extrapkg diff --git a/Makefile b/Makefile index 384e7e0..f0a4718 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,14 @@ all: install: - # extrapkg/checkpkg and friends + # commitpkg/checkpkg and friends mkdir -p $(DESTDIR)/usr/bin install -m 755 checkpkg $(DESTDIR)/usr/bin - install -m 755 extrapkg $(DESTDIR)/usr/bin - ln -sf extrapkg $(DESTDIR)/usr/bin/corepkg - ln -sf extrapkg $(DESTDIR)/usr/bin/testingpkg - ln -sf extrapkg $(DESTDIR)/usr/bin/unstablepkg + install -m 755 commitpkg $(DESTDIR)/usr/bin + ln -sf commitpkg $(DESTDIR)/usr/bin/commitpkg + ln -sf commitpkg $(DESTDIR)/usr/bin/corepkg + ln -sf commitpkg $(DESTDIR)/usr/bin/testingpkg + ln -sf commitpkg $(DESTDIR)/usr/bin/unstablepkg # arch{co,release,rm} install -m 755 archco $(DESTDIR)/usr/bin install -m 755 archrelease $(DESTDIR)/usr/bin @@ -23,6 +24,7 @@ install: uninstall: # remove all files we installed rm $(DESTDIR)/usr/bin/checkpkg + rm $(DESTDIR)/usr/bin/commitpkg rm $(DESTDIR)/usr/bin/extrapkg rm $(DESTDIR)/usr/bin/corepkg rm $(DESTDIR)/usr/bin/testingpkg diff --git a/commitpkg b/commitpkg new file mode 100755 index 0000000..c434974 --- /dev/null +++ b/commitpkg @@ -0,0 +1,126 @@ +#!/bin/bash + +# Source makepkg.conf; fail if it is not found +if [ -r "/etc/makepkg.conf" ]; then + source "/etc/makepkg.conf" +else + echo "/etc/makepkg.conf not found!" + exit 1 +fi + +# Source user-specific makepkg.conf overrides +if [ -r ~/.makepkg.conf ]; then + source ~/.makepkg.conf +fi + +cmd=`basename $0` + +if [ ! -f PKGBUILD ]; then + echo "No PKGBUILD file" + exit 1 +fi + +if [ -z "$CARCH" ]; then + echo "CARCH must be set to a recognized value!" + exit 1 +fi + +source PKGBUILD +pkgfile=${pkgname}-${pkgver}-${pkgrel}-${CARCH}.pkg.tar.gz +oldstylepkgfile=${pkgname}-${pkgver}-${pkgrel}.pkg.tar.gz + +if [ ! -f $pkgfile ]; then + if [ -f $PKGDEST/$pkgfile ]; then + pkgfile=$PKGDEST/$pkgfile + oldstylepkgfile=$PKGDEST/$oldstylepkgfile + elif [ -f $oldstylepkgfile ]; then + pkgfile=$oldstylepkgfile + elif [ -f $PKGDEST/$oldstylepkgfile ]; then + pkgfile=$PKGDEST/$oldstylepkgfile + else + echo "File $pkgfile doesn't exist" + exit 1 + fi +fi + +if [ "$cmd" == "extrapkg" ]; then + repo="extra" +elif [ "$cmd" == "corepkg" ]; then + repo="core" +elif [ "$cmd" == "testingpkg" ]; then + repo="testing" +elif [ "$cmd" == "unstablepkg" ]; then + repo="unstable" +elif [ "$cmd" == "communitypkg" ]; then + repo="community" +else + if [ $# -eq 0 ]; then + echo "usage: commitpkg [-l limit] [commit message]" + exit 1 + fi + repo="$1" + shift +fi + +# see if any limit options were passed, we'll send them to SCP +unset scpopts +if [ "$1" = "-l" ]; then + scpopts="$1 $2" + shift 2 +fi + +if [ "$repo" != "community" ]; then + # combine what we know into a variable + uploadto="staging/${repo}/$(basename ${pkgfile})" + server="archlinux.org" + scp ${scpopts} "${pkgfile}" "${server}:${uploadto}" + if [ "$(md5sum "${pkgfile}" | cut -d' ' -f1)" != "$(ssh ${server} md5sum "${uploadto}" | cut -d' ' -f1)" ]; then + echo "File got corrupted during upload, cancelled." + exit 1 + else + echo "File integrity okay." + fi +else + if [ ! -f ~/.tupkg ]; then + echo "Must configure tupkg via ~/.tupkg, cancelled" + exit 1 + fi + if [ "$(basename $pkgfile)" != "$(basename $oldstylepkgfile)" ]; then + echo "Renaming makepkg3 package for compatibility" + mv $pkgfile $oldstylepkgfile + pkgfile=$oldstylepkgfile + fi + tupkg $pkgfile +fi +if [ $? -ne 0 ]; then + echo "Cancelled" + exit 1 +fi +echo "===> Uploaded $pkgfile" + +if [ "$1" != "" ]; then + svn commit -m "upgpkg: $pkgname $pkgver-$pkgrel + $1" > /dev/null + if [ $? -ne 0 ]; then + echo "Cancelled" + exit 1 + fi + echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel + $1\" message" +else + svn commit -m "upgpkg: $pkgname $pkgver-$pkgrel" > /dev/null + if [ $? -ne 0 ]; then + echo "Cancelled" + exit 1 + fi + echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel\" message" +fi + +archrelease $repo-$CARCH +if [ $? -ne 0 ]; then + echo "Cancelled" + exit 1 +fi +echo "===> Tagged for $repo-$CARCH" + +# vim:ft=sh:ts=4:sw=4:et: diff --git a/extrapkg b/extrapkg deleted file mode 100755 index 161c998..0000000 --- a/extrapkg +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/bash - -# Source makepkg.conf; fail if it is not found -if [ -r "/etc/makepkg.conf" ]; then - source "/etc/makepkg.conf" -else - echo "/etc/makepkg.conf not found!" - exit 1 -fi - -# Source user-specific makepkg.conf overrides -if [ -r ~/.makepkg.conf ]; then - source ~/.makepkg.conf -fi - -cmd=`basename $0` - -if [ ! -f PKGBUILD ]; then - echo "No PKGBUILD file" - exit 1 -fi - -if [ -z "$CARCH" ]; then - echo "CARCH must be set to a recognized value!" - exit 1 -fi - -source PKGBUILD -pkgfile=${pkgname}-${pkgver}-${pkgrel}-${CARCH}.pkg.tar.gz -oldstylepkgfile=${pkgname}-${pkgver}-${pkgrel}.pkg.tar.gz - -if [ ! -f $pkgfile ]; then - if [ -f $PKGDEST/$pkgfile ]; then - pkgfile=$PKGDEST/$pkgfile - oldstylepkgfile=$PKGDEST/$oldstylepkgfile - elif [ -f $oldstylepkgfile ]; then - pkgfile=$oldstylepkgfile - elif [ -f $PKGDEST/$oldstylepkgfile ]; then - pkgfile=$PKGDEST/$oldstylepkgfile - else - echo "File $pkgfile doesn't exist" - exit 1 - fi -fi - -if [ "$cmd" == "extrapkg" ]; then - repo="extra" -elif [ "$cmd" == "corepkg" ]; then - repo="core" -elif [ "$cmd" == "testingpkg" ]; then - repo="testing" -elif [ "$cmd" == "unstablepkg" ]; then - repo="unstable" -elif [ "$cmd" == "communitypkg" ]; then - repo="community" -fi - -# see if any limit options were passed, we'll send them to SCP -unset scpopts -if [ "$1" = "-l" ]; then - scpopts="$1 $2" - shift 2 -fi - -if [ "$repo" != "community" ]; then - # combine what we know into a variable - uploadto="staging/${repo}/$(basename ${pkgfile})" - server="archlinux.org" - scp ${scpopts} "${pkgfile}" "${server}:${uploadto}" - if [ "$(md5sum "${pkgfile}" | cut -d' ' -f1)" != "$(ssh ${server} md5sum "${uploadto}" | cut -d' ' -f1)" ]; then - echo "File got corrupted during upload, cancelled." - exit 1 - else - echo "File integrity okay." - fi -else - if [ ! -f ~/.tupkg ]; then - echo "Must configure tupkg via ~/.tupkg, cancelled" - exit 1 - fi - if [ "$(basename $pkgfile)" != "$(basename $oldstylepkgfile)" ]; then - echo "Renaming makepkg3 package for compatibility" - mv $pkgfile $oldstylepkgfile - pkgfile=$oldstylepkgfile - fi - tupkg $pkgfile -fi -if [ $? -ne 0 ]; then - echo "Cancelled" - exit 1 -fi -echo "===> Uploaded $pkgfile" - -if [ "$1" != "" ]; then - svn commit -m "upgpkg: $pkgname $pkgver-$pkgrel - $1" > /dev/null - if [ $? -ne 0 ]; then - echo "Cancelled" - exit 1 - fi - echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel - $1\" message" -else - svn commit -m "upgpkg: $pkgname $pkgver-$pkgrel" > /dev/null - if [ $? -ne 0 ]; then - echo "Cancelled" - exit 1 - fi - echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel\" message" -fi - -archrelease $repo-$CARCH -if [ $? -ne 0 ]; then - echo "Cancelled" - exit 1 -fi -echo "===> Tagged for $repo-$CARCH" - -# vim:ft=sh:ts=4:sw=4:et: -- cgit v1.2.3-70-g09d2