Mercurial > hg
view contrib/dockerlib.sh @ 27396:64c584070fc7
run-tests: show scheduling with --showchannels
This gives one line of output per second with one column per -j level
that allows analyzing test scheduling problems. First 24 seconds of
output at -j 30 looks like this:
0 .
1 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = s.
2 c c o c r l g r s s = c p = c h c a h c g c h c b c c l l c ss
3 h o b o e a e u u u c o a h o e o c g o l h g h u o = a o = s
4 e n s n b r n n b b m t g n l n l w n o e w e n n e r g i .
5 c t o = a g d - r r = m c w v p v . e v g c e c d v x g . m
6 k r l r s e o t e e b a h e e . e . b e . k b k l e t e . p
7 - i e e e f c e p p u n b b r . r . - r . - - - e r e f . o .
8 p b t v - i . s o o n d o d t . t . c t . c s = 2 t n i . r
9 y - e s c l . t - . d - m i - . - . o - . o y r - - s l . t
10 3 p - e h e . s s . l t b r s . s . m s . d m e f s i e . .
11 - e c t e s . . v . e e . . v . v . m v . e r n o v o s . .
12 c r h . c - . . n . 2 m . . n . n . a n . . e a r n n . . .
13 o f e . k u . . . . - p . . - . - . n - . . v m m - . . . .
14 m . c . - p . . . . e l . . s . m . d s . . . e a e . . . .
15 p . k . r d . . . . x a . . i . o . s o . . . - t n . . . .
16 a . h . e a . . . . c t . . n . v . . u . . . m . c . . . .
17 t . e . s t . . . . h e . . k . e . . r . . . e . o . . . .
18 . . a . t e . . . . a . . . . . . . . c . . . r . d . . . .
19 . . d . o . . . . . n . . . . . . . . e . . . g . i . . . .
20 . . s . r . . . . . g . . . . . . . . . . . . e . n . . . .
21 . . . . e . . . . . e . . . . . . . . . . . . 2 . g . . . .
22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24 . . . . . . . . . . . . . . . . . . . . . . . . . = . . . . ^C
Test names read off vertically, beginning with '='. Idle time (not
shown) appears as blank space.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Mon, 07 Dec 2015 16:16:06 -0600 |
parents | cea1473ba468 |
children | a3ac1ea611ce |
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 --tag $CONTAINER - }