diff --git a/.gitignore b/.gitignore index 7c4477a6..4abcb761 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,9 @@ eDisGo.egg-info/ # exclude .json files in opf /edisgo/opf/opf_solutions/*.json + +# exclude virtualenv dir +venv/ /edisgo/opf/eDisGo_OPF.jl/.vscode .vscode/settings.json diff --git a/install_edisgo_dev.sh b/install_edisgo_dev.sh new file mode 100755 index 00000000..d66c33e5 --- /dev/null +++ b/install_edisgo_dev.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +# Script to install the venv in the ./venv dir, install pre-commit hooks. + +set -euo pipefail +#set -x + +workflow_dir="$(dirname "$(realpath -s "$0")")" + +cd "$workflow_dir" + +if [ -d "venv" ] +then + rm -rf "venv" +else + echo No dir venv. +fi + +virtualenv "venv" --python python3.8 + +source "$workflow_dir/venv/bin/activate" +python --version +echo "Upgrade pip." +python -m pip -q install --upgrade pip + +for repo in "[dev]" +do + echo "Install $workflow_dir$repo." + python -m pip install -e "$workflow_dir$repo" +done + +echo "Save pip freeze to freeze.txt." +python --version > "$workflow_dir/venv/freeze.txt" +python -m pip -q freeze >> "$workflow_dir/venv/freeze.txt" + + +pre-commit install