2014-11-16 03:36:30 +02:00
language : go
2016-05-25 15:07:57 +03:00
go_import_path : github.com/ethereum/go-ethereum
sudo : false
matrix :
include :
- os : linux
dist : trusty
go : 1.5 .4
2016-11-02 19:21:05 +03:00
env :
- GO15VENDOREXPERIMENT=1
2016-05-25 15:07:57 +03:00
- os : linux
dist : trusty
go : 1.6 .2
2016-08-17 09:49:40 +03:00
- os : linux
dist : trusty
2016-12-13 20:54:56 +03:00
go : 1.7 .4
2016-05-25 15:07:57 +03:00
- os : osx
2016-12-13 20:54:56 +03:00
go : 1.7 .4
2016-05-25 15:07:57 +03:00
2016-11-02 19:21:05 +03:00
# This builder does the Ubuntu PPA and Linux Azure uploads
2016-05-25 15:07:57 +03:00
- os : linux
dist : trusty
2016-11-04 14:48:20 +03:00
sudo : required
2016-12-13 20:54:56 +03:00
go : 1.7 .4
2016-11-02 19:21:05 +03:00
env :
- ubuntu-ppa
2016-11-02 20:36:48 +03:00
- azure-linux
2016-05-25 15:07:57 +03:00
addons :
apt :
packages :
- devscripts
- debhelper
- dput
2016-11-04 14:48:20 +03:00
- gcc-multilib
2016-05-25 15:07:57 +03:00
script :
2016-11-04 14:48:20 +03:00
# Build for the primary platforms that Trusty can manage
2016-11-15 13:10:28 +03:00
- go run build/ci.go debsrc -signer "Go Ethereum Linux Builder <geth-ci@ethereum.org>" -upload ppa:ethereum/ethereum
2016-11-02 19:21:05 +03:00
- go run build/ci.go install
- go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
2016-11-02 20:36:48 +03:00
- go run build/ci.go install -arch 386
- go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
2016-11-02 19:21:05 +03:00
2016-11-04 14:48:20 +03:00
# Switch over GCC to cross compilation (breaks 386, hence why do it here only)
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install gcc-arm-linux-gnueabi libc6-dev-armel-cross gcc-arm-linux-gnueabihf libc6-dev-armhf-cross gcc-aarch64-linux-gnu libc6-dev-arm64-cross
- sudo ln -s /usr/include/asm-generic /usr/include/asm
- GOARM=5 CC=arm-linux-gnueabi-gcc go run build/ci.go install -arch arm
- GOARM=5 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
- GOARM=6 CC=arm-linux-gnueabi-gcc go run build/ci.go install -arch arm
- GOARM=6 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
- GOARM=7 CC=arm-linux-gnueabihf-gcc go run build/ci.go install -arch arm
- GOARM=7 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
- CC=aarch64-linux-gnu-gcc go run build/ci.go install -arch arm64
- go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
2016-10-17 15:17:14 +03:00
# This builder does the OSX Azure, Android Maven and Azure and iOS CocoaPods and Azure uploads
2016-11-02 19:21:05 +03:00
- os : osx
2016-12-13 20:54:56 +03:00
go : 1.7 .4
2016-11-02 19:21:05 +03:00
env :
2016-11-02 20:36:48 +03:00
- azure-osx
2016-10-17 15:17:14 +03:00
- mobile
2016-11-02 19:21:05 +03:00
script :
- go run build/ci.go install
2016-11-03 15:44:16 +03:00
- go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -upload gethstore/builds
2016-05-25 15:07:57 +03:00
2016-11-09 12:13:37 +03:00
# Build the Android archive and upload it to Maven Central and Azure
2016-09-05 19:07:57 +03:00
- brew update
2017-01-20 12:33:58 +03:00
- travis_wait 60 brew install android-sdk android-ndk maven gpg
2016-11-15 11:25:51 +03:00
- alias gpg="gpg2"
2016-11-11 13:06:24 +03:00
2016-11-17 18:15:17 +03:00
- export ANDROID_HOME=/usr/local/opt/android-sdk
2017-01-20 12:33:58 +03:00
- export ANDROID_NDK=/usr/local/opt/android-ndk
2016-11-16 02:44:37 +03:00
- echo "y" | android update sdk --no-ui --filter `android list sdk | grep "SDK Platform Android" | grep -E 'API 15|API 19|API 24' | awk '{print $1}' | cut -d '-' -f 1 | tr '\n' ','`
2016-11-11 13:06:24 +03:00
2016-10-17 15:17:14 +03:00
- go run build/ci.go aar -signer ANDROID_SIGNING_KEY -deploy https://oss.sonatype.org -upload gethstore/builds
2016-09-05 19:07:57 +03:00
2016-11-15 11:25:51 +03:00
# Build the iOS framework and upload it to CocoaPods and Azure
- gem uninstall cocoapods -a
- gem install cocoapods --pre
2016-11-17 18:15:17 +03:00
- mv ~/.cocoapods/repos/master ~/.cocoapods/repos/master.bak
- sed -i '.bak' 's/repo.join/!repo.join/g' $(dirname `gem which cocoapods`)/cocoapods/sources_manager.rb
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git clone --depth=1 https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master && pod setup --verbose; fi
2016-11-15 12:44:54 +03:00
- xctool -version
- xcrun simctl list
2016-11-17 18:15:17 +03:00
- go run build/ci.go xcode -signer IOS_SIGNING_KEY -deploy trunk -upload gethstore/builds
2016-11-15 11:25:51 +03:00
2014-11-15 04:58:09 +02:00
install :
2015-08-18 23:46:48 +03:00
- go get golang.org/x/tools/cmd/cover
2014-11-16 03:45:05 +02:00
script :
2016-05-25 15:07:57 +03:00
- go run build/ci.go install
2017-01-13 11:53:43 +03:00
- go run build/ci.go test -coverage -vet -misspell
2016-05-25 15:07:57 +03:00
2015-03-24 11:41:04 +02:00
notifications :
webhooks :
urls :
- https://webhooks.gitter.im/e/e09ccdce1048c5e03445
2016-05-04 19:45:50 +03:00
on_success : change
2015-06-25 17:46:54 +03:00
on_failure : always