contrib/dockerrpm
author Gregory Szorc <gregory.szorc@gmail.com>
Sun, 22 Nov 2015 14:18:42 -0800
changeset 27108 717b75ae5bb0
parent 24969 227b9b2a57a3
child 27641 1292700d31b5
permissions -rwxr-xr-x
color: evaluate labels at write time Previously, we stored 2-tuples of text and label in a list and then evaluated the labels when the buffer was popped. After this patch, we evaluate the labels at write time and do a simple join when the buffer is popped. This patch appears to have no impact on performance, despite creating fewer 2-tuples and having fewer strings hanging around in memory.

#!/bin/bash -e

. $(dirname $0)/dockerlib.sh

BUILDDIR=$(dirname $0)
export ROOTDIR=$(cd $BUILDDIR/..; pwd)

checkdocker

PLATFORM="$1"
shift # extra params are passed to buildrpm

initcontainer $PLATFORM

RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM
contrib/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $*

DSHARED=/mnt/shared
$DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
    rpmbuild --define "_topdir $DSHARED" -ba $DSHARED/SPECS/mercurial.spec --clean

$DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
    createrepo $DSHARED

cat << EOF > $RPMBUILDDIR/mercurial.repo
# Place this file in /etc/yum.repos.d/mercurial.repo
[mercurial]
name=Mercurial packages for $PLATFORM
# baseurl=file://$RPMBUILDDIR/
baseurl=http://hg.example.com/build/$PLATFORM/
skip_if_unavailable=True
gpgcheck=0
enabled=1
EOF

echo
echo "Build complete - results can be found in $RPMBUILDDIR"