github.com/calmw/ethereum@v0.1.1/.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 env: 9 - azure-osx 10 11 include: 12 # This builder only tests code linters on latest version of Go 13 - stage: lint 14 os: linux 15 dist: bionic 16 go: 1.20.x 17 env: 18 - lint 19 git: 20 submodules: false # avoid cloning ethereum/tests 21 script: 22 - go run build/ci.go lint 23 24 # These builders create the Docker sub-images for multi-arch push and each 25 # will attempt to push the multi-arch image if they are the last builder 26 - stage: build 27 if: type = push 28 os: linux 29 arch: amd64 30 dist: bionic 31 go: 1.20.x 32 env: 33 - docker 34 services: 35 - docker 36 git: 37 submodules: false # avoid cloning ethereum/tests 38 before_install: 39 - export DOCKER_CLI_EXPERIMENTAL=enabled 40 script: 41 - go run build/ci.go docker -image -manifest amd64,arm64 -upload ethereum/client-go 42 43 - stage: build 44 if: type = push 45 os: linux 46 arch: arm64 47 dist: bionic 48 go: 1.20.x 49 env: 50 - docker 51 services: 52 - docker 53 git: 54 submodules: false # avoid cloning ethereum/tests 55 before_install: 56 - export DOCKER_CLI_EXPERIMENTAL=enabled 57 script: 58 - go run build/ci.go docker -image -manifest amd64,arm64 -upload ethereum/client-go 59 60 # This builder does the Linux Azure uploads 61 - stage: build 62 if: type = push 63 os: linux 64 dist: bionic 65 sudo: required 66 go: 1.20.x 67 env: 68 - azure-linux 69 - GO111MODULE=on 70 git: 71 submodules: false # avoid cloning ethereum/tests 72 addons: 73 apt: 74 packages: 75 - gcc-multilib 76 script: 77 # Build for the primary platforms that Trusty can manage 78 - go run build/ci.go install -dlgo 79 - go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 80 - go run build/ci.go install -dlgo -arch 386 81 - go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 82 83 # Switch over GCC to cross compilation (breaks 386, hence why do it here only) 84 - 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 85 - sudo ln -s /usr/include/asm-generic /usr/include/asm 86 87 - GOARM=5 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabi-gcc 88 - GOARM=5 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 89 - GOARM=6 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabi-gcc 90 - GOARM=6 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 91 - GOARM=7 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabihf-gcc 92 - GOARM=7 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 93 - go run build/ci.go install -dlgo -arch arm64 -cc aarch64-linux-gnu-gcc 94 - go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 95 96 # This builder does the OSX Azure uploads 97 - stage: build 98 if: type = push 99 os: osx 100 go: 1.20.x 101 env: 102 - azure-osx 103 - GO111MODULE=on 104 git: 105 submodules: false # avoid cloning ethereum/tests 106 script: 107 - go run build/ci.go install -dlgo 108 - go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 109 110 # These builders run the tests 111 - stage: build 112 os: linux 113 arch: amd64 114 dist: bionic 115 go: 1.20.x 116 env: 117 - GO111MODULE=on 118 script: 119 - go run build/ci.go test $TEST_PACKAGES 120 121 - stage: build 122 if: type = pull_request 123 os: linux 124 arch: arm64 125 dist: bionic 126 go: 1.19.x 127 env: 128 - GO111MODULE=on 129 script: 130 - go run build/ci.go test $TEST_PACKAGES 131 132 - stage: build 133 os: linux 134 dist: bionic 135 go: 1.19.x 136 env: 137 - GO111MODULE=on 138 script: 139 - go run build/ci.go test $TEST_PACKAGES 140 141 # This builder does the Ubuntu PPA nightly uploads 142 - stage: build 143 if: type = cron || (type = push && tag ~= /^v[0-9]/) 144 os: linux 145 dist: bionic 146 go: 1.20.x 147 env: 148 - ubuntu-ppa 149 - GO111MODULE=on 150 git: 151 submodules: false # avoid cloning ethereum/tests 152 addons: 153 apt: 154 packages: 155 - devscripts 156 - debhelper 157 - dput 158 - fakeroot 159 - python-bzrlib 160 - python-paramiko 161 script: 162 - echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts 163 - go run build/ci.go debsrc -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <geth-ci@ethereum.org>" 164 165 # This builder does the Azure archive purges to avoid accumulating junk 166 - stage: build 167 if: type = cron 168 os: linux 169 dist: bionic 170 go: 1.20.x 171 env: 172 - azure-purge 173 - GO111MODULE=on 174 git: 175 submodules: false # avoid cloning ethereum/tests 176 script: 177 - go run build/ci.go purge -store gethstore/builds -days 14 178 179 # This builder executes race tests 180 - stage: build 181 if: type = cron 182 os: linux 183 dist: bionic 184 go: 1.20.x 185 env: 186 - GO111MODULE=on 187 script: 188 - go run build/ci.go test -race $TEST_PACKAGES 189