From e96c505367d718f45cbc5044aca2bb41038ae71b Mon Sep 17 00:00:00 2001 From: Mike Date: Sat, 6 Jul 2024 17:36:51 -0700 Subject: [PATCH] Environment initializer --- init-environment | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 init-environment diff --git a/init-environment b/init-environment new file mode 100755 index 0000000..15c00b8 --- /dev/null +++ b/init-environment @@ -0,0 +1,41 @@ +#!/bin/bash + +log() +{ + echo "[Connection Specific SSH Config - Init Env] $1" +} +complain() +{ + echo "[Connection Specific SSH Config - Init Env] $1" 1>&2 +} +die() +{ + complain "Fatal: $1" + exit 1 +} + +SCRIPT_PATH=$(readlink -f "$0") +SCRIPT_DIR=$(dirname "$SCRIPT_PATH") +SCRIPT_NAME=$(basename "$SCRIPT_PATH") + +log "Begin ${SCRIPT_NAME}" +log "Script path: ${SCRIPT_PATH}" +log "Script dir: ${SCRIPT_DIR}" +log "PATH: ${PATH}" + +log "PWD before switching: $(pwd)" +cd "${SCRIPT_DIR}" || die "Failed to switch to project directory: ${SCRIPT_DIR}" +log "PWD after switching: $(pwd)" + +log "Ensuring python installation with pyenv" +pyenv versions +pyenv install --skip-existing || die "Failed to ensure python installation with pyenv" + +log "Installing/upgrading pip and pipenv" +pip install --upgrade pip pipenv || die "Failed to install/upgrade pip and pipenv" + +log "Syncing pip environment with pipenv" +pipenv --rm # Don't die because this will return an error if the env didn't already exist +pipenv install || die "Failed to install pip environment with pipenv" +pipenv sync || die "Failed to sync pip environment with pipenv" +