github.com/looshlee/cilium@v1.6.12/test/kubernetes-test.sh (about)

     1  #!/bin/bash
     2  
     3  helm template install/kubernetes/cilium \
     4    --namespace=kube-system \
     5    --set global.registry=k8s1:5000/cilium \
     6    --set global.tag=latest \
     7    --set agent.image=cilium-dev \
     8    --set operator.image=operator \
     9    --set global.debug.enabled=true \
    10    --set global.k8s.requireIPv4PodCIDR=true \
    11    --set global.pprof.enabled=true \
    12    --set global.logSystemLoad=true \
    13    --set global.bpf.preallocateMaps=true \
    14    --set global.etcd.leaseTTL=30s \
    15    --set global.ipv4.enabled=true \
    16    --set global.ipv6.enabled=true \
    17    > cilium.yaml
    18  
    19  kubectl apply -f cilium.yaml
    20  
    21  while true; do
    22      result=$(kubectl -n kube-system get pods -l k8s-app=cilium | grep "Running" -c)
    23      echo "Running pods ${result}"
    24      if [ "${result}" == "2" ]; then
    25  
    26          echo "result match, continue with kubernetes"
    27          break
    28      fi
    29      sleep 1
    30  done
    31  
    32  set -e
    33  
    34  echo "Installing kubetest manually"
    35  
    36  mkdir -p ${HOME}/go/src/k8s.io
    37  cd ${HOME}/go/src/k8s.io
    38  test -d test-infra && rm -rfv test-infra
    39  # Last commit before vendor directory was removed
    40  # why? see https://github.com/kubernetes/test-infra/issues/14165#issuecomment-528620301
    41  git clone https://github.com/kubernetes/test-infra.git
    42  cd test-infra
    43  git reset --hard dbc2ac103595c2348322d1bac7e4743b96fca225
    44  GO111MODULE=off go install k8s.io/test-infra/kubetest
    45  
    46  echo "Installing kubernetes"
    47  KUBERNETES_VERSION=$(kubectl version -o json | jq -r '.serverVersion | .gitVersion')
    48  
    49  mkdir -p ${HOME}/go/src/k8s.io/
    50  cd ${HOME}/go/src/k8s.io/
    51  test -d kubernetes && rm -rfv kubernetes
    52  git clone https://github.com/kubernetes/kubernetes.git -b ${KUBERNETES_VERSION} --depth 1
    53  cd kubernetes
    54  
    55  # Kubernetes is only compiling with golang 1.13.4 for versions >=1.16
    56  GO_VERSION="1.13.8"
    57  sudo rm -fr /usr/local/go
    58  curl -LO https://dl.google.com/go/go${GO_VERSION}.linux-amd64.tar.gz
    59  sudo tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz
    60  GO111MODULE=off make ginkgo
    61  GO111MODULE=off make WHAT='test/e2e/e2e.test'
    62  
    63  export KUBERNETES_PROVIDER=local
    64  export KUBECTL_PATH=/usr/bin/kubectl
    65  export KUBE_MASTER=192.168.36.11
    66  export KUBE_MASTER_IP=192.168.36.11
    67  export KUBE_MASTER_URL="https://192.168.36.11:6443"
    68  
    69  go run hack/e2e.go -- --test --test_args="--ginkgo.focus=NetworkPolicy --e2e-verify-service-account=false --host ${KUBE_MASTER_URL} --ginkgo.skip=(should.allow.egress.access.to.server.in.CIDR.block)|(should.allow.ingress.access.from.updated.pod)|(named.port)"