diff options
author | Simon Spöhel <simon.spoehel@open-infrastructure.net> | 2016-06-26 21:12:13 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@open-infrastructure.net> | 2016-07-01 09:31:12 +0000 |
commit | 3a95e0e614d512f3c3e025a52790af20d49fb1e2 (patch) | |
tree | 8774105d634ee3590cd58b8db3b33a706dd69cf1 | |
parent | Correcting spelling typo in HOST-SETUP.txt. (diff) | |
download | compute-tools-3a95e0e614d512f3c3e025a52790af20d49fb1e2.tar.xz compute-tools-3a95e0e614d512f3c3e025a52790af20d49fb1e2.zip |
Adding container-status command.
Signed-off-by: Simon Spöhel <simon.spoehel@open-infrastructure.net>
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
-rwxr-xr-x | lib/container/status | 82 | ||||
-rw-r--r-- | share/man/container-status.1.txt | 72 |
2 files changed, 154 insertions, 0 deletions
diff --git a/lib/container/status b/lib/container/status new file mode 100755 index 0000000..a41d005 --- /dev/null +++ b/lib/container/status @@ -0,0 +1,82 @@ +#!/bin/sh + +# container-tools - Manage systemd-nspawn containers +# Copyright (C) 2016 Simon Spöehel <simon.spoehel@open-infrastructure.net> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +set -e + +COMMAND="$(basename ${0})" + +CONFIG="/etc/container-tools/config" +MACHINES="/var/lib/machines" + +Parameters () +{ + LONG_OPTIONS="name:," + OPTIONS="n:," + + PARAMETERS="$(getopt --longoptions ${LONG_OPTIONS} --name=${COMMAND} --options ${OPTIONS} --shell sh -- ${@})" + + if [ "${?}" != "0" ] + then + echo "'${COMMAND}': getopt exit" >&2 + exit 1 + fi + + eval set -- "${PARAMETERS}" + + while true + do + case "${1}" in + -n|--name) + NAME="${2}" + shift 2 + ;; + + --) + shift 1 + break + ;; + + *) + echo "'${COMMAND}': getopt error" >&2 + exit 1 + ;; + esac + done +} + +Usage () +{ + echo "Usage: container ${COMMAND} -n|--name NAME" >&2 + exit 1 +} + +Parameters "${@}" + +if [ -z "${NAME}" ] +then + Usage +fi + +if [ ! -e "${MACHINES}/${NAME}" ] +then + echo "'${NAME}': no such container" >&2 + exit 1 +fi + +# Run +systemctl status container@${NAME}.service diff --git a/share/man/container-status.1.txt b/share/man/container-status.1.txt new file mode 100644 index 0000000..e5c700b --- /dev/null +++ b/share/man/container-status.1.txt @@ -0,0 +1,72 @@ +// container-tools - Manage systemd-nspawn containers +// Copyright (C) 2016 Simon Spöehel <simon.spoehel@open-infrastructure.net> +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see <http://www.gnu.org/licenses/>. + +CONTAINER-STATUS(1) +=================== +:doctype: manpage +:man manual: Open Infrastructure +:man source: container-tools +:man version: {revnumber} + + +NAME +---- +container-status - Get the status of a container + + +SYNOPSIS +-------- +*container status* ['OPTIONS'] + + +DESCRIPTION +----------- +The container-status command displays the status of a container. + + +OPTIONS +------- +The following container-status options are available: + +*-n, --name='NAME'*:: + Specify container name. + + +EXAMPLES +-------- +*show status of example.net container:*:: + sudo container status -n example.net + + +SEE ALSO +-------- +container-tools(7), +container(1). + + +HOMEPAGE +-------- +More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net. + + +BUGS +---- +Bugs can be reported by sending a bug report to the Debian Bug Tracking System at https://bugs.debian.org. + + +AUTHORS +------- +container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net>. |