Mercurial > hg
view contrib/dockerlib.sh @ 34938:aa05b95949fe stable
tests: adjust hooks for Windows
I'm not sure why these weren't working on Windows. The failures were generally
in the style of:
- remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b: 1 -> 0
+ remote: "phase-move: $HG_NODE: $HG_OLDPHASE -> $HG_PHASE"
and
- abort: pretxnclose-bookmark.force-forward hook exited with status 1
- [255]
+ abort: pretxnclose-bookmark.force-public hook exited with status 255
+ [255]
These failures originated in ee5f0d047b41::f6d17075608f.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 20 Oct 2017 23:01:56 -0400 |
parents | a3ac1ea611ce |
children | 1335bbfb066f |
line wrap: on
line source
#!/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; } $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; } } # 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 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 echo RUN groupadd $DBUILDUSER -g `id -g` -o echo RUN useradd $DBUILDUSER -u `id -u` -g $DBUILDUSER -o fi ) | $DOCKER build --build-arg http_proxy --build-arg https_proxy --tag $CONTAINER - }