diff --git a/weave b/weave index 2a9f1a6f..ba21800b 100755 --- a/weave +++ b/weave @@ -387,6 +387,15 @@ uname -s -r | sed -n 's|^\([^ ]*\) \([0-9]\+\)\.\([0-9]\+\).*|\1 \2 \3|p' | { fi } +ask_version() { + if ! DOCKERIMAGE=$(docker inspect --format='{{ .Image }}' $1 2>/dev/null) ; then + if ! DOCKERIMAGE=$(docker inspect --format='{{ .Id }}' $2 2>/dev/null) ; then + echo "Unable to find $2 image." >&2 + fi + fi + [ -n "$DOCKERIMAGE" ] && docker run --rm $DOCKERIMAGE --version +} + if ! command_exists ip ; then echo "ERROR: ip utility is missing. Please install it." >&2 exit 1 @@ -482,20 +491,8 @@ case "$COMMAND" in version) [ $# -eq 0 ] || usage echo weave script $SCRIPT_VERSION - if ! DOCKERIMAGE=$(docker inspect --format='{{ .Image }}' $CONTAINER_NAME 2>/dev/null) ; then - if ! DOCKERIMAGE=$(docker inspect --format='{{ .Id }}' $IMAGE 2>/dev/null) ; then - echo "Unable to find $IMAGE image." >&2 - exit 1 - fi - fi - docker run --rm $DOCKERIMAGE --version - if ! DOCKERIMAGE=$(docker inspect --format='{{ .Image }}' $DNS_CONTAINER_NAME 2>/dev/null) ; then - if ! DOCKERIMAGE=$(docker inspect --format='{{ .Id }}' $DNS_IMAGE 2>/dev/null) ; then - echo "Unable to find $DNS_IMAGE image." >&2 - exit 1 - fi - fi - docker run --rm $DOCKERIMAGE --version + ask_version $CONTAINER_NAME $IMAGE + ask_version $DNS_CONTAINER_NAME $DNS_IMAGE ;; run) [ $# -gt 0 ] || usage