summaryrefslogtreecommitdiffstats
path: root/share/bash-completion/container
diff options
context:
space:
mode:
Diffstat (limited to 'share/bash-completion/container')
-rw-r--r--share/bash-completion/container54
1 files changed, 45 insertions, 9 deletions
diff --git a/share/bash-completion/container b/share/bash-completion/container
index e117d16..150ff71 100644
--- a/share/bash-completion/container
+++ b/share/bash-completion/container
@@ -1,8 +1,7 @@
# bash-completion
#
-# container-tools - Manage systemd-nspawn containers
# Copyright (C) 2016 Andreas Kreuzer <andreas.kreuzer@open-infrastructure.net>
-# Copyright (C) 2016-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2016-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -64,13 +63,13 @@ _container()
create)
case "${prev}" in
-n|--name)
- opts="$(cd /etc/container-tools/debconf 2>/dev/null && ls *.cfg */*.cfg 2>/dev/null | sed -e 's|.*/||g' -e 's|.cfg$||g')"
+ opts="$(cd /etc/open-infrastructure/container/debconf 2>/dev/null && ls *.cfg */*.cfg 2>/dev/null | sed -e 's|.*/||g' -e 's|.cfg$||g')"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
-s|--script)
- opts="$(cd /usr/share/container-tools/scripts && find -maxdepth 1 -not -type d -and -not -name 'default' -and -not -name 'debconf' -and -not -name '*.d' -printf '%P\n' | sort)"
+ opts="$(cd /usr/share/open-infrastructure/container/scripts && find -maxdepth 1 -not -type d -and -not -name 'default' -and -not -name 'debconf' -and -not -name '*.d' -printf '%P\n' | sort)"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
@@ -124,7 +123,7 @@ _container()
list|ls)
case "${prev}" in
-h|--host)
- opts="true false $(hostname -f)"
+ opts="true false $(hostname -f 2> /dev/null || hostname)"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
@@ -143,6 +142,43 @@ _container()
esac
;;
+ log)
+ case "${prev}" in
+ -d|--date)
+ opts="$(if ls /var/log/open-infrastructure/container.log-*.gz > /dev/null 2>&1;
+ then \
+ zcat /var/log/open-infrastructure/container.log-*.gz | awk '{ print $1 }' | sort -u; \
+ fi; \
+ if [ -e /var/log/open-infrastructure/container.log ]; \
+ then \
+ awk '{ print $1 }' /var/log/open-infrastructure/container.log | sort -u; \
+ fi) \
+ today yesterday"
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ ;;
+
+ -n|--name)
+ opts="$(if ls /var/log/open-infrastructure/container.log-*.gz > /dev/null 2>&1;
+ then \
+ zgrep -E '(\-n|\-\-name) ' /var/log/open-infrastructure/container.log-*.gz | sed -e 's|.*-n ||' -e 's|.*--name ||' -e 's| .*$||' | sort -u; \
+ fi; \
+ if [ -e /var/log/open-infrastructure/container.log ]; \
+ then \
+ grep -E '(\-n|\-\-name) ' /var/log/open-infrastructure/container.log | sed -e 's|.*-n ||' -e 's|.*--name ||' -e 's| .*$||' | sort -u; \
+ fi)"
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ ;;
+
+ *)
+ opts="-d --date -n --name"
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ ;;
+ esac
+ ;;
+
move|mv)
case "${prev}" in
-o|--old)
@@ -191,7 +227,7 @@ _container()
esac
;;
- start)
+ start|s)
case "${prev}" in
-n|--name)
opts="$(container list -t -f shell)"
@@ -207,7 +243,7 @@ _container()
esac
;;
- status)
+ status|st)
case "${prev}" in
-n|--name)
opts="$(container list -t -f shell)"
@@ -223,7 +259,7 @@ _container()
esac
;;
- stop)
+ stop|t)
case "${prev}" in
-n|--name)
opts="$(container list -s -f shell)"
@@ -250,7 +286,7 @@ _container()
;;
*)
- local commands=$(cd /usr/lib/container-tools/container 2>/dev/null && find * -type f -print)
+ local commands=$(cd /usr/lib/open-infrastructure/container 2>/dev/null && find * -type f -print)
COMPREPLY=( $(compgen -W "${commands}" -- ${cur}) )
return 0
;;