#!/usr/bin/env bash set -e source "$(dirname "$0")/utils.sh" install_python() { local install_type=$1 local version=$2 local install_path=$3 if [ "$install_type" != "version" ]; then echoerr "Cannot install specific ref from source, sorry." echoerr "For a list of available versions, see \`asdf list-all python\`." exit 1 fi install_or_update_python_build echo "python-build $version $install_path" $(python_build_path) "$version" "$install_path" } install_default_python_packages() { local packages_file="${ASDF_PYTHON_DEFAULT_PACKAGES_FILE:-$HOME/.default-python-packages}" if [ ! -f "$packages_file" ]; then return; fi while read -r name; do echo -ne "\nInstalling \033[33m${name}\033[39m python package... " PATH="$ASDF_INSTALL_PATH/bin:$PATH" pip install "$name" > /dev/null 2>&1 && rc=$? || rc=$? if [[ $rc -eq 0 ]]; then echo -e "\033[32mSUCCESS\033[39m" else echo -e "\033[31mFAIL\033[39m" fi done < "$packages_file" } ensure_python_build_installed install_python "$ASDF_INSTALL_TYPE" "$ASDF_INSTALL_VERSION" "$ASDF_INSTALL_PATH" install_default_python_packages