4027: Fixup Crunch yet more.
[arvados.git] / docker / mkimage-debootstrap.sh
index b0a370da7d52496567f3df7565904d4e001bd47f..b4010ef4d69e5603d417763bed611fae1f0b4832 100755 (executable)
@@ -86,13 +86,19 @@ if [ ! "$repo" ] || [ ! "$suite" ]; then
 fi
 
 # some rudimentary detection for whether we need to "sudo" our docker calls
-docker=''
-if docker version > /dev/null 2>&1; then
-       docker='docker'
-elif sudo docker version > /dev/null 2>&1; then
-       docker='sudo docker'
-elif command -v docker > /dev/null 2>&1; then
-       docker='docker'
+set +e
+docker=`which docker.io`
+if [[ "$docker" == "" ]]; then
+       docker=`which docker`
+fi
+set -e
+
+if $docker version > /dev/null 2>&1; then
+       docker="$docker"
+elif sudo $docker version > /dev/null 2>&1; then
+       docker="sudo $docker"
+elif command -v $docker > /dev/null 2>&1; then
+       docker="$docker"
 else
        echo >&2 "warning: either docker isn't installed, or your current user cannot run it;"
        echo >&2 "         this script is not likely to work as expected"
@@ -192,7 +198,7 @@ if [ "$justTar" ]; then
        sudo tar --numeric-owner -caf "$repo" .
 else
        # create the image (and tag $repo:$suite)
-       sudo tar --numeric-owner -c . | $docker import - $repo $suite
+       sudo tar --numeric-owner -c . | $docker import - $repo:$suite
        
        # test the image
        $docker run -i -t $repo:$suite echo success
@@ -202,25 +208,25 @@ else
                        Debian)
                                if [ "$suite" = "$debianStable" -o "$suite" = 'stable' ] && [ -r etc/debian_version ]; then
                                        # tag latest
-                                       $docker tag $repo:$suite $repo latest
+                                       $docker tag $repo:$suite $repo:latest
                                        
                                        if [ -r etc/debian_version ]; then
                                                # tag the specific debian release version (which is only reasonable to tag on debian stable)
                                                ver=$(cat etc/debian_version)
-                                               $docker tag $repo:$suite $repo $ver
+                                               $docker tag $repo:$suite $repo:$ver
                                        fi
                                fi
                                ;;
                        Ubuntu)
                                if [ "$suite" = "$ubuntuLatestLTS" ]; then
                                        # tag latest
-                                       $docker tag $repo:$suite $repo latest
+                                       $docker tag $repo:$suite $repo:latest
                                fi
                                if [ -r etc/lsb-release ]; then
                                        lsbRelease="$(. etc/lsb-release && echo "$DISTRIB_RELEASE")"
                                        if [ "$lsbRelease" ]; then
                                                # tag specific Ubuntu version number, if available (12.04, etc.)
-                                               $docker tag $repo:$suite $repo $lsbRelease
+                                               $docker tag $repo:$suite $repo:$lsbRelease
                                        fi
                                fi
                                ;;