55 lines
1.5 KiB
Bash
55 lines
1.5 KiB
Bash
# -*- 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
|
|
function dm() {
|
|
case "$1" in
|
|
use|ssh)
|
|
if [ -n "$2" -a -f ~/etc/default/dk ]; then
|
|
# chercher les aliases éventuels
|
|
local cmd="$1"; shift
|
|
local machine="$1"; shift
|
|
machine="$(
|
|
CLUSTERDIRS=()
|
|
DM_ALIASES=()
|
|
source ~/etc/default/dk
|
|
for alias_machine in "${DM_ALIASES[@]}"; do
|
|
if [ "${alias_machine%%:*}" == "$machine" ]; then
|
|
echo "${alias_machine#*:}"
|
|
exit
|
|
fi
|
|
done
|
|
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 -- "$cmd" "$machine" "$@"
|
|
fi
|
|
;;
|
|
esac
|
|
if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then
|
|
__docker_machine_wrapper "$@"
|
|
else
|
|
docker-machine "$@"
|
|
fi
|
|
}
|
|
|
|
if [ -n "$UTOOLS_BASH_COMPLETION" ]; then
|
|
complete -F _docker_machine dm
|
|
fi
|
|
fi
|