diff options
author | Daniel Baumann <daniel.baumann@open-infrastructure.net> | 2016-12-11 11:06:53 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@open-infrastructure.net> | 2016-12-11 12:13:00 +0000 |
commit | 456efbfa13fb43f8394291aa18e878d8d3acbda1 (patch) | |
tree | a3f360ec78170513659113f58cdebccdf5bd96b5 /lib | |
parent | Removing half-finished multi-address handling in container list command. (diff) | |
download | compute-tools-456efbfa13fb43f8394291aa18e878d8d3acbda1.tar.xz compute-tools-456efbfa13fb43f8394291aa18e878d8d3acbda1.zip |
Adding CSV export format to container list command.
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
Diffstat (limited to '')
-rwxr-xr-x | lib/container/list | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/lib/container/list b/lib/container/list index 453b46e..0347c78 100755 --- a/lib/container/list +++ b/lib/container/list @@ -23,9 +23,11 @@ COMMAND="$(basename ${0})" CONFIG="/etc/container-tools/config" MACHINES="/var/lib/machines" +VERSION="$(container version)" + Parameters () { - GETOPT_LONGOPTIONS="all,format:,host:,other,started,stopped," + GETOPT_LONGOPTIONS="all,csv-separator:,format:,host:,other,started,stopped," GETOPT_OPTIONS="a,f:,h:,o,s,t," PARAMETERS="$(getopt --longoptions ${GETOPT_LONGOPTIONS} --name=${COMMAND} --options ${GETOPT_OPTIONS} --shell sh -- ${@})" @@ -46,6 +48,11 @@ Parameters () shift 1 ;; + --csv-separator) + CSV_SEPARATOR="${2}" + shift 2 + ;; + -f|--format) FORMAT="${2}" shift 2 @@ -86,7 +93,7 @@ Parameters () Usage () { - echo "Usage: container ${COMMAND} [-a|--all] [--format FORMAT] [-h|--host HOSTNAME] [-o|--other] [-s|--started] [-t|--stopped]" >&2 + echo "Usage: container ${COMMAND} [-a|--all] [--csv-separator SEPARATOR] [--format FORMAT] [-h|--host HOSTNAME] [-o|--other] [-s|--started] [-t|--stopped]" >&2 exit 1 } @@ -96,6 +103,8 @@ LIST="${LIST:-started stopped}" FORMAT="${FORMAT:-cli}" HOST="${HOST:-$(hostname -f)}" +CSV_SEPARATOR="${CSV_SEPARATOR:-,}" + # Run List () { @@ -104,6 +113,10 @@ List () printf "%-80s %-29s\n" "${STATUS} ${BLUE}${CONTAINER}${NORMAL}" "${YELLOW}${ADDRESS}${NORMAL}" ;; + csv) + echo "${HOST}${CSV_SEPARATOR}${CONTAINER}${CSV_SEPARATOR}${STATE}${CSV_SEPARATOR}${ADDRESS}" + ;; + shell) echo "${CONTAINER}" ;; @@ -125,6 +138,15 @@ ${WHITE} ${NORMAL} Container IPv4 Address(e EOF ;; + + csv) + +cat << EOF +# container-tools version ${VERSION} +Host${CSV_SEPARATOR}Container${CSV_SEPARATOR}Status${CSV_SEPARATOR}IPv4-Address +EOF + + ;; esac CONTAINERS="$(cd "${MACHINES}" 2>/dev/null && find -maxdepth 1 -type d -and -not -name '.container-tools' -and -not -name 'container-tools' -and -not -name 'lost+found' -and -not -name '.snap' -and -not -name '.snapshot' -printf '%P\n' | sort)" |