summaryrefslogtreecommitdiffstats
path: root/lib/container
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@open-infrastructure.net>2016-07-18 13:48:17 +0000
committerDaniel Baumann <daniel.baumann@open-infrastructure.net>2016-08-04 13:35:54 +0000
commit143d09ef2447e2eb8a21693b6bf9df459367f2aa (patch)
tree36d6ee959177ca24d759c1ad2db715b45ce105eb /lib/container
parentAdding error message in container start command if container is locked. (diff)
downloadcompute-tools-143d09ef2447e2eb8a21693b6bf9df459367f2aa.tar.xz
compute-tools-143d09ef2447e2eb8a21693b6bf9df459367f2aa.zip
Adding -f, --force option to container start command to remove stray lock files.
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
Diffstat (limited to 'lib/container')
-rwxr-xr-xlib/container/start23
1 files changed, 18 insertions, 5 deletions
diff --git a/lib/container/start b/lib/container/start
index 7e11121..b8803b2 100755
--- a/lib/container/start
+++ b/lib/container/start
@@ -28,8 +28,8 @@ SYSTEMCTL="true"
Parameters ()
{
- LONG_OPTIONS="name:,nspawn,start,"
- OPTIONS="n:,"
+ LONG_OPTIONS="name:,force,nspawn,start,"
+ OPTIONS="n:f,"
PARAMETERS="$(getopt --longoptions ${LONG_OPTIONS} --name=${COMMAND} --options ${OPTIONS} --shell sh -- ${@})"
@@ -49,6 +49,11 @@ Parameters ()
shift 2
;;
+ -f|--force)
+ FORCE="true"
+ shift 1
+ ;;
+
--nspawn)
# internal option
SYSTEMCTL="false"
@@ -77,7 +82,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME" >&2
+ echo "Usage: container ${COMMAND} -n|--name NAME [-f|--force]" >&2
exit 1
}
@@ -109,8 +114,16 @@ esac
if [ -e "${MACHINES}/.#${NAME}.lck" ]
then
- echo "'${NAME}': container is locked" >&2
- exit 1
+ case "${FORCE}" in
+ true)
+ rm -f "${MACHINES}/.#${NAME}.lck"
+ ;;
+
+ *)
+ echo "'${NAME}': container is locked" >&2
+ exit 1
+ ;;
+ esac
fi
HOST_ARCHITECTURE="$(dpkg --print-architecture)"