|
|
|
#!/usr/bin/env bash
|
|
|
|
# shellcheck disable=SC2230
|
|
|
|
#
|
|
|
|
# Author: Hari Sekhon
|
|
|
|
# Date: Aug 2019
|
|
|
|
#
|
|
|
|
# https://github.com/harisekhon/devops-bash-tools
|
|
|
|
#
|
|
|
|
# License: see accompanying LICENSE file
|
|
|
|
#
|
|
|
|
# https://www.linkedin.com/in/harisekhon
|
|
|
|
#
|
|
|
|
|
|
|
|
# Installs MiniShift on Mac - needs VirtualBox to be installed first
|
|
|
|
|
|
|
|
#set -euo pipefail
|
|
|
|
set -u
|
|
|
|
|
|
|
|
#[ -n "${DEBUG:-}" ] &&
|
|
|
|
set -x
|
|
|
|
|
|
|
|
srcdir="$(dirname "$0")"
|
|
|
|
|
|
|
|
if [ "$(uname -s)" = Darwin ]; then
|
|
|
|
if ! type -P minishift &>/dev/null; then
|
|
|
|
if ! type -P brew &>/dev/null; then
|
|
|
|
echo "HomeBrew needs to be installed first, trying to install now"
|
|
|
|
"$srcdir/install_homebrew.sh"
|
|
|
|
fi
|
|
|
|
brew update
|
|
|
|
brew cask install minishift
|
|
|
|
brew cask install --force minishift
|
|
|
|
brew install docker-machine-driver-xhyve
|
|
|
|
fi
|
|
|
|
brew_prefix="$(brew --prefix)"
|
|
|
|
sudo chown root:wheel "$brew_prefix"/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
|
|
|
|
sudo chmod u+s "$brew_prefix"/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
|
|
|
|
if [ -z "${NO_START:-}" ] &&
|
|
|
|
[ -z "${QUICK:-}" ]; then
|
|
|
|
# quicker to just try, it'll tell you if it's already running
|
|
|
|
#! minishift status | grep -i Running; then
|
|
|
|
minishift start --vm-driver=virtualbox
|
|
|
|
fi
|
|
|
|
# .bash.d/kubernetes.sh automatically sources this so 'oc' command is available in all new shells
|
|
|
|
# fails if no running minishift VM - in which case remove the .minishift.env to avoid errors on every new shell
|
|
|
|
minishift oc-env > ~/.minishift.env || rm -f ~/.minishift.env
|
|
|
|
else
|
|
|
|
echo "Only Mac is supported at this time"
|
|
|
|
exit 1
|
|
|
|
fi
|