Debug
This commit is contained in:
parent
123e0d6c05
commit
3f4ef674ad
7 changed files with 44 additions and 41 deletions
15
.travis.yml
15
.travis.yml
|
@ -20,21 +20,18 @@ env:
|
||||||
- RELEASE="ci-${TRAVIS_BUILD_ID}"
|
- RELEASE="ci-${TRAVIS_BUILD_ID}"
|
||||||
- DOCKER=docker
|
- DOCKER=docker
|
||||||
|
|
||||||
before_script:
|
|
||||||
- export PATH=$PATH:$PWD/controllers/nginx/e2e/e2e-internal
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
include:
|
include:
|
||||||
- stage: Static Check
|
- stage: Static Check
|
||||||
script:
|
script:
|
||||||
- go get github.com/golang/lint/golint
|
- go get github.com/golang/lint/golint
|
||||||
- make fmt lint vet
|
- make fmt lint vet
|
||||||
- stage: Coverage
|
# - stage: Coverage
|
||||||
script:
|
# script:
|
||||||
- go get github.com/mattn/goveralls
|
# - go get github.com/mattn/goveralls
|
||||||
- go get github.com/modocache/gover
|
# - go get github.com/modocache/gover
|
||||||
- if ! go get github.com/golang/tools/cmd/cover; then go get golang.org/x/tools/cmd/cover; fi
|
# - if ! go get github.com/golang/tools/cmd/cover; then go get golang.org/x/tools/cmd/cover; fi
|
||||||
- make cover
|
# - make cover
|
||||||
- stage: e2e
|
- stage: e2e
|
||||||
script:
|
script:
|
||||||
- make test-e2e
|
- make test-e2e
|
||||||
|
|
|
@ -4,7 +4,6 @@ metadata:
|
||||||
name: default-http-backend
|
name: default-http-backend
|
||||||
labels:
|
labels:
|
||||||
k8s-app: default-http-backend
|
k8s-app: default-http-backend
|
||||||
namespace: kube-system
|
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
template:
|
template:
|
||||||
|
@ -40,7 +39,6 @@ apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: default-http-backend
|
name: default-http-backend
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
labels:
|
||||||
k8s-app: default-http-backend
|
k8s-app: default-http-backend
|
||||||
spec:
|
spec:
|
||||||
|
|
|
@ -3,31 +3,35 @@
|
||||||
export MINIKUBE_VERSION=0.22.0
|
export MINIKUBE_VERSION=0.22.0
|
||||||
export K8S_VERSION=v1.7.5
|
export K8S_VERSION=v1.7.5
|
||||||
|
|
||||||
export PWD=`pwd`
|
export KUBECTL="/usr/local/bin/kubectl"
|
||||||
export BASEDIR="$(dirname ${BASH_SOURCE})"
|
export MINIKUBE="/usr/local/bin/minikube"
|
||||||
export KUBECTL="${BASEDIR}/kubectl"
|
export WAIT_FOR_DEPLOYMENT="/usr/local/bin/wait-for-deployment"
|
||||||
export MINIKUBE="${BASEDIR}/minikube"
|
|
||||||
export GOOS="${GOOS:-linux}"
|
export GOOS="${GOOS:-linux}"
|
||||||
|
|
||||||
export MINIKUBE_WANTUPDATENOTIFICATION=false
|
export MINIKUBE_WANTUPDATENOTIFICATION=false
|
||||||
export MINIKUBE_WANTREPORTERRORPROMPT=false
|
export MINIKUBE_WANTREPORTERRORPROMPT=false
|
||||||
export MINIKUBE_HOME=$HOME
|
export MINIKUBE_HOME=$HOME
|
||||||
export CHANGE_MINIKUBE_NONE_USER=true
|
export CHANGE_MINIKUBE_NONE_USER=true
|
||||||
|
export MINIKUBE_PROFILE="ingress-e2e"
|
||||||
|
|
||||||
export KUBECONFIG=$HOME/.kube/config
|
export KUBECONFIG=$HOME/.kube/config
|
||||||
|
|
||||||
export MINIKUBE_PROFILE="ingress-e2e"
|
|
||||||
|
|
||||||
export PATH=$PATH:$BASEDIR
|
|
||||||
|
|
||||||
if [ ! -e ${KUBECTL} ]; then
|
if [ ! -e ${KUBECTL} ]; then
|
||||||
echo "kubectl binary is missing. downloading..."
|
echo "kubectl binary is missing. downloading binary to ${KUBECTL}"
|
||||||
curl -sSL http://storage.googleapis.com/kubernetes-release/release/${K8S_VERSION}/bin/${GOOS}/amd64/kubectl -o ${KUBECTL}
|
sudo curl -sSL http://storage.googleapis.com/kubernetes-release/release/${K8S_VERSION}/bin/${GOOS}/amd64/kubectl -o ${KUBECTL}
|
||||||
chmod u+x ${KUBECTL}
|
sudo chmod +x ${KUBECTL}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -e ${MINIKUBE} ]; then
|
if [ ! -e ${MINIKUBE} ]; then
|
||||||
echo "minikube binary is missing. downloading..."
|
echo "minikube binary is missing. downloading binary to ${MINIKUBE}"
|
||||||
curl -sSLo ${MINIKUBE} https://storage.googleapis.com/minikube/releases/v${MINIKUBE_VERSION}/minikube-linux-amd64
|
sudo curl -sSLo ${MINIKUBE} https://storage.googleapis.com/minikube/releases/v${MINIKUBE_VERSION}/minikube-linux-amd64
|
||||||
chmod +x ${MINIKUBE}
|
sudo chmod +x ${MINIKUBE}
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -e ${WAIT_FOR_DEPLOYMENT} ]; then
|
||||||
|
echo "wait-for-deployment script is missing. downloading binary to ${WAIT_FOR_DEPLOYMENT}"
|
||||||
|
# https://github.com/timoreimann/kubernetes-scripts
|
||||||
|
sudo curl -sSLo ${WAIT_FOR_DEPLOYMENT} https://raw.githubusercontent.com/timoreimann/kubernetes-scripts/master/wait-for-deployment
|
||||||
|
sudo chmod +x ${WAIT_FOR_DEPLOYMENT}
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
set -eof pipefail
|
|
||||||
|
|
||||||
. ./e2e/e2e-internal/e2e-env.sh
|
. ./e2e/e2e-internal/e2e-env.sh
|
||||||
|
|
||||||
mkdir -p $HOME/.kube
|
mkdir -p $HOME/.kube
|
||||||
|
@ -16,10 +14,11 @@ fi
|
||||||
# this for loop waits until kubectl can access the api server that minikube has created
|
# this for loop waits until kubectl can access the api server that minikube has created
|
||||||
for i in {1..150} # timeout for 5 minutes
|
for i in {1..150} # timeout for 5 minutes
|
||||||
do
|
do
|
||||||
$KUBECTL get po &> /dev/null
|
$($KUBECTL get pods &> /dev/null) || true
|
||||||
if [ $? -ne 1 ]; then
|
if [ $? -ne 1 ]; then
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
|
echo -n "."
|
||||||
sleep 10
|
sleep 10
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
|
@ -7,9 +7,23 @@ set -eof pipefail
|
||||||
echo "Creating test tag for image $IMAGE:$TAG"
|
echo "Creating test tag for image $IMAGE:$TAG"
|
||||||
docker tag $IMAGE:$TAG $IMAGE:test
|
docker tag $IMAGE:$TAG $IMAGE:test
|
||||||
|
|
||||||
echo "Uploading test image to minikube"
|
if [ "$TRAVIS" = true ] ; then
|
||||||
dockerenv=$(${MINIKUBE} --profile ${MINIKUBE_PROFILE} docker-env | sed 's/export//g' | sed 's/^#.*$//g' | sed 's/"//g')
|
echo "Using local docker graph as source for $IMAGE:test"
|
||||||
docker save $IMAGE:test | env -i $dockerenv docker load
|
else
|
||||||
|
echo "Uploading test image to minikube"
|
||||||
|
dockerenv=$(${MINIKUBE} --profile ${MINIKUBE_PROFILE} docker-env | sed 's/export//g' | sed 's/^#.*$//g' | sed 's/"//g')
|
||||||
|
docker save $IMAGE:test | env -i $dockerenv docker load
|
||||||
|
fi
|
||||||
|
|
||||||
|
report_error() {
|
||||||
|
echo "unexpected error waiting for nginx ingress controller pod"
|
||||||
|
echo "LOGS:"
|
||||||
|
${KUBECTL} logs -l k8s-app=nginx-ingress-controller
|
||||||
|
}
|
||||||
|
|
||||||
|
trap 'report_error $LINENO' ERR
|
||||||
|
${WAIT_FOR_DEPLOYMENT} nginx-ingress-controller
|
||||||
|
notrap
|
||||||
|
|
||||||
echo "Running tests..."
|
echo "Running tests..."
|
||||||
go test -v k8s.io/ingress/controllers/nginx/e2e/... -run ^TestIngressSuite$ --args --alsologtostderr --v=10
|
go test -v k8s.io/ingress/controllers/nginx/e2e/... -run ^TestIngressSuite$ --args --alsologtostderr --v=10
|
||||||
|
|
|
@ -285,11 +285,5 @@ func finishRunning(stepName string, cmd *exec.Cmd) error {
|
||||||
func kubectlCmd(arg ...string) *exec.Cmd {
|
func kubectlCmd(arg ...string) *exec.Cmd {
|
||||||
args := []string{"--context", "ingress-e2e"}
|
args := []string{"--context", "ingress-e2e"}
|
||||||
args = append(args, arg...)
|
args = append(args, arg...)
|
||||||
|
return exec.Command("kubectl", args...)
|
||||||
kb := os.Getenv("KUBECTL")
|
|
||||||
if kb == "" {
|
|
||||||
kb = "./e2e/e2e-internal/kubectl"
|
|
||||||
}
|
|
||||||
|
|
||||||
return exec.Command(kb, args...)
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,6 @@ metadata:
|
||||||
name: nginx-ingress-controller
|
name: nginx-ingress-controller
|
||||||
labels:
|
labels:
|
||||||
k8s-app: nginx-ingress-controller
|
k8s-app: nginx-ingress-controller
|
||||||
namespace: kube-system
|
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
template:
|
template:
|
||||||
|
@ -30,9 +29,7 @@ spec:
|
||||||
timeoutSeconds: 1
|
timeoutSeconds: 1
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 80
|
- containerPort: 80
|
||||||
hostPort: 80
|
|
||||||
- containerPort: 443
|
- containerPort: 443
|
||||||
hostPort: 443
|
|
||||||
env:
|
env:
|
||||||
- name: POD_NAME
|
- name: POD_NAME
|
||||||
valueFrom:
|
valueFrom:
|
||||||
|
|
Loading…
Reference in a new issue