blob: 418aeedf1a74127d1d7d7a51ff1485baeecda5a5 [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
Terry Chiac69fa6e2014-10-30 10:37:32 +080015 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
Alex Gaynor80b84f52014-12-05 17:44:40 -080023 case "${TOXENV}" 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 ;;
Terry Chiaf67fcf92014-10-29 10:52:21 +080047 pypy)
48 brew upgrade pyenv
49 pyenv install pypy-2.4.0
50 pyenv global pypy-2.4.0
51 ;;
Paul Kehrerad230672014-12-23 09:43:58 -060052 pypy3)
53 brew upgrade pyenv
54 pyenv install pypy3-2.4.0
55 pyenv global pypy3-2.4.0
56 ;;
Terry Chiaf67fcf92014-10-29 10:52:21 +080057 docs)
58 curl -O https://bootstrap.pypa.io/get-pip.py
59 sudo python get-pip.py
60 ;;
Paul Kehrer0b06e552014-01-07 21:41:15 -060061 esac
Terry Chiada157492014-10-26 21:56:21 +080062 pyenv rehash
Terry Chia3c4a94a2014-10-25 21:03:15 +080063
Paul Kehrer0b06e552014-01-07 21:41:15 -060064else
Terry Chia14d8ff52014-10-27 10:21:20 +080065 sudo add-apt-repository -y ppa:fkrull/deadsnakes
Terry Chia3c4a94a2014-10-25 21:03:15 +080066
Alex Gaynor80b84f52014-12-05 17:44:40 -080067 if [[ "${TOXENV}" == "pypy" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080068 sudo add-apt-repository -y ppa:pypy/ppa
Terry Chia3c4a94a2014-10-25 21:03:15 +080069 fi
70
71 if [[ "${OPENSSL}" == "0.9.8" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080072 sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu/ lucid main"
Terry Chia26d3a7c2014-10-26 18:40:01 +080073 fi
Terry Chia3c4a94a2014-10-25 21:03:15 +080074
Terry Chia14d8ff52014-10-27 10:21:20 +080075 sudo apt-get -y update
Terry Chia3c4a94a2014-10-25 21:03:15 +080076
77 if [[ "${OPENSSL}" == "0.9.8" ]]; then
Terry Chia9f385402014-10-27 10:38:44 +080078 sudo apt-get install -y --force-yes libssl-dev/lucid
Terry Chiaff3e7ca2014-10-26 21:10:49 +080079 fi
Paul Kehrer0b06e552014-01-07 21:41:15 -060080
Alex Gaynor80b84f52014-12-05 17:44:40 -080081 case "${TOXENV}" in
Terry Chiaf67fcf92014-10-29 10:52:21 +080082 py26)
83 sudo apt-get install python2.6 python2.6-dev
84 ;;
85 py32)
86 sudo apt-get install python3.2 python3.2-dev
87 ;;
88 py33)
89 sudo apt-get install python3.3 python3.3-dev
90 ;;
91 py34)
92 sudo apt-get install python3.4 python3.4-dev
93 ;;
94 py3pep8)
95 sudo apt-get install python3.3 python3.3-dev
96 ;;
97 pypy)
98 sudo apt-get install --force-yes pypy pypy-dev
99 ;;
100 docs)
101 sudo apt-get install libenchant-dev
102 ;;
Paul Kehrer0b06e552014-01-07 21:41:15 -0600103 esac
Paul Kehrer0b06e552014-01-07 21:41:15 -0600104fi
105
Terry Chia3c4a94a2014-10-25 21:03:15 +0800106sudo pip install virtualenv
Paul Kehrer0b06e552014-01-07 21:41:15 -0600107virtualenv ~/.venv
108source ~/.venv/bin/activate
David Reidf0943932013-11-06 13:47:36 -0800109pip install tox coveralls