support password match/ca publickey for kubernetes (#211)

* add testcase

* refine testcases

* fix tab

* happy ql

* inline timeout

* add ca support for k8s
This commit is contained in:
Boshi Lian 2023-08-26 18:07:36 -07:00 committed by GitHub
parent 13fcc8c0a8
commit 694d09affd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 391 additions and 154 deletions

View file

@ -49,6 +49,7 @@ services:
- /var/run/docker.sock:/var/run/docker.sock
- ../plugin/kubernetes/crd.yaml:/kubernetes/crd.yaml:ro
- ./k8sworkload.yaml:/kubernetes/workload.yaml:ro
- kubeconfig:/root/.kube
# networks:
# - kind
# - default
@ -56,19 +57,17 @@ services:
- bash
- -c
- |
# kind delete cluster -n sshpipertest
(kind get kubeconfig -q -n sshpipertest || kind create cluster -n sshpipertest)
docker network connect kind $$(hostname) # self contain
docker network connect e2e_default sshpipertest-control-plane
kind export kubeconfig -n sshpipertest --internal
#kubectl delete po -l k8s-app=kube-dns -A
kind load docker-image -n sshpipertest e2e_piper-imageonly
kubectl wait --for=condition=ready pod -A --all --timeout=2m
kubectl delete -f /kubernetes/crd.yaml
kubectl delete -f /kubernetes/workload.yaml
kubectl delete -f /kubernetes/crd.yaml --force
kubectl delete -f /kubernetes/workload.yaml --force
kubectl wait --for=delete pod --all --timeout=2m # ensure no leftover
kubectl apply -f /kubernetes/crd.yaml
kubectl apply -f /kubernetes/workload.yaml
#kubectl set image deployment/sshpiper-deployment sshpiper=e2e_piper-imageonly
kubectl wait deployment --all --for condition=Available=True
kubectl port-forward service/sshpiper --pod-running-timeout=2m --address 0.0.0.0 2222:2222 &
kubectl logs -f deployment/sshpiper-deployment
@ -94,6 +93,7 @@ services:
- sshconfig_publickey:/sshconfig_publickey
- sshconfig_password:/sshconfig_password
- /var/run/docker.sock:/var/run/docker.sock
- kubeconfig:/root/.kube:ro
command: ["./e2eentry.sh"]
privileged: true
working_dir: /src/e2e
@ -119,5 +119,7 @@ volumes:
sshconfig_password:
kubeconfig:
networks:
netdistract: