github.com/ethereum/go-ethereum@v1.14.4-0.20240516095835-473ee8fc07a3/.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 # These builders create the Docker sub-images for multi-arch push and each 13 # will attempt to push the multi-arch image if they are the last builder 14 - stage: build 15 if: type = push 16 os: linux 17 arch: amd64 18 dist: noble 19 go: 1.22.x 20 env: 21 - docker 22 services: 23 - docker 24 git: 25 submodules: false # avoid cloning ethereum/tests 26 before_install: 27 - export DOCKER_CLI_EXPERIMENTAL=enabled 28 script: 29 - go run build/ci.go docker -image -manifest amd64,arm64 -upload ethereum/client-go 30 31 - stage: build 32 if: type = push 33 os: linux 34 arch: arm64 35 dist: noble 36 go: 1.22.x 37 env: 38 - docker 39 services: 40 - docker 41 git: 42 submodules: false # avoid cloning ethereum/tests 43 before_install: 44 - export DOCKER_CLI_EXPERIMENTAL=enabled 45 script: 46 - go run build/ci.go docker -image -manifest amd64,arm64 -upload ethereum/client-go 47 48 # This builder does the Linux Azure uploads 49 - stage: build 50 if: type = push 51 os: linux 52 dist: noble 53 sudo: required 54 go: 1.22.x 55 env: 56 - azure-linux 57 git: 58 submodules: false # avoid cloning ethereum/tests 59 script: 60 # build amd64 61 - go run build/ci.go install -dlgo 62 - go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 63 64 # build 386 65 - sudo -E apt-get -yq --no-install-suggests --no-install-recommends install gcc-multilib 66 - go run build/ci.go install -dlgo -arch 386 67 - go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 68 69 # Switch over GCC to cross compilation (breaks 386, hence why do it here only) 70 - 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 71 - sudo ln -s /usr/include/asm-generic /usr/include/asm 72 73 - GOARM=5 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabi-gcc 74 - GOARM=5 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 75 - GOARM=6 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabi-gcc 76 - GOARM=6 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 77 - GOARM=7 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabihf-gcc 78 - GOARM=7 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 79 - go run build/ci.go install -dlgo -arch arm64 -cc aarch64-linux-gnu-gcc 80 - go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 81 82 # This builder does the OSX Azure uploads 83 - stage: build 84 if: type = push 85 os: osx 86 osx_image: xcode14.2 87 go: 1.22.x 88 env: 89 - azure-osx 90 git: 91 submodules: false # avoid cloning ethereum/tests 92 script: 93 - go run build/ci.go install -dlgo 94 - go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 95 - go run build/ci.go install -dlgo -arch arm64 96 - go run build/ci.go archive -arch arm64 -type tar -signer OSX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds 97 98 # These builders run the tests 99 - stage: build 100 if: type = push 101 os: linux 102 arch: amd64 103 dist: noble 104 go: 1.22.x 105 script: 106 - travis_wait 45 go run build/ci.go test $TEST_PACKAGES 107 108 - stage: build 109 if: type = push 110 os: linux 111 dist: noble 112 go: 1.21.x 113 script: 114 - travis_wait 45 go run build/ci.go test $TEST_PACKAGES 115 116 # This builder does the Ubuntu PPA nightly uploads 117 - stage: build 118 if: type = cron || (type = push && tag ~= /^v[0-9]/) 119 os: linux 120 dist: noble 121 go: 1.22.x 122 env: 123 - ubuntu-ppa 124 git: 125 submodules: false # avoid cloning ethereum/tests 126 before_install: 127 - sudo -E apt-get -yq --no-install-suggests --no-install-recommends install devscripts debhelper dput fakeroot 128 script: 129 - echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts 130 - go run build/ci.go debsrc -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <geth-ci@ethereum.org>" 131 132 # This builder does the Azure archive purges to avoid accumulating junk 133 - stage: build 134 if: type = cron 135 os: linux 136 dist: noble 137 go: 1.22.x 138 env: 139 - azure-purge 140 git: 141 submodules: false # avoid cloning ethereum/tests 142 script: 143 - go run build/ci.go purge -store gethstore/builds -days 14 144 145 # This builder executes race tests 146 - stage: build 147 if: type = cron 148 os: linux 149 dist: noble 150 go: 1.22.x 151 env: 152 - racetests 153 script: 154 - travis_wait 60 go run build/ci.go test -race $TEST_PACKAGES