github.com/CryptoKass/go-ethereum@v1.9.8-0.20191108085857-de2259d27c75/.travis.yml (about) 1 language: go 2 go_import_path: github.com/ethereum/go-ethereum 3 sudo: false 4 jobs: 5 include: 6 # This builder only tests code linters on latest version of Go 7 - stage: lint 8 os: linux 9 dist: xenial 10 go: 1.13.x 11 env: 12 - lint 13 git: 14 submodules: false # avoid cloning ethereum/tests 15 script: 16 - go run build/ci.go lint 17 18 - stage: build 19 os: linux 20 dist: xenial 21 go: 1.11.x 22 script: 23 - go run build/ci.go install 24 - go run build/ci.go test -coverage $TEST_PACKAGES 25 26 - stage: build 27 os: linux 28 dist: xenial 29 go: 1.12.x 30 script: 31 - go run build/ci.go install 32 - go run build/ci.go test -coverage $TEST_PACKAGES 33 34 # These are the latest Go versions. 35 - stage: build 36 os: linux 37 arch: amd64 38 dist: xenial 39 go: 1.13.x 40 script: 41 - go run build/ci.go install 42 - go run build/ci.go test -coverage $TEST_PACKAGES 43 44 - stage: build 45 os: linux 46 arch: arm64 47 dist: xenial 48 go: 1.13.x 49 script: 50 - go run build/ci.go install 51 - go run build/ci.go test -coverage $TEST_PACKAGES 52 53 - stage: build 54 os: osx 55 go: 1.13.x 56 script: 57 - echo "Increase the maximum number of open file descriptors on macOS" 58 - NOFILE=20480 59 - sudo sysctl -w kern.maxfiles=$NOFILE 60 - sudo sysctl -w kern.maxfilesperproc=$NOFILE 61 - sudo launchctl limit maxfiles $NOFILE $NOFILE 62 - sudo launchctl limit maxfiles 63 - ulimit -S -n $NOFILE 64 - ulimit -n 65 - unset -f cd # workaround for https://github.com/travis-ci/travis-ci/issues/8703 66 - go run build/ci.go install 67 - go run build/ci.go test -coverage $TEST_PACKAGES 68 69 # This builder does the Ubuntu PPA upload 70 - stage: build 71 if: type = push 72 os: linux 73 dist: xenial 74 go: 1.13.x 75 env: 76 - ubuntu-ppa 77 git: 78 submodules: false # avoid cloning ethereum/tests 79 addons: 80 apt: 81 packages: 82 - devscripts 83 - debhelper 84 - dput 85 - fakeroot 86 - python-bzrlib 87 - python-paramiko 88 cache: 89 directories: 90 - $HOME/.gobundle 91 script: 92 - echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts 93 - go run build/ci.go debsrc -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <geth-ci@ethereum.org>" -goversion 1.13.4 -gohash 95dbeab442ee2746b9acf0934c8e2fc26414a0565c008631b04addb8c02e7624 -gobundle $HOME/.gobundle/go.tar.gz 94 95 # This builder does the Linux Azure uploads 96 - stage: build 97 if: type = push 98 os: linux 99 dist: xenial 100 sudo: required 101 go: 1.13.x 102 env: 103 - azure-linux 104 git: 105 submodules: false # avoid cloning ethereum/tests 106 addons: 107 apt: 108 packages: 109 - gcc-multilib 110 script: 111 # Build for the primary platforms that Trusty can manage 112 - go run build/ci.go install 113 - go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 114 - go run build/ci.go install -arch 386 115 - go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 116 117 # Switch over GCC to cross compilation (breaks 386, hence why do it here only) 118 - 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 119 - sudo ln -s /usr/include/asm-generic /usr/include/asm 120 121 - GOARM=5 go run build/ci.go install -arch arm -cc arm-linux-gnueabi-gcc 122 - GOARM=5 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 123 - GOARM=6 go run build/ci.go install -arch arm -cc arm-linux-gnueabi-gcc 124 - GOARM=6 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 125 - GOARM=7 go run build/ci.go install -arch arm -cc arm-linux-gnueabihf-gcc 126 - GOARM=7 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 127 - go run build/ci.go install -arch arm64 -cc aarch64-linux-gnu-gcc 128 - go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 129 130 # This builder does the Linux Azure MIPS xgo uploads 131 - stage: build 132 if: type = push 133 os: linux 134 dist: xenial 135 services: 136 - docker 137 go: 1.13.x 138 env: 139 - azure-linux-mips 140 git: 141 submodules: false # avoid cloning ethereum/tests 142 script: 143 - go run build/ci.go xgo --alltools -- --targets=linux/mips --ldflags '-extldflags "-static"' -v 144 - for bin in build/bin/*-linux-mips; do mv -f "${bin}" "${bin/-linux-mips/}"; done 145 - go run build/ci.go archive -arch mips -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 146 147 - go run build/ci.go xgo --alltools -- --targets=linux/mipsle --ldflags '-extldflags "-static"' -v 148 - for bin in build/bin/*-linux-mipsle; do mv -f "${bin}" "${bin/-linux-mipsle/}"; done 149 - go run build/ci.go archive -arch mipsle -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 150 151 - go run build/ci.go xgo --alltools -- --targets=linux/mips64 --ldflags '-extldflags "-static"' -v 152 - for bin in build/bin/*-linux-mips64; do mv -f "${bin}" "${bin/-linux-mips64/}"; done 153 - go run build/ci.go archive -arch mips64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 154 155 - go run build/ci.go xgo --alltools -- --targets=linux/mips64le --ldflags '-extldflags "-static"' -v 156 - for bin in build/bin/*-linux-mips64le; do mv -f "${bin}" "${bin/-linux-mips64le/}"; done 157 - go run build/ci.go archive -arch mips64le -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds 158 159 # This builder does the Android Maven and Azure uploads 160 - stage: build 161 if: type = push 162 os: linux 163 dist: xenial 164 addons: 165 apt: 166 packages: 167 - oracle-java8-installer 168 - oracle-java8-set-default 169 language: android 170 android: 171 components: 172 - platform-tools 173 - tools 174 - android-15 175 - android-19 176 - android-24 177 env: 178 - azure-android 179 - maven-android 180 git: 181 submodules: false # avoid cloning ethereum/tests 182 before_install: 183 - curl https://dl.google.com/go/go1.13.linux-amd64.tar.gz | tar -xz 184 - export PATH=`pwd`/go/bin:$PATH 185 - export GOROOT=`pwd`/go 186 - export GOPATH=$HOME/go 187 script: 188 # Build the Android archive and upload it to Maven Central and Azure 189 - curl https://dl.google.com/android/repository/android-ndk-r19b-linux-x86_64.zip -o android-ndk-r19b.zip 190 - unzip -q android-ndk-r19b.zip && rm android-ndk-r19b.zip 191 - mv android-ndk-r19b $ANDROID_HOME/ndk-bundle 192 193 - mkdir -p $GOPATH/src/github.com/ethereum 194 - ln -s `pwd` $GOPATH/src/github.com/ethereum/go-ethereum 195 - go run build/ci.go aar -signer ANDROID_SIGNING_KEY -deploy https://oss.sonatype.org -upload gethstore/builds 196 197 # This builder does the OSX Azure, iOS CocoaPods and iOS Azure uploads 198 - stage: build 199 if: type = push 200 os: osx 201 go: 1.13.x 202 env: 203 - azure-osx 204 - azure-ios 205 - cocoapods-ios 206 git: 207 submodules: false # avoid cloning ethereum/tests 208 script: 209 - go run build/ci.go install 210 - go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -upload gethstore/builds 211 212 # Build the iOS framework and upload it to CocoaPods and Azure 213 - gem uninstall cocoapods -a -x 214 - gem install cocoapods 215 216 - mv ~/.cocoapods/repos/master ~/.cocoapods/repos/master.bak 217 - sed -i '.bak' 's/repo.join/!repo.join/g' $(dirname `gem which cocoapods`)/cocoapods/sources_manager.rb 218 - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git clone --depth=1 https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master && pod setup --verbose; fi 219 220 - xctool -version 221 - xcrun simctl list 222 223 # Workaround for https://github.com/golang/go/issues/23749 224 - export CGO_CFLAGS_ALLOW='-fmodules|-fblocks|-fobjc-arc' 225 - go run build/ci.go xcode -signer IOS_SIGNING_KEY -deploy trunk -upload gethstore/builds 226 227 # This builder does the Azure archive purges to avoid accumulating junk 228 - stage: build 229 if: type = cron 230 os: linux 231 dist: xenial 232 go: 1.13.x 233 env: 234 - azure-purge 235 git: 236 submodules: false # avoid cloning ethereum/tests 237 script: 238 - go run build/ci.go purge -store gethstore/builds -days 14