diff --git a/bin/_ssh-keygen.sh b/bin/_ssh-keygen.sh index e0900f1..24b6eeb 100755 --- a/bin/_ssh-keygen.sh +++ b/bin/_ssh-keygen.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux # OUTFILE="${HOME}/.ssh/id_rsanopass" # if [ ! -f "${OUTFILE}" ]; then diff --git a/bin/bitbucket.sh b/bin/bitbucket.sh index 9db8ec2..311ad7e 100755 --- a/bin/bitbucket.sh +++ b/bin/bitbucket.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux MY_TMP_CONTEXT="${HOME}/docker-files/bitbucket" diff --git a/bin/confluence.sh b/bin/confluence.sh index 684e038..d2850e1 100755 --- a/bin/confluence.sh +++ b/bin/confluence.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux MY_TMP_CONTEXT="${HOME}/docker-files/confluence" diff --git a/bin/create-macos-media.sh b/bin/create-macos-media.sh index fd7ca88..150bc52 100755 --- a/bin/create-macos-media.sh +++ b/bin/create-macos-media.sh @@ -1,7 +1,6 @@ #!/usr/bin/env bash -set -e +set -eu set +x -set -u ########## diff --git a/bin/gitea.sh b/bin/gitea.sh index 85d7be0..2b0a55c 100755 --- a/bin/gitea.sh +++ b/bin/gitea.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux MY_TMP_CONTEXT="${HOME}/docker-files/gitea" diff --git a/bin/gitlab-ce.sh b/bin/gitlab-ce.sh index 98510ff..f76429a 100755 --- a/bin/gitlab-ce.sh +++ b/bin/gitlab-ce.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux MY_TMP_CONTEXT="${HOME}/docker-files/gitlab-ce" diff --git a/bin/jenkins-lts.sh b/bin/jenkins-lts.sh index e09705c..4fc4965 100755 --- a/bin/jenkins-lts.sh +++ b/bin/jenkins-lts.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux MY_TMP_CONTEXT="${HOME}/docker-files/jenkins-lts" diff --git a/bin/macos-version.sh b/bin/macos-version.sh index dd94e1f..d80aa78 100755 --- a/bin/macos-version.sh +++ b/bin/macos-version.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux sw_vers softwareupdate --list diff --git a/bin/rebase-example.sh b/bin/rebase-example.sh index bb04487..acda554 100755 --- a/bin/rebase-example.sh +++ b/bin/rebase-example.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux git stash git checkout johnko diff --git a/bin/setup-ansible.sh b/bin/setup-ansible.sh index e85c10c..8ff2f46 100755 --- a/bin/setup-ansible.sh +++ b/bin/setup-ansible.sh @@ -1,8 +1,9 @@ #!/usr/bin/env bash -set -e -set -x +set -euo pipefail -if which apt-get; then +# Debian / Ubuntu +if command -v apt-get >/dev/null 2>&1 ; then + echo "=> Detected apt-get..." export DEBIAN_FRONTEND=noninteractive # Dependency for virtualenv sudo apt-get install --yes build-essential python-dev libffi-dev @@ -11,29 +12,49 @@ if which apt-get; then sudo apt-get install --yes libssl-dev fi -if ! which virtualenv; then - if which pip; then - pip install virtualenv - fi -fi +echo "=> Detecting pip3, pip2 or pip..." +# Last one wins +command -v pip >/dev/null 2>&1 && PIP_BIN="pip" +command -v pip2 >/dev/null 2>&1 && PIP_BIN="pip2" +command -v pip3 >/dev/null 2>&1 && PIP_BIN="pip3" +# Last one wins +command -v python >/dev/null 2>&1 && PY_BIN="python" +command -v python2 >/dev/null 2>&1 && PY_BIN="python2" +command -v python2.7 >/dev/null 2>&1 && PY_BIN="python2.7" +command -v python3 >/dev/null 2>&1 && PY_BIN="python3" +command -v python3.7 >/dev/null 2>&1 && PY_BIN="python3.7" -if ! which virtualenv; then - if which easy_install; then - sudo easy_install virtualenv - fi +echo "=> Installing virtualenv..." +if ! command -v virtualenv >/dev/null 2>&1 ; then + [ -n "${PIP_BIN}" ] && \ + ${PIP_BIN} install virtualenv 2>&1 | awk '{print " "$0}' +fi +if ! command -v virtualenv >/dev/null 2>&1 ; then + command -v easy_install >/dev/null 2>&1 && \ + easy_install virtualenv 2>&1 | awk '{print " "$0}' +fi +if ! command -v virtualenv >/dev/null 2>&1 ; then + echo "!! Failed to install virtualenv" + exit 1 fi -# Install ansible in a virtualenv -VENV_FOLDER="venv" -virtualenv ${VENV_FOLDER} -. ${VENV_FOLDER}/bin/activate -curl https://bootstrap.pypa.io/get-pip.py | python -pip install --upgrade ansible +# Install dev tools in a virtualenv +VENV_FOLDER="venv-ansible" +virtualenv "${VENV_FOLDER}" | awk '{print " "$0}' +source "${VENV_FOLDER}/bin/activate" + +echo "=> Installing latest pip..." +curl -s https://bootstrap.pypa.io/get-pip.py | ${PY_BIN} 2>&1 | awk '{print " "$0}' + +echo "=> Installing python development tools..." +${PIP_BIN} install --upgrade \ + yamllint \ + yq \ + ansible \ +2>&1 | awk '{print " "$0}' +echo "=> Installion complete!" -# Instructions to user -set +x -echo "======================================" -echo "Ansible setup complete!" -echo "Now you can:" -echo " source ${VENV_FOLDER}/bin/activate" -echo " ansible-playbook ..." +echo " To activate, run:" +echo " source ${VENV_FOLDER}/bin/activate" +echo " ansible-playbook ..." +echo "=> Setup is complete!" diff --git a/bin/setup-macos.sh b/bin/setup-macos.sh index ec1f3c9..3fc713b 100755 --- a/bin/setup-macos.sh +++ b/bin/setup-macos.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux ########## diff --git a/bin/setup-zfs-macos.sh b/bin/setup-zfs-macos.sh index 3f94e41..abddd07 100755 --- a/bin/setup-zfs-macos.sh +++ b/bin/setup-zfs-macos.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux create_default_zpool() { ## See https://openzfsonosx.org/wiki/Zpool#Creating_a_pool diff --git a/bin/timemachine-backup-now.sh b/bin/timemachine-backup-now.sh index 4b242c9..08fbbe2 100755 --- a/bin/timemachine-backup-now.sh +++ b/bin/timemachine-backup-now.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux # Mac OS Extended (Case-sensitive, Journaled, Encrypted) diff --git a/bin/ubuntu-16.04.sh b/bin/ubuntu-16.04.sh index c51aba4..63838ae 100755 --- a/bin/ubuntu-16.04.sh +++ b/bin/ubuntu-16.04.sh @@ -1,7 +1,5 @@ #!/usr/bin/env bash -set -e -set -x -set -u +set -eux MY_DOCKER_IMAGE=git-ubuntu:16.04 MY_TMP_CONTEXT="${HOME}/docker-files/ubuntu/16.04"