dm: support des aliases

This commit is contained in:
Jephté Clain 2020-09-17 05:59:36 +04:00
parent 856c948eeb
commit ada594a30b
1 changed files with 34 additions and 5 deletions

View File

@ -1,11 +1,40 @@
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
if [ -n "$UTOOLS_DOCKER_ALIASES" ]; then
if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then
alias dm=__docker_machine_wrapper
else
alias dm=docker-machine
fi
#if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then
# alias dm=__docker_machine_wrapper
#else
# alias dm=docker-machine
#fi
function dm() {
if [ "$1" == use -a -n "$2" -a -f ~/etc/default/dk ]; then
# chercher les aliases éventuels
local machine="$2"; shift; shift
machine="$(
CLUSTERDIRS=()
source ~/etc/default/dk
for clusterdir in "${CLUSTERDIRS[@]}"; do
if [ -f "$clusterdir/0config/configure.conf" ]; then
DM_ALIASES=()
source "$clusterdir/0config/configure.conf"
for alias_machine in "${DM_ALIASES[@]}"; do
if [ "${alias_machine%%:*}" == "$machine" ]; then
echo "${alias_machine#*:}"
exit
fi
done
fi
done
echo "$machine"
)"
set -- use "$machine" "$@"
fi
if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then
__docker_machine_wrapper "$@"
else
docker-machine "$@"
fi
}
if [ -n "$UTOOLS_BASH_COMPLETION" ]; then
complete -F _docker_machine dm