blob: 0c64ba93a3938755a583a2e84699ee106be4b6af [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
Paul Kehrer26287be2014-01-12 23:50:42 -050012if [[ "${OPENSSL}" == "0.9.8" ]]; then
Daniele Sluijters2d781b22014-06-06 15:54:54 +020013 if [[ "$DARWIN" = true ]]; then
Paul Kehrer26287be2014-01-12 23:50:42 -050014 # travis has openssl installed via brew already, but let's be sure
15 if [[ "$(brew list | grep openssl)" != "openssl" ]]; then
16 brew install openssl
17 fi
Daniele Sluijters7af3ed02014-06-06 15:49:42 +020018 else
19 sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ lucid main"
20 sudo apt-get -y update
21 sudo apt-get install -y --force-yes libssl-dev/lucid
Paul Kehrer26287be2014-01-12 23:50:42 -050022 fi
David Reid6b609bb2013-11-06 11:44:15 -080023fi
24
Alex Gaynor5278cd92014-02-04 17:24:12 -080025if [[ "${TOX_ENV}" == "docs" ]]; then
Daniele Sluijters7af3ed02014-06-06 15:49:42 +020026 if [[ "$DARWIN" = true ]]; then
Alex Gaynor6a188352014-02-04 17:18:30 -080027 brew update
28 brew install enchant
29 else
30 sudo apt-get -y update
31 sudo apt-get install libenchant-dev
32 fi
Alex Gaynor50e58d42014-01-10 09:59:55 -080033fi
34
Daniele Sluijters7af3ed02014-06-06 15:49:42 +020035if [[ "$DARWIN" = true ]]; then
Alex Gaynor8f6096c2014-09-26 10:05:48 -040036 if which pyenv > /dev/null; then
37 eval "$(pyenv init -)"
38 fi
39
Paul Kehrer0b06e552014-01-07 21:41:15 -060040 case "${TOX_ENV}" in
41 py26)
Alex Gaynoreecfdfa2014-05-17 12:57:38 -070042 curl -O https://bootstrap.pypa.io/get-pip.py
Alex Gaynordcbc9112014-01-09 10:07:30 -080043 sudo python get-pip.py
Paul Kehrer0b06e552014-01-07 21:41:15 -060044 sudo pip install virtualenv
45 ;;
46 py27)
Alex Gaynoreecfdfa2014-05-17 12:57:38 -070047 curl -O https://bootstrap.pypa.io/get-pip.py
Alex Gaynordcbc9112014-01-09 10:07:30 -080048 sudo python get-pip.py
Paul Kehrer0b06e552014-01-07 21:41:15 -060049 sudo pip install virtualenv
50 ;;
51 pypy)
Alex Gaynor2f3ac852014-09-26 00:18:44 -040052 brew update
Alex Gaynor030f26b2014-09-26 00:12:30 -040053 brew upgrade pyenv
Alex Gaynor61a5bc12014-09-25 21:18:52 -040054 pyenv install pypy-2.4.0
55 pyenv global pypy-2.4.0
Paul Kehrer0b06e552014-01-07 21:41:15 -060056 pip install virtualenv
57 ;;
58 py32)
59 pyenv install 3.2.5
60 pyenv global 3.2.5
61 pip install virtualenv
62 ;;
63 py33)
Alex Gaynor483d5932014-03-17 08:20:01 -070064 pyenv install 3.3.5
65 pyenv global 3.3.5
Paul Kehrer0b06e552014-01-07 21:41:15 -060066 pip install virtualenv
67 ;;
Paul Kehrerf855b282014-03-17 11:16:32 -040068 py34)
Paul Kehrer610f1e42014-07-18 13:49:33 -050069 pyenv install 3.4.1
70 pyenv global 3.4.1
Paul Kehrerf855b282014-03-17 11:16:32 -040071 pip install virtualenv
72 ;;
Alex Gaynor99951452014-02-04 17:37:38 -080073 docs)
Alex Gaynoreecfdfa2014-05-17 12:57:38 -070074 curl -O https://bootstrap.pypa.io/get-pip.py
Alex Gaynor99951452014-02-04 17:37:38 -080075 sudo python get-pip.py
76 sudo pip install virtualenv
77 ;;
Paul Kehrer0b06e552014-01-07 21:41:15 -060078 esac
79 pyenv rehash
80else
81 # add mega-python ppa
82 sudo add-apt-repository -y ppa:fkrull/deadsnakes
83 sudo apt-get -y update
84
85 case "${TOX_ENV}" in
86 py26)
87 sudo apt-get install python2.6 python2.6-dev
88 ;;
89 py32)
90 sudo apt-get install python3.2 python3.2-dev
91 ;;
92 py33)
93 sudo apt-get install python3.3 python3.3-dev
94 ;;
Paul Kehrerf855b282014-03-17 11:16:32 -040095 py34)
96 sudo apt-get install python3.4 python3.4-dev
97 ;;
Paul Kehrer0b06e552014-01-07 21:41:15 -060098 py3pep8)
99 sudo apt-get install python3.3 python3.3-dev
100 ;;
101 pypy)
102 sudo add-apt-repository -y ppa:pypy/ppa
103 sudo apt-get -y update
104 sudo apt-get install -y --force-yes pypy pypy-dev
105 ;;
106 esac
107 sudo pip install virtualenv
108fi
109
110virtualenv ~/.venv
111source ~/.venv/bin/activate
David Reidf0943932013-11-06 13:47:36 -0800112pip install tox coveralls