mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 08:14:18 -04:00
This fix cleans up `.travis.yml` and use `go_import_path` to replace the customerized script for go import path (in case the build is from a forked repo). Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
50 lines
2.1 KiB
YAML
50 lines
2.1 KiB
YAML
sudo: required
|
|
# Trusty distribution is much faster when sudo is required
|
|
dist: trusty
|
|
|
|
services:
|
|
- docker
|
|
|
|
language: go
|
|
go:
|
|
- 1.6
|
|
|
|
go_import_path: github.com/miekg/coredns
|
|
|
|
# In the Travis VM-based build environment, IPv6 networking is not
|
|
# enabled by default. The sysctl operations below enable IPv6.
|
|
# IPv6 is needed by some of the CoreDNS test cases. The VM environment
|
|
# is needed to have access to sudo in the test environment. Sudo is
|
|
# needed to have docker in the test environment. Docker is needed to
|
|
# launch a kubernetes instance in the test environment.
|
|
# (Dependencies are fun! :) )
|
|
before_install:
|
|
- cat /proc/net/if_inet6
|
|
- uname -a
|
|
- sudo bash -c 'if [ `cat /proc/net/if_inet6 | wc -l` = "0" ]; then echo "Enabling IPv6" ; sysctl net.ipv6.conf.all.disable_ipv6=0 ; sysctl net.ipv6.conf.default.disable_ipv6=0 ; sysctl net.ipv6.conf.lo.disable_ipv6=0 ; fi'
|
|
- cat /proc/net/if_inet6
|
|
- env
|
|
|
|
before_script:
|
|
# Download etcd, unpack and launch
|
|
- curl -L https://github.com/coreos/etcd/releases/download/v2.3.1/etcd-v2.3.1-linux-amd64.tar.gz -o etcd-v2.3.1-linux-amd64.tar.gz
|
|
- tar xzvf etcd-v2.3.1-linux-amd64.tar.gz
|
|
- ./etcd-v2.3.1-linux-amd64/etcd &
|
|
# If docker is available, pull the kubernetes hyperkube image down and launch kubernetes.
|
|
- if which docker &>/dev/null ; then docker pull gcr.io/google_containers/hyperkube-amd64:v1.2.4 ; docker ps -a ; fi
|
|
- if which docker &>/dev/null ; then ./contrib/kubernetes/testscripts/start_k8s_with_services.sh ; docker ps -a ; fi
|
|
# Get golang dependencies, and build coredns binary
|
|
- go get -v -d ./...
|
|
- go get github.com/coreos/go-etcd/etcd
|
|
#- go build -v -ldflags="-s -w"
|
|
|
|
script:
|
|
- go test -tags etcd -race -bench=. ./...
|
|
# Run kubernetes integration tests only if kubectl is available. i.e. If kubernetes was launched
|
|
- ./contrib/kubernetes/testscripts/kubectl version && go test -v -tags k8s -race -bench=. -run 'TestK8sIntegration' ./test
|
|
# go cannot use test profile flag with multiple packages so we have to iterate, the following might be consolidated with the above steps.
|
|
- ./.coverage.sh
|
|
|
|
after_success:
|
|
- bash <(curl -s https://codecov.io/bash)
|