contrib/dockerdeb
author Pierre-Yves David <pierre-yves.david@fb.com>
Mon, 08 Feb 2016 22:58:15 +0000
changeset 28140 276644ae9e8d
parent 27210 9b86d29867a5
child 28987 023f47c5ce79
permissions -rwxr-xr-x
destutil: allow to disable the "on head check" in destmerge 'hg merge' refuses to pick a default destination if the working copy is not on a head. This is a very sensible default for 'hg merge' but 'hg rebase' should work in this situation. So we introduce a way to disable this check. It will soon be used by rebase.

#!/bin/bash -eu

. $(dirname $0)/dockerlib.sh
. $(dirname $0)/packagelib.sh

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

checkdocker

DISTID="$1"
CODENAME="$2"
PLATFORM="$1-$2"
shift # extra params are passed to build process

OUTPUTDIR=${OUTPUTDIR:=$ROOTDIR/packages/$PLATFORM}

initcontainer $PLATFORM

# debuild only appears to be able to save built debs etc to .., so we
# have to share the .. of the current directory with the docker
# container and hope it's writable. Whee.
dn=$(basename $PWD)

if [ $(uname) = "Darwin" ] ; then
    $DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
            sh -c "cd /mnt/$dn && make clean && make local"
fi
$DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
  sh -c "cd /mnt/$dn && DEB_BUILD_OPTIONS='${DEB_BUILD_OPTIONS:=}' contrib/builddeb --build --distid $DISTID --codename $CODENAME"
contrib/builddeb --cleanup --distid $DISTID --codename $CODENAME
if [ $(uname) = "Darwin" ] ; then
    $DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
            sh -c "cd /mnt/$dn && make clean"
fi