language: go _go: &_go go: 1.8 _dep_ensure: &_dep_ensure <<: *_go before_install: go get -u github.com/golang/dep/cmd/dep install: $GOPATH/bin/dep ensure _unittest: &_unittest <<: *_dep_ensure script: go test $(go list ./... | grep -v '/vendor/') _build: &_build <<: *_dep_ensure script: - go build -o ./gobgp/gobgp ./gobgp/ - go build -o ./gobgpd/gobgpd ./gobgpd/ _python: &_python language: python python: "2.7" _docker: &_docker <<: *_python sudo: required before_install: - test $TRAVIS_OS_NAME == "linux" && sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 - test $TRAVIS_OS_NAME == "linux" && sudo sysctl -w net.ipv6.conf.default.disable_ipv6=0 - test $TRAVIS_OS_NAME == "linux" && sudo sysctl -w net.ipv6.conf.docker0.disable_ipv6=1 install: - pip install -r test/pip-requires.txt - fab -f test/lib/base.py make_gobgp_ctn:tag=$DOCKER_IMAGE,from_image=$FROM_IMAGE script: - PYTHONPATH=test python test/scenario_test/$TEST --gobgp-image $DOCKER_IMAGE -x -s services: - docker env: global: - DOCKER_IMAGE=gobgp - FROM_IMAGE=osrg/quagga matrix: allow_failures: - go: tip include: - <<: *_unittest go: tip - <<: *_unittest go: 1.8 - <<: *_unittest go: 1.9 after_success: - test -n "$TRAVIS_TAG" && curl -sL https://git.io/goreleaser | bash # # Cross-compile # # Note: We use "before_script" to enable "go env" settings. The following keeps # "env" sections as just markers of Travis-CI Web UI. # See https://github.com/travis-ci/travis-ci/issues/6126 - <<: *_build env: - GOOS="windows" before_script: - export GOOS="windows" - go env - <<: *_build env: - GOOS="freebsd" before_script: - export GOOS="freebsd" - go env - <<: *_build env: - GOOS="darwin" before_script: - export GOOS="darwin" - go env - <<: *_build env: - GOARCH="386" before_script: - export GOARCH="386" - go env # # Misc # - <<: *_go script: test -z "$(go fmt ./...)" - <<: *_go script: test -z "$(go vet ./...)" - <<: *_dep_ensure script: python test/scenario_test/ci-scripts/build_embeded_go.py docs/sources/lib.md # # Docker # - <<: *_docker env: - TEST=bgp_router_test.py - <<: *_docker env: - TEST=bgp_zebra_test.py - <<: *_docker env: - TEST=bgp_zebra_nht_test.py FROM_IMAGE=osrg/quagga:v1.0 - <<: *_docker env: - TEST=evpn_test.py - <<: *_docker env: - TEST=flow_spec_test.py - <<: *_docker env: - TEST=global_policy_test.py - <<: *_docker env: - TEST=graceful_restart_test.py - <<: *_docker env: - TEST=ibgp_router_test.py - <<: *_docker env: - TEST=route_reflector_test.py - <<: *_docker env: - TEST=route_server_as2_test.py - <<: *_docker env: - TEST=route_server_ipv4_v6_test.py - <<: *_docker env: - TEST=route_server_malformed_test.py - <<: *_docker env: - TEST=route_server_policy_grpc_test.py - <<: *_docker env: - TEST=route_server_policy_test.py - <<: *_docker env: - TEST=route_server_softreset_test.py - <<: *_docker env: - TEST=route_server_test.py - <<: *_docker env: - TEST=route_server_test2.py - <<: *_docker env: - TEST=zapi_v3_test.py FROM_IMAGE=osrg/quagga:v1.0 - <<: *_docker env: - TEST=long_lived_graceful_restart_test.py - <<: *_docker env: - TEST=vrf_neighbor_test.py - <<: *_docker env: - TEST=vrf_neighbor_test2.py - <<: *_docker env: - TEST=bgp_unnumbered_test.py - <<: *_docker env: - TEST=aspath_test.py - <<: *_docker env: - TEST=addpath_test.py - <<: *_docker env: - TEST=bgp_malformed_msg_handling_test.py - <<: *_docker env: - TEST=bgp_confederation_test.py # # Spell Check # - <<: *_python install: pip install scspell3k script: bash tools/spell-check/scspell.sh cache: pip: true go_import_path: github.com/osrg/gobgp notifications: slack: secure: KzuC9kytzS7wTlfj4MqSg8EpqXfJRMbo59dAVTA3w587achnVCS3vhUenWuhMCiWk7+6DVWwNpwzn2+A0S6RwMFMpKAU6Ij6K9sxEOgqBGuMN8w1//w+uJTryzsnebEIhInGt2kKfqz4Wx3QQqW5gVhI+8s+c5M0iXxFtN4soVk=