#!/usr/bin/env bash

# pre-commit by default runs hooks in an isolated environment.
# For some hooks it's needed to run in the virtual environment so this script will activate it.

OS_KERNEL=$(uname -s)
OS_VER=$(uname -v)
if  [[ ( $OS_KERNEL == "Linux" && $OS_VER == *"Microsoft"* ) ]]; then
    echo "Pre-commit hook needs git-bash to run.  It cannot run in the windows linux subsystem."
    echo "Add git bin directory to the front of your path variable, e.g:"
    echo "set PATH=C:\Program Files\Git\bin;%PATH% (for CMD prompt)"
    echo "\$env:Path = 'C:\Program Files\Git\bin;' + \$env:Path (for Powershell prompt)"
    exit 1
fi
if [[ "$(expr substr $OS_KERNEL 1 10)" == "MINGW64_NT" ]]; then
    POETRY_PATH=$(poetry.exe env info --path)
    source "$POETRY_PATH"\\Scripts\\activate
else
    source $(poetry env info --path)/bin/activate
fi
exec "$@"