python-kasa/devtools/run-in-env.sh
Steven B. 91bf9bb73d
Fix generate_supported pre commit to run in venv (#1085)
I noticed after building a new linux instance that running `git commit`
when the virtual environment is not active causes the pre-commit to
fail, as the `generate_supported` hook is not explicitly configured to
run in the virtual env. This PR calls `generate_supported` via the
`run-in-env.sh` script.
2024-07-28 20:41:33 +02:00

22 lines
858 B
Bash
Executable File

#!/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 "$@"