[arch-dev-public] making a devtools release
Eric Bélanger
snowmaniscool at gmail.com
Tue Sep 1 23:08:49 EDT 2009
On Tue, Sep 1, 2009 at 8:43 AM, Allan McRae<allan at archlinux.org> wrote:
> Allan McRae wrote:
>>
>> Eric Bélanger wrote:
>>>
>>> On Tue, Sep 1, 2009 at 1:43 AM, Allan McRae<allan at archlinux.org> wrote:
>>>
>>>>
>>>> Eric Bélanger wrote:
>>>> At least two are not yet, but I have them on a local working branch:
>>>> - makechrootpkg: fixed copying of .install file to chroot for split
>>>> packages
>>>> - devtools: clean up of commitpkg
>>>>
>>>> Let me know if there are any others that I missed.
>>>>
>>>
>>> These are the only ones that haven't been commited yet.
>>>
>>
>> Great - I will push those when I get home from the office.
>
> All pushed now.
> @Eric: you should look into creating git format patches. It makes applying
> them much easier (especially keeping attribution data - I didn't know how to
> keep you as the author so I added a Patch-by line).
>
> Allan
>
Hi,
Here's a patch inline and attachedfor split support in commitpkg. It's
in git format. Let me know if the patch is incorrect git-wise. BTW,
I haven't tested it as I don't have any split package to update.
Eric
======
>From 58ae91541350c5f7868420c3f09d8876ed5c406d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Eric=20B=E9langer?= <snowmaniscool at gmail.com>
Date: Tue, 1 Sep 2009 22:35:25 -0400
Subject: [PATCH] commitpkg: Added split package support
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
All packages created by the PKGBUILD are uploaded to the staging
directory. The output and svn commit messages uses pkgbase instead of
pkgname.
Signed-off-by: Eric Bélanger <snowmaniscool at gmail.com>
---
commitpkg | 112 +++++++++++++++++++++++++++++++-----------------------------
1 files changed, 58 insertions(+), 54 deletions(-)
diff --git a/commitpkg b/commitpkg
index a7078e7..4341507 100755
--- a/commitpkg
+++ b/commitpkg
@@ -26,76 +26,80 @@ if [ -z "$CARCH" ]; then
fi
source PKGBUILD
-pkgfile=${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}
-anypkgfile=${pkgname}-${pkgver}-${pkgrel}-any${PKGEXT}
+pkgbase=${pkgbase:-${pkgname[0]}}
-if [ ! -f $pkgfile ]; then
- if [ -f $PKGDEST/$pkgfile ]; then
- pkgfile=$PKGDEST/$pkgfile
- anypkgfile=$PKGDEST/$anypkgfile
- elif [ -f $anypkgfile ]; then
- pkgfile=$anypkgfile
- CARCH=any
- elif [ -f $PKGDEST/$anypkgfile ]; then
- pkgfile=$PKGDEST/$anypkgfile
- CARCH=any
- else
- echo "File $pkgfile doesn't exist"
- exit 1
+for _pkgname in ${pkgname[@]}; do
+ pkgfile=${_pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT}
+ anypkgfile=${_pkgname}-${pkgver}-${pkgrel}-any${PKGEXT}
+
+ if [ ! -f $pkgfile ]; then
+ if [ -f $PKGDEST/$pkgfile ]; then
+ pkgfile=$PKGDEST/$pkgfile
+ anypkgfile=$PKGDEST/$anypkgfile
+ elif [ -f $anypkgfile ]; then
+ pkgfile=$anypkgfile
+ CARCH=any
+ elif [ -f $PKGDEST/$anypkgfile ]; then
+ pkgfile=$PKGDEST/$anypkgfile
+ CARCH=any
+ else
+ echo "File $pkgfile doesn't exist"
+ exit 1
+ fi
fi
-fi
# set up repo-specific opts depending on how we were called
-server="gerolde.archlinux.org"
-if [ "$cmd" == "extrapkg" ]; then
- repo="extra"
-elif [ "$cmd" == "corepkg" ]; then
- repo="core"
-elif [ "$cmd" == "testingpkg" ]; then
- repo="testing"
-elif [ "$cmd" == "communitypkg" ]; then
- repo="community"
- server="aur.archlinux.org"
-else
- if [ $# -eq 0 ]; then
- echo "usage: commitpkg <reponame> [-l limit] [commit message]"
- exit 1
+ server="gerolde.archlinux.org"
+ if [ "$cmd" == "extrapkg" ]; then
+ repo="extra"
+ elif [ "$cmd" == "corepkg" ]; then
+ repo="core"
+ elif [ "$cmd" == "testingpkg" ]; then
+ repo="testing"
+ elif [ "$cmd" == "communitypkg" ]; then
+ repo="community"
+ server="aur.archlinux.org"
+ else
+ if [ $# -eq 0 ]; then
+ echo "usage: commitpkg <reponame> [-l limit] [commit message]"
+ exit 1
+ fi
+ repo="$1"
+ shift
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
+ unset scpopts
+ if [ "$1" = "-l" ]; then
+ scpopts="$1 $2"
+ shift 2
+ fi
# combine what we know into a variable
-uploadto="staging/${repo}/$(basename ${pkgfile})"
-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
+ uploadto="staging/${repo}/$(basename ${pkgfile})"
+ 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
-if [ $? -ne 0 ]; then
- echo "Cancelled"
- exit 1
-fi
-echo "===> Uploaded $pkgfile"
+ if [ $? -ne 0 ]; then
+ echo "Cancelled"
+ exit 1
+ fi
+ echo "===> Uploaded $pkgfile"
+done
if [ "$1" != "" ]; then
- svn commit -m "upgpkg: $pkgname $pkgver-$pkgrel
+ svn commit -m "upgpkg: $pkgbase $pkgver-$pkgrel
$1" > /dev/null
if [ $? -ne 0 ]; then
echo "Cancelled"
exit 1
fi
- echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel
+ echo "===> Commited with \"upgpkg: $pkgbase $pkgver-$pkgrel
$1\" message"
else
svn commit >/dev/null
@@ -103,7 +107,7 @@ else
echo "Cancelled"
exit 1
fi
- echo "===> Commited with \"upgpkg: $pkgname $pkgver-$pkgrel\" message"
+ echo "===> Commited with \"upgpkg: $pkgbase $pkgver-$pkgrel\" message"
fi
archrelease $repo-$CARCH
--
1.6.4.1
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-commitpkg-Added-split-package-support.patch
Type: text/x-patch
Size: 4686 bytes
Desc: not available
URL: <http://mailman.archlinux.org/pipermail/arch-dev-public/attachments/20090901/6dd86c8f/attachment-0001.bin>
More information about the arch-dev-public
mailing list