contrib/dockerrpm
author Siddharth Agarwal <sid0@fb.com>
Wed, 20 Aug 2014 15:07:25 -0700
changeset 22265 fe22d86a8992
parent 21642 76a347bcdb33
child 22438 f5abb231b80a
permissions -rwxr-xr-x
purge: avoid full walks when directories aren't purged If match.traversedir is not None, we're forced to do full walks. However when we aren't purging directories we don't need to set match.traversedir to anything. This speeds up non-full walks such as the one hgwatchman makes possible. For mozilla-central with hgwatchman enabled, 'hg purge --files' goes from 0.88 seconds to 0.22.

#!/bin/bash

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

if which docker.io >> /dev/null ; then
  DOCKER=docker.io
elif which docker >> /dev/null ; then
  DOCKER=docker
fi

$DOCKER build --tag "hg-dockerrpm-$1" - < $BUILDDIR/docker/$1
$DOCKER run --rm -v $ROOTDIR:/hg "hg-dockerrpm-$1" bash -c \
    "cp -a hg hg-build; cd hg-build; make clean local $1; cp packages/$1/* /hg/packages/$1/"