Fixed travis build for Linux

Brew isn't by default on linux, so we need to install it from git.
Python, php, crystal, ompl, ocml can be installed from apt, no need
for brew on linux. Elm binaries need to be fo linux on linux.
This commit is contained in:
Ra100 2016-05-20 10:38:40 +02:00 committed by ra100
parent b11dc80abc
commit 6065d6643a
1 changed files with 74 additions and 24 deletions

View File

@ -14,37 +14,69 @@ script: sh build-package.sh
git: git:
depth: 10 depth: 10
sudo: false php:
- '5.6'
python:
- '2.7'
go:
- release
os: matrix:
- linux include:
- osx - os: linux
dist: trusty
sudo: require
env:
- ATOM_CHANNEL=stable
- os: linux
dist: trusty
sudo: require
env:
- ATOM_CHANNEL=beta
- os: osx
env:
- ATOM_CHANNEL=stable
- os: osx
env:
- ATOM_CHANNEL=beta
env: env:
global: global:
- APM_TEST_PACKAGES="language-marko language-html-swig language-svg language-d mavensmate-atom" - APM_TEST_PACKAGES="language-marko language-html-swig language-svg language-d mavensmate-atom"
matrix: - PATH="/home/travis/gopath/bin:$HOME/.linuxbrew/bin:$PATH"
- ATOM_CHANNEL=stable
- ATOM_CHANNEL=beta
addons: addons:
apt: apt:
sources:
- sourceline: 'deb http://dist.crystal-lang.org/apt crystal main'
- sourceline: 'deb http://ppa.launchpad.net/avsm/ppa/ubuntu trusty main'
- sourceline: 'deb http://ppa.launchpad.net/ubuntu-lxc/lxd-stable/ubuntu trusty main'
packages: packages:
- build-essential - build-essential
- git - git
- libgnome-keyring-dev - libgnome-keyring-dev
- fakeroot - fakeroot
- crystal
- ocaml
- camlp4
- opam
- php5-cli
- golang
cache: cache:
- pip: true pip: true
- bundler: true bundler: true
- directories: directories:
- vendor/bundle # gems are installed here, https://docs.travis-ci.com/user/languages/ruby/#Dependency-Management - vendor/bundle # gems are installed here, https://docs.travis-ci.com/user/languages/ruby/#Dependency-Management
- node_modules - node_modules
- $HOME/.atom - $HOME/.atom
- $HOME/.stack - $HOME/.stack
before_install: before_install:
# Install Homebrew on Linux
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
git clone --depth=1 https://github.com/Linuxbrew/brew.git ~/.linuxbrew || true;
fi
# Update Homebrew # Update Homebrew
- brew update - brew update
- brew tap homebrew/dupes - brew tap homebrew/dupes
@ -55,7 +87,9 @@ before_install:
- gem install htmlbeautifier - gem install htmlbeautifier
- gem install puppet-lint - gem install puppet-lint
# Python language support # Python language support
- brew install python - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install python; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo chmod 777 -R /opt/python; fi
- pip install --upgrade pip
- pip install --upgrade autopep8 - pip install --upgrade autopep8
- pip install --upgrade isort - pip install --upgrade isort
# SQL language support # SQL language support
@ -64,11 +98,18 @@ before_install:
- brew install uncrustify - brew install uncrustify
# PHP # PHP
- brew tap homebrew/homebrew-php - brew tap homebrew/homebrew-php
- brew install php56 || true - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- brew gist-logs php56 || true brew install php56 || true;
- echo -e "\n[Phar]\nphar.readonly = Off\n" >> /usr/local/etc/php/5.6/php.ini brew gist-logs php56 || true;
- brew install php-cs-fixer || true echo -e "\n[Phar]\nphar.readonly = Off\n" >> /usr/local/etc/php/5.6/php.ini;
- brew gist-logs php-cs-fixer || true brew install php-cs-fixer || true;
brew gist-logs php-cs-fixer || true;
fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
wget http://get.sensiolabs.org/php-cs-fixer.phar -O php-cs-fixer;
chmod a+x php-cs-fixer;
mv php-cs-fixer $HOME/.linuxbrew/bin/php-cs-fixer;
fi
# CoffeeScript # CoffeeScript
- npm install coffee-formatter - npm install coffee-formatter
# Haskell # Haskell
@ -76,11 +117,20 @@ before_install:
# - stack setup # - stack setup
# - stack install stylish-haskell # - stack install stylish-haskell
# Elm # Elm
- curl -L -o /tmp/elm-format.tgz https://github.com/avh4/elm-format/releases/download/0.2.0-alpha/elm-format-0.2.0-alpha-mac-x64.tgz - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
- tar xvzf /tmp/elm-format.tgz -C /usr/local/bin curl -L -o /tmp/elm-format.tgz https://github.com/avh4/elm-format/releases/download/0.2.0-alpha/elm-format-0.2.0-alpha-mac-x64.tgz;
tar xvzf /tmp/elm-format.tgz -C /usr/local/bin;
fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
curl -L -o /tmp/elm-format.tgz https://github.com/avh4/elm-format/releases/download/0.2.0-alpha/elm-format-0.2.0-alpha-linux-x64.tgz;
tar xvzf /tmp/elm-format.tgz -C $HOME/.linuxbrew/bin;
fi
# OCaml # OCaml
- brew install ocaml opam - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
brew install ocaml;
brew install opam;
fi
- opam init --auto-setup - opam init --auto-setup
- opam install --yes ocp-indent - opam install --yes ocp-indent
# Crystal # Crystal
- brew install crystal-lang - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install crystal-lang; fi