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