##// END OF EJS Templates
revlog: extract function for getting node from known-to-exist rev...
revlog: extract function for getting node from known-to-exist rev Many of the calls to index_node() (which converts a rev to a nodeid) are done with a rev that's know to exist. If the function fails, there's something really wrong and we should just abort. This was done in only one place. This patch starts by extracting that code to a function that we can reuse in later patches. Differential Revision: https://phab.mercurial-scm.org/D3456

File last commit:

r33598:a3ac1ea6 stable
r37877:a91f31a1 default
Show More
dockerlib.sh
42 lines | 1.7 KiB | application/x-sh | BashLexer
Augie Fackler
dockerlib: start extracting common functions for setting up docker...
r24968 #!/bin/sh -eu
# This function exists to set up the DOCKER variable and verify that
# it's the binary we expect. It also verifies that the docker service
# is running on the system and we can talk to it.
function checkdocker() {
if which docker.io >> /dev/null 2>&1 ; then
DOCKER=docker.io
elif which docker >> /dev/null 2>&1 ; then
DOCKER=docker
else
echo "Error: docker must be installed"
exit 1
fi
$DOCKER -h 2> /dev/null | grep -q Jansens && { echo "Error: $DOCKER is the Docking System Tray - install docker.io instead"; exit 1; }
Pierre-Yves David
docker: match more version of 'hg docker version' (issue4967)...
r27103 $DOCKER version | grep -Eq "^Client( version)?:" || { echo "Error: unexpected output from \"$DOCKER version\""; exit 1; }
$DOCKER version | grep -Eq "^Server( version)?:" || { echo "Error: could not get docker server version - check it is running and your permissions"; exit 1; }
Augie Fackler
dockerlib: start extracting common functions for setting up docker...
r24968 }
Augie Fackler
dockerlib: extract initcontainer() method...
r24969
# Construct a container and leave its name in $CONTAINER for future use.
function initcontainer() {
[ "$1" ] || { echo "Error: platform name must be specified"; exit 1; }
DFILE="$ROOTDIR/contrib/docker/$1"
[ -f "$DFILE" ] || { echo "Error: docker file $DFILE not found"; exit 1; }
CONTAINER="hg-dockerrpm-$1"
DBUILDUSER=build
(
cat $DFILE
Augie Fackler
dockerlib: fix initcontainer for boot2docker users...
r24970 if [ $(uname) = "Darwin" ] ; then
# The builder is using boot2docker on OS X, so we're going to
# *guess* the uid of the user inside the VM that is actually
# running docker. This is *very likely* to fail at some point.
echo RUN useradd $DBUILDUSER -u 1000
else
Mathias De Maré
dockerlib: short form for non-unique uid/gid for CentOS 5 compat (issue4977)...
r27245 echo RUN groupadd $DBUILDUSER -g `id -g` -o
echo RUN useradd $DBUILDUSER -u `id -u` -g $DBUILDUSER -o
Augie Fackler
dockerlib: fix initcontainer for boot2docker users...
r24970 fi
Mathias De Maré
docker: pass proxy arguments to docker process...
r33598 ) | $DOCKER build --build-arg http_proxy --build-arg https_proxy --tag $CONTAINER -
Augie Fackler
dockerlib: extract initcontainer() method...
r24969 }