-
Notifications
You must be signed in to change notification settings - Fork 28
/
.travis.yml
67 lines (62 loc) · 1.72 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
language: elixir
elixir:
- 1.5.0
- 1.6.4
- 1.7.0
- 1.7.1
- 1.7.3
otp_release:
- 20.0
- 21.0
matrix:
exclude:
# Elixir 1.5.0 doesn't work with OTP 21
- elixir: 1.5.0
otp_release: 21.0
# Elixir 1.6.4 doesn't work with OTP 21
- elixir: 1.6.4
otp_release: 21.0
os:
- linux
cache:
directories:
- test/elm-stuff/build-artifacts
- sysconfcpus
before_install:
- if [ ${TRAVIS_OS_NAME} == "osx" ];
then brew update; brew install nvm; mkdir ~/.nvm; export NVM_DIR=~/.nvm; source $(brew --prefix nvm)/nvm.sh;
fi
- echo -e "Host github.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
- | # epic build time improvement - see https://github.com/elm-lang/elm-compiler/issues/1473#issuecomment-245704142
if [ ! -d sysconfcpus/bin ];
then
git clone https://github.com/obmarg/libsysconfcpus.git;
cd libsysconfcpus;
./configure --prefix=$TRAVIS_BUILD_DIR/sysconfcpus;
make && make install;
cd ..;
fi
install:
- nvm install 6.11.2
- nvm use 6.11.2
- node --version
- npm --version
- npm install -g elm@0.18.0
- mv $(npm config get prefix)/bin/elm-make $(npm config get prefix)/bin/elm-make-old
- printf '%s\n\n' '#!/bin/bash' 'echo "Running elm-make with sysconfcpus -n 2"' '$TRAVIS_BUILD_DIR/sysconfcpus/bin/sysconfcpus -n 2 elm-make-old "$@"' > $(npm config get prefix)/bin/elm-make
- chmod +x $(npm config get prefix)/bin/elm-make
- npm install
- elm package install --yes
- cd elchemy-core/
- mix local.rebar --force # for Elixir 1.3.0 and up
- mix local.hex --force
- mix deps.get
- cd ../
- make compile
- make compile-std
after_failure:
- find elchemy-core/lib | xargs cat
script:
- make test-all
notifications:
email: false