-
Notifications
You must be signed in to change notification settings - Fork 40
/
.travis.yml
90 lines (90 loc) · 2.61 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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/4f71b9fa80e108068016
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: never # options: [always|never|change] default: always
dist: trusty
cache:
directories:
- $HOME/.ccache
- $HOME/build/pirapira/cpp-ethereum
- $HOME/build/pirapira/cmake
env:
global:
- CASHER_TIME_OUT=1200
sudo: required
before_install:
- BAMBOO=`pwd`
- sudo apt-get -qq update
- sudo apt-get install aspcud ccache jq
# - git clone https://github.com/polyml/polyml.git
# - cd polyml
# - git checkout v5.6
# - ./configure
# - make
# - make compiler
# - sudo make install
# - cd -
# - sudo updatedb
# - locate libpolymain.a
- wget https://raw.github.com/ocaml/opam/master/shell/opam_installer.sh -O - | sudo sh -s /usr/local/bin
- export OPAMJOBS=2
- opam init -y --comp=4.02.3+buckle-master
- opam switch 4.02.3+buckle-master
- eval `opam config env`
- opam update
- opam upgrade -y
# It's important to install batteries first, so the proper version of rpc can be installed afterwards
- git clone https://github.com/bsansouci/batteries-included
- cd ./batteries-included && opam pin add -y batteries . && cd ..
- opam install -y ocamlfind menhir rope zarith ppx_deriving rpc=1.9.52 cryptokit hex
- cd ../..
- if [ ! -d cpp-ethereum/.git ]; then rm -rf cpp-ethereum; git clone https://github.com/pirapira/cpp-ethereum --recursive; fi
- sudo apt install -y build-essential libgmp-dev libleveldb-dev libmicrohttpd-dev g++-4.8 gcc-4.8
- sudo apt purge -y cmake
- mkdir -p cmake
- cd cmake
- if [ ! -f cmake-3.8.2-Linux-x86_64.tar.gz ]; then wget https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.tar.gz && tar xf cmake-3.8.2-Linux-x86_64.tar.gz; fi
- PATH=`pwd`/cmake-3.8.2-Linux-x86_64/bin:$PATH
- cd -
- cmake --version
- cd cpp-ethereum
- git fetch
- git checkout origin/test-raw-sign
- git show | head -n 3
- git submodule update --recursive
- mkdir -p build
- cd build
- CC=gcc-4.8 CXX=g++-4.8 cmake ..
- CC=gcc-4.8 CXX=g++-4.8 make -j3 eth
- sudo make install
- cd $BAMBOO
- sudo apt install texlive-latex-base texlive-science texlive-math-extra
install:
- npm install
- cd bamboo-tests
- npm install
- cd -
script:
- make doc/spec.pdf
- make
- ln -s ./bamboo.native lib/bs/native/bamboo
- PATH=`pwd`/lib/bs/native:$PATH
- cd bamboo-tests
- npm test
- cd -
- make test
- which eth
- eth --version
- mkdir -p /tmp/test
- eth --test -d /tmp/test &> eth.log &
- PID=$!
- sleep 4
- endtoend.native
- kill $PID
- cat eth.log
- opam pin add bamboo . -y
- opam remove bamboo
- opam install bamboo -y