language: go dist: xenial services: - docker go: - "1.11" - "1.12" cache: directories: - $HOME/.cache/go-build - $HOME/gopath/pkg/mod before_install: # xenial packages are broken and do no allow to cross-compile for both 386 and arm. # 386 requires gcc-multilib installed and arm requires gcc-arm-linux-gnueabi, # but these packages are conflicting. This is a hacky way to install 386 headers. - sudo dpkg --add-architecture i386 - sudo apt-get update - sudo apt-get install -y -q linux-libc-dev:i386 lib32gcc-5-dev lib32stdc++-5-dev install: true script: - make install_prerequisites - make presubmit after_success: - bash <(curl -s https://codecov.io/bash) # If the build fails because some code in not formatted, it's nice to see the diffs after formatting. after_failure: - git diff --name-only - git diff jobs: include: - stage: fuzzit.dev (regression) if: branch = master AND type IN (pull_request) go: 1.12.x script: - ./fuzzit.sh local-regression - stage: fuzzit.dev (fuzzing) if: branch = master AND type IN (push) go: 1.12.x env: secure: "TEXvLRUk/cmNwksHLTihVVyBWoU76EhAXkCCdLbn1FtfqCOzzMnQm02oUYcufLrVWIuVDUEUa9Tq+BrS2LGN2oTJEzk8bdQxeiztiRwbPocRLY3y3BNWWk89Vvu/eC/nPPoeRKZ7k3VZDbAk/+cPyXNMVaxBO7rwMqrne90txgTunX9V7U9Rr7b2phECBEF+riWtO3kWumZZG9qGq6NRmEcsoMOHgF2WGmxeAkAaU8xKdYOYbbUIns3cSf+bGWnFKOxSDkVDOOyKxdAc6OufejbGU4rjspty6ueXaoL69Rq5+7GOUflqLTMO8WUhpc65DPY3+9G2iH1p7U4v10Vk2V6qbQw83DDeucjSH23zIbNkjjYHSV5IMNwAMcEG5fwANfmnmQeVQCJJkwRBZufD1T+CLf9gqVldLG9qUGPI+ySli2J0oVAQ1rvMhKgR44Ipb3FQm0XBYhYXa3i08ojVXEtG8PNGHgrmOJnhUzC/BA+m9QKncxqMuISsBdlRnuU37DD0HeHZ6NTWvGy7gv2mhnCHc7AWuveBsc3XDvSfK8U3tB9LxS2OdRKWQdhnJBKowjAZ55lvTP0AgagQL+mPBQ7qJ2N8OT/oDRtN6tkY+DIEi8JTie0XOitNbY9AaF4hRFcixpesthvTEdOzx//mURXZXiPYQwyrjf9u1dwEpfA=" script: - ./fuzzit.sh fuzzing