From 257774a0936e12c61d192168bcb732e42d1ffedd Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Thu, 18 Jun 2015 14:40:00 +0100 Subject: [PATCH] make `weave attach|expose|detach|hide` show IP addresses The output contains one IP address for each addr (i.e. [ip:] | net: | net:default) supplied on the command line; or, if none was specified, a single address from the default IPAM subnet. We don't want `weave run` to output the addresses, since it is meant to (only) output the container id. Hence we redirect the `attach` output to stderr in that case. Closes #954. --- weave | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/weave b/weave index b36721b0..e73a4530 100755 --- a/weave +++ b/weave @@ -143,7 +143,7 @@ if [ "$1" = "run" ] ; then collect_cidr_args "$@" shift $CIDR_ARG_COUNT CONTAINER=$(docker $DOCKER_CLIENT_ARGS run $DNS_ARGS -d "$@") - exec_remote attach $CIDR_ARGS --or-die $CONTAINER + exec_remote attach $CIDR_ARGS --or-die $CONTAINER >/dev/null echo $CONTAINER exit 0 elif [ "$1" != "--local" ] ; then @@ -850,6 +850,14 @@ ipam_cidrs_or_die() { fi } +show_addrs() { + addrs= + for cidr in "$@" ; do + addrs="$addrs ${cidr%/*}" + done + echo $addrs +} + ###################################################################### # weave proxy helpers ###################################################################### @@ -1170,6 +1178,7 @@ case "$COMMAND" in ipam_cidrs$ATTACH_TYPE $CONTAINER $CIDR_ARGS with_container_netns$ATTACH_TYPE $CONTAINER attach $ALL_CIDRS >/dev/null when_dns_running with_container_fqdn $CONTAINER put_dns_fqdn $ALL_CIDRS + show_addrs $ALL_CIDRS ;; detach) collect_cidr_args "$@" @@ -1182,6 +1191,7 @@ case "$COMMAND" in for CIDR in $IPAM_CIDRS ; do call_weave DELETE /ip/$CONTAINER/${CIDR%/*} done + show_addrs $ALL_CIDRS ;; dns-add) collect_ip_args "$@" @@ -1229,6 +1239,7 @@ case "$COMMAND" in fi fi done + show_addrs $ALL_CIDRS ;; hide) collect_cidr_args "$@" @@ -1246,6 +1257,7 @@ case "$COMMAND" in for CIDR in $IPAM_CIDRS ; do call_weave DELETE /ip/weave:expose/${CIDR%/*} done + show_addrs $ALL_CIDRS ;; stop) [ $# -eq 0 ] || usage