blob: 6fa6a639358c94d810ca265c3ca8095dcb03ed5b [file] [log] [blame]
David Reid6b609bb2013-11-06 11:44:15 -08001#!/bin/bash
2
3set -e
4set -x
5
Daniele Sluijtersd1e43832014-06-06 16:34:19 +02006if [[ "$(uname -s)" == 'Darwin' ]]; then
Daniele Sluijters7af3ed02014-06-06 15:49:42 +02007 DARWIN=true
8else
9 DARWIN=false
10fi
11
Daniele Sluijters7af3ed02014-06-06 15:49:42 +020012if [[ "$DARWIN" = true ]]; then
Terry Chia3c4a94a2014-10-25 21:03:15 +080013 brew update
14
15 if [[ "${OPENSSL}" == "0.9.8" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080016 brew upgrade openssl
Terry Chia26d3a7c2014-10-26 18:40:01 +080017 fi
Terry Chia3c4a94a2014-10-25 21:03:15 +080018
Alex Gaynor8f6096c2014-09-26 10:05:48 -040019 if which pyenv > /dev/null; then
Terry Chiaad32c362014-10-27 10:23:32 +080020 eval "$(pyenv init -)"
Alex Gaynor8f6096c2014-09-26 10:05:48 -040021 fi
22
Paul Kehrer0b06e552014-01-07 21:41:15 -060023 case "${TOX_ENV}" in
Terry Chiaf67fcf92014-10-29 10:52:21 +080024 py26)
25 curl -O https://bootstrap.pypa.io/get-pip.py
26 sudo python get-pip.py
27 ;;
28 py27)
29 curl -O https://bootstrap.pypa.io/get-pip.py
30 sudo python get-pip.py
31 ;;
32 py32)
33 brew upgrade pyenv
34 pyenv install 3.2.6
35 pyenv global 3.2.6
36 ;;
37 py33)
38 brew upgrade pyenv
39 pyenv install 3.3.6
40 pyenv global 3.3.6
41 ;;
42 py34)
43 brew upgrade pyenv
44 pyenv install 3.4.2
45 pyenv global 3.4.2
46 ;;
47 py3pep8)
48 sudo apt-get install python3.3 python3.3-dev
49 ;;
50 pypy)
51 brew upgrade pyenv
52 pyenv install pypy-2.4.0
53 pyenv global pypy-2.4.0
54 ;;
55 docs)
56 curl -O https://bootstrap.pypa.io/get-pip.py
57 sudo python get-pip.py
58 ;;
Paul Kehrer0b06e552014-01-07 21:41:15 -060059 esac
Terry Chiada157492014-10-26 21:56:21 +080060 pyenv rehash
Terry Chia3c4a94a2014-10-25 21:03:15 +080061
Paul Kehrer0b06e552014-01-07 21:41:15 -060062else
Terry Chia14d8ff52014-10-27 10:21:20 +080063 sudo add-apt-repository -y ppa:fkrull/deadsnakes
Terry Chia3c4a94a2014-10-25 21:03:15 +080064
65 if [[ "${TOX_ENV}" == "pypy" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080066 sudo add-apt-repository -y ppa:pypy/ppa
Terry Chia3c4a94a2014-10-25 21:03:15 +080067 fi
68
69 if [[ "${OPENSSL}" == "0.9.8" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080070 sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu/ lucid main"
Terry Chia26d3a7c2014-10-26 18:40:01 +080071 fi
Terry Chia3c4a94a2014-10-25 21:03:15 +080072
Terry Chia14d8ff52014-10-27 10:21:20 +080073 sudo apt-get -y update
Terry Chia3c4a94a2014-10-25 21:03:15 +080074
75 if [[ "${OPENSSL}" == "0.9.8" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080076 sudo apt-get install -y --force-yes libssl-dev/lucid
Terry Chiaff3e7ca2014-10-26 21:10:49 +080077 fi
Paul Kehrer0b06e552014-01-07 21:41:15 -060078
79 case "${TOX_ENV}" in
Terry Chiaf67fcf92014-10-29 10:52:21 +080080 py26)
81 sudo apt-get install python2.6 python2.6-dev
82 ;;
83 py32)
84 sudo apt-get install python3.2 python3.2-dev
85 ;;
86 py33)
87 sudo apt-get install python3.3 python3.3-dev
88 ;;
89 py34)
90 sudo apt-get install python3.4 python3.4-dev
91 ;;
92 py3pep8)
93 sudo apt-get install python3.3 python3.3-dev
94 ;;
95 pypy)
96 sudo apt-get install --force-yes pypy pypy-dev
97 ;;
98 docs)
99 sudo apt-get install libenchant-dev
100 ;;
Paul Kehrer0b06e552014-01-07 21:41:15 -0600101 esac
Paul Kehrer0b06e552014-01-07 21:41:15 -0600102fi
103
Terry Chia3c4a94a2014-10-25 21:03:15 +0800104sudo pip install virtualenv
Paul Kehrer0b06e552014-01-07 21:41:15 -0600105virtualenv ~/.venv
106source ~/.venv/bin/activate
David Reidf0943932013-11-06 13:47:36 -0800107pip install tox coveralls