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