mirror of
https://github.com/lloeki/dotfiles.git
synced 2025-12-06 07:24:39 +01:00
47 lines
1.3 KiB
Bash
Executable file
47 lines
1.3 KiB
Bash
Executable file
if [[ "${OSTYPE}" == *darwin* ]]; then
|
|
for app in 'VMware Fusion.app' 'VMware Fusion Tech Preview.app'; do
|
|
if [[ -f "/Applications/${app}/Contents/Library/vmrun" ]]; then
|
|
vmrun="/Applications/${app}/Contents/Library/vmrun"
|
|
break
|
|
fi
|
|
done
|
|
unset app
|
|
|
|
for vm in Docker Gomeisa; do
|
|
if [[ -f "${HOME}/Virtual Machines.localized/${vm}.vmwarevm/${vm}.vmx" ]]; then
|
|
vmx="${HOME}/Virtual Machines.localized/${vm}.vmwarevm/${vm}.vmx"
|
|
break
|
|
fi
|
|
done
|
|
unset vm
|
|
|
|
if [[ -n "${vmrun:-}" && -n "${vmx:-}" ]]; then
|
|
if "${vmrun}" list | grep -q "${vmx}"; then
|
|
# vm started
|
|
:
|
|
else
|
|
# TODO: user feedback facilities
|
|
echo "* Starting Docker VM"
|
|
"${vmrun}" start "${vmx}" nogui
|
|
fi
|
|
|
|
# TODO: use 'docker' once Gomeisa is gone
|
|
user='root'
|
|
|
|
# TODO: make this faster
|
|
# - look into /var/db/vmware/vmnet-dhcpd-vmnet{1,8}.leases
|
|
# - cache found IP
|
|
ip="$("${vmrun}" getGuestIPAddress "${vmx}" -wait)"
|
|
|
|
export DOCKER_VM_IP="${ip}"
|
|
export DOCKER_VM_SSH="${user}@${DOCKER_VM_IP}"
|
|
export DOCKER_HOST="ssh://${DOCKER_VM_SSH}"
|
|
fi
|
|
|
|
unset vmrun
|
|
unset vmx
|
|
unset ip
|
|
unset user
|
|
fi
|
|
|
|
# vim: ft=bash
|