Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. #!/bin/bash
  2. #python-venv-prepare.sh
  3.  
  4. _BASE_DIR="${PWD##*/}"
  5.  
  6. if [ $# -eq 0 ]; then
  7. echo "Usage: ./python-venv-prepare.sh [2.7|3.7]"
  8. exit 1
  9. fi
  10.  
  11. while [ $# -ne 0 ]
  12. do
  13. arg="$1"
  14. case "$arg" in
  15. 2.7)
  16. _PYTHON_VER=2.7
  17. ;;
  18. 3.7)
  19. _PYTHON_VER=3.7
  20. ;;
  21. *)
  22. echo "Wrong param provided"
  23. echo "Usage: ./duplicati.sh [start|stop]"
  24. exit 1
  25. ;;
  26. esac
  27. shift
  28. done
  29. echo "--------------------------------------------------------------------------------------"
  30. _VENV_DIR="${_BASE_DIR}_venv-${_PYTHON_VER}"
  31. chmod 755 create-${_PYTHON_VER}.sh>create-${_PYTHON_VER}.sh && echo "virtualenv -p /usr/bin/python${_PYTHON_VER} '${_VENV_DIR}'" >create-${_PYTHON_VER}.sh
  32. chmod 755 activate-${_PYTHON_VER}.sh>activate-${_PYTHON_VER}.sh
  33.  
  34. _PYTHON_INSTALLED=false
  35. dpkg -s "python${_PYTHON_VER}" &> /dev/null
  36. if [ $? -eq 0 ]; then
  37. _PYTHON_INSTALLED=true
  38. echo "[$(date +%Y%m%d_%H-%M-%S)] python${_PYTHON_VER} already installed. Skipping"
  39. fi
  40.  
  41. if [ "${_PYTHON_VER}" == "2.7" ]; then
  42. if ! "${_PYTHON_INSTALLED}"; then
  43. sudo apt-get install -y python${_PYTHON_VER}
  44. sudo pip2 install virtualenv
  45. echo "[$(date +%Y%m%d_%H-%M-%S)] python/pip/venv Installation Completed"
  46. fi
  47. echo "source '${_VENV_DIR}'/bin/activate" >activate-${_PYTHON_VER}.sh
  48. elif [ "${_PYTHON_VER}" == "3.7" ]; then
  49. if ! "${_PYTHON_INSTALLED}"; then
  50. #sudo apt-get install -y python3.7-pip
  51. sudo apt install -y "python${_PYTHON_VER}" "python${_PYTHON_VER}-venv"
  52. sudo pip3 install virtualenv
  53. echo "[$(date +%Y%m%d_%H-%M-%S)] Python/pip/venv Installation Completed"
  54. fi
  55. echo "source '${_VENV_DIR}'/bin/activate" >activate-${_PYTHON_VER}.sh
  56. else
  57. echo "[$(date +%Y%m%d_%H-%M-%S)] ERROR"
  58. exit 997
  59. fi
  60.  
  61. echo "[$(date +%Y%m%d_%H-%M-%S)] create-${_PYTHON_VER}.sh script created and ready to use. Launching"
  62. ./create-${_PYTHON_VER}.sh
  63. echo "[$(date +%Y%m%d_%H-%M-%S)] Please run the following command to activate your new venv:"
  64. echo "source '${_VENV_DIR}'/bin/activate"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement