Merge pull request #9140 from yedpodtrzitko/yed/reuse-existing-venv

feat: use existing virtualenv if already active
This commit is contained in:
AUTOMATIC1111 2023-05-02 11:05:00 +03:00 committed by GitHub
commit 335428c2c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 21 additions and 14 deletions

View File

@ -153,24 +153,31 @@ else
cd "${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; } cd "${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; }
fi fi
printf "\n%s\n" "${delimiter}" if [[ -z "${VIRTUAL_ENV}" ]];
printf "Create and activate python venv"
printf "\n%s\n" "${delimiter}"
cd "${install_dir}"/"${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; }
if [[ ! -d "${venv_dir}" ]]
then then
printf "\n%s\n" "${delimiter}"
printf "Create and activate python venv"
printf "\n%s\n" "${delimiter}"
cd "${install_dir}"/"${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; }
if [[ ! -d "${venv_dir}" ]]
then
"${python_cmd}" -m venv "${venv_dir}" "${python_cmd}" -m venv "${venv_dir}"
first_launch=1 first_launch=1
fi fi
# shellcheck source=/dev/null # shellcheck source=/dev/null
if [[ -f "${venv_dir}"/bin/activate ]] if [[ -f "${venv_dir}"/bin/activate ]]
then then
source "${venv_dir}"/bin/activate source "${venv_dir}"/bin/activate
else else
printf "\n%s\n" "${delimiter}" printf "\n%s\n" "${delimiter}"
printf "\e[1m\e[31mERROR: Cannot activate python venv, aborting...\e[0m" printf "\e[1m\e[31mERROR: Cannot activate python venv, aborting...\e[0m"
printf "\n%s\n" "${delimiter}" printf "\n%s\n" "${delimiter}"
exit 1 exit 1
fi
else
printf "\n%s\n" "${delimiter}"
printf "python venv already activate: ${VIRTUAL_ENV}"
printf "\n%s\n" "${delimiter}"
fi fi
# Try using TCMalloc on Linux # Try using TCMalloc on Linux