diff --git a/extensions/base/suite.gen.go b/extensions/base/suite.gen.go index 9241543d70..d2cd94f06c 100644 --- a/extensions/base/suite.gen.go +++ b/extensions/base/suite.gen.go @@ -2,5 +2,5 @@ package base const ( - sha = "869206d159d62c7f654ad050e24d73312737d6ff" + sha = "0ad9f089ac6a75d7d6e23016ba3914ea566bd107" ) \ No newline at end of file diff --git a/suites/afxdp/suite.gen.go b/suites/afxdp/suite.gen.go index 01cd0c2db4..37da7b0c75 100755 --- a/suites/afxdp/suite.gen.go +++ b/suites/afxdp/suite.gen.go @@ -27,7 +27,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/afxdp?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/afxdp?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) } func (s *Suite) TestKernel2IP2Kernel_ipv6() { @@ -35,7 +35,7 @@ func (s *Suite) TestKernel2IP2Kernel_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2kernel-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2IP2Kernel_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2IP2Kernel_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2kernel-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ip2kernel-ipv6`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2kernel-ipv6 -- ping -c 4 2001:db8::`) @@ -46,7 +46,7 @@ func (s *Suite) TestMemif2IP2Memif_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2memif-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2IP2Memif_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2IP2Memif_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2memif-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2ip2memif-ipv6`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2memif-ipv6" -- vppctl ping 2001:db8:: repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -57,7 +57,7 @@ func (s *Suite) TestKernel2Ethernet2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ethernet2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ethernet2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ethernet2kernel -- ping -c 4 172.16.1.100`) @@ -68,7 +68,7 @@ func (s *Suite) TestKernel2Ethernet2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ethernet2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-kernel2ethernet2memif`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ethernet2memif -- ping -c 4 172.16.1.100`) @@ -79,7 +79,7 @@ func (s *Suite) TestKernel2IP2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ip2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2kernel -- ping -c 4 172.16.1.100`) @@ -90,7 +90,7 @@ func (s *Suite) TestKernel2IP2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-kernel2ip2memif`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2memif -- ping -c 4 172.16.1.100`) @@ -101,7 +101,7 @@ func (s *Suite) TestMemif2Ethernet2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ethernet2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ethernet2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-memif2ethernet2kernel`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ethernet2kernel" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -112,7 +112,7 @@ func (s *Suite) TestMemif2Ethernet2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ethernet2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ethernet2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2ethernet2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ethernet2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -123,7 +123,7 @@ func (s *Suite) TestMemif2IP2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-memif2ip2kernel`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2kernel" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -134,7 +134,7 @@ func (s *Suite) TestMemif2IP2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2ip2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) diff --git a/suites/basic/suite.gen.go b/suites/basic/suite.gen.go index cc05444b6d..462f92c763 100755 --- a/suites/basic/suite.gen.go +++ b/suites/basic/suite.gen.go @@ -27,7 +27,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/basic?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/basic?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) } func (s *Suite) TestKernel2Ethernet2Kernel() { @@ -35,7 +35,7 @@ func (s *Suite) TestKernel2Ethernet2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ethernet2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ethernet2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ethernet2kernel -- ping -c 4 172.16.1.100`) @@ -46,7 +46,7 @@ func (s *Suite) TestKernel2Ethernet2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ethernet2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-kernel2ethernet2memif`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ethernet2memif -- ping -c 4 172.16.1.100`) @@ -57,7 +57,7 @@ func (s *Suite) TestKernel2IP2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ip2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2kernel -- ping -c 4 172.16.1.100`) @@ -68,7 +68,7 @@ func (s *Suite) TestKernel2IP2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2IP2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-kernel2ip2memif`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2memif -- ping -c 4 172.16.1.100`) @@ -79,7 +79,7 @@ func (s *Suite) TestKernel2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2kernel -- ping -c 4 172.16.1.100`) @@ -90,7 +90,7 @@ func (s *Suite) TestKernel2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-kernel2memif`) r.Run(`kubectl exec pods/alpine -n ns-kernel2memif -- ping -c 4 172.16.1.100`) @@ -101,7 +101,7 @@ func (s *Suite) TestMemif2Ethernet2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ethernet2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ethernet2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-memif2ethernet2kernel`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ethernet2kernel" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -112,7 +112,7 @@ func (s *Suite) TestMemif2Ethernet2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ethernet2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Ethernet2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ethernet2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2ethernet2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ethernet2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -123,7 +123,7 @@ func (s *Suite) TestMemif2IP2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-memif2ip2kernel`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2kernel" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -134,7 +134,7 @@ func (s *Suite) TestMemif2IP2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2IP2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2ip2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -145,7 +145,7 @@ func (s *Suite) TestMemif2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-memif2kernel`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2kernel" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -156,7 +156,7 @@ func (s *Suite) TestMemif2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) diff --git a/suites/features/suite.gen.go b/suites/features/suite.gen.go index d0e237e408..b16aa311ea 100755 --- a/suites/features/suite.gen.go +++ b/suites/features/suite.gen.go @@ -29,10 +29,10 @@ func (s *Suite) TestAnnotated_namespace() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-annotated-namespace`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/annotated-namespace?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/annotated-namespace?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-annotated-namespace`) r.Run(`kubectl annotate ns ns-annotated-namespace networkservicemesh.io=kernel://annotated-namespace/nsm-1`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/features/annotated-namespace/client.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/features/annotated-namespace/client.yaml`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-annotated-namespace`) r.Run(`kubectl logs deployments/alpine -n ns-annotated-namespace -c cmd-nsc-init | grep -c '\[id:alpine-.*-0\]'`) r.Run(`kubectl exec deployments/alpine -n ns-annotated-namespace -- ping -c 4 172.16.1.100`) @@ -43,17 +43,17 @@ func (s *Suite) TestChange_nse_dynamically() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-change-nse-dynamically`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/change-nse-dynamically?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/features/change-nse-dynamically/blue-netsvc.yaml`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/change-nse-dynamically?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/features/change-nse-dynamically/blue-netsvc.yaml`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-change-nse-dynamically`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=blue-nse -n ns-change-nse-dynamically`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=green-nse -n ns-change-nse-dynamically`) r.Run(`kubectl exec pods/alpine -n ns-change-nse-dynamically -- ping -c 4 172.16.2.100`) r.Run(`kubectl exec pods/blue-nse -n ns-change-nse-dynamically -- ping -c 4 172.16.2.101`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/features/change-nse-dynamically/green-netsvc.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/features/change-nse-dynamically/green-netsvc.yaml`) r.Run(`kubectl exec pods/alpine -n ns-change-nse-dynamically -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec pods/green-nse -n ns-change-nse-dynamically -- ping -c 4 172.16.1.101`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/features/change-nse-dynamically/blue-netsvc.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/features/change-nse-dynamically/blue-netsvc.yaml`) r.Run(`kubectl exec pods/alpine -n ns-change-nse-dynamically -- ping -c 4 172.16.2.100`) r.Run(`kubectl exec pods/blue-nse -n ns-change-nse-dynamically -- ping -c 4 172.16.2.101`) } @@ -62,7 +62,7 @@ func (s *Suite) TestDns() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-dns`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/dns?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/dns?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=5m pod dnsutils -n ns-dns`) r.Run(`kubectl wait --for=condition=ready --timeout=5m pod -l app=nse-kernel -n ns-dns`) r.Run(`kubectl exec pods/dnsutils -c dnsutils -n ns-dns -- nslookup -norec -nodef my.coredns.service`) @@ -74,7 +74,7 @@ func (s *Suite) TestKernel2IP2Kernel_dual_stack() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2kernel-dual-stack`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/dual-stack/Kernel2IP2Kernel_dual_stack?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/dual-stack/Kernel2IP2Kernel_dual_stack?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2kernel-dual-stack`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ip2kernel-dual-stack`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2kernel-dual-stack -- ping -c 4 2001:db8::`) @@ -87,7 +87,7 @@ func (s *Suite) TestKernel2Kernel_dual_stack() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel-dual-stack`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/dual-stack/Kernel2Kernel_dual_stack?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/dual-stack/Kernel2Kernel_dual_stack?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel-dual-stack`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel-dual-stack`) r.Run(`kubectl exec pods/alpine -n ns-kernel2kernel-dual-stack -- ping -c 4 2001:db8::`) @@ -100,8 +100,8 @@ func (s *Suite) TestExclude_prefixes() { s.T().Cleanup(func() { r.Run(`kubectl delete configmap excluded-prefixes-config` + "\n" + `kubectl delete ns ns-exclude-prefixes`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes/configmap?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes/configmap?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-exclude-prefixes`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-exclude-prefixes`) r.Run(`kubectl exec pods/alpine -n ns-exclude-prefixes -- ping -c 4 172.16.1.200`) @@ -112,7 +112,7 @@ func (s *Suite) TestExclude_prefixes_client() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-exclude-prefixes-client`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes-client?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/exclude-prefixes-client?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-exclude-prefixes-client`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-1 -n ns-exclude-prefixes-client`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-2 -n ns-exclude-prefixes-client`) @@ -126,7 +126,7 @@ func (s *Suite) TestKernel2IP2Kernel_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2kernel-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2IP2Kernel_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2IP2Kernel_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2kernel-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ip2kernel-ipv6`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2kernel-ipv6 -- ping -c 4 2001:db8::`) @@ -137,7 +137,7 @@ func (s *Suite) TestKernel2IP2Memif_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ip2memif-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2IP2Memif_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2IP2Memif_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ip2memif-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-kernel2ip2memif-ipv6`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ip2memif-ipv6 -- ping -c 4 2001:db8::`) @@ -148,7 +148,7 @@ func (s *Suite) TestKernel2Kernel_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2Kernel_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Kernel2Kernel_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel-ipv6`) r.Run(`kubectl exec pods/alpine -n ns-kernel2kernel-ipv6 -- ping -c 4 2001:db8::`) @@ -159,7 +159,7 @@ func (s *Suite) TestMemif2IP2Kernel_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2kernel-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2IP2Kernel_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2IP2Kernel_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2kernel-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-memif2ip2kernel-ipv6`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2kernel-ipv6" -- vppctl ping 2001:db8:: repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -170,7 +170,7 @@ func (s *Suite) TestMemif2IP2Memif_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2ip2memif-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2IP2Memif_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2IP2Memif_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2ip2memif-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2ip2memif-ipv6`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2ip2memif-ipv6" -- vppctl ping 2001:db8:: repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -181,7 +181,7 @@ func (s *Suite) TestMemif2Memif_ipv6() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2memif-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2Memif_ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/ipv6/Memif2Memif_ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2memif-ipv6`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2memif-ipv6`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2memif-ipv6" -- vppctl ping ipv6 2001:db8:: repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -192,7 +192,7 @@ func (s *Suite) TestMultiple_services() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-multiple-services`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/multiple-services?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/multiple-services?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-multiple-services`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-1 -n ns-multiple-services`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-2 -n ns-multiple-services`) @@ -206,7 +206,7 @@ func (s *Suite) TestMutually_aware_nses() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-mutually-aware-nses`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/mutually-aware-nses?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/mutually-aware-nses?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel -n ns-mutually-aware-nses`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-1 -n ns-mutually-aware-nses`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel-2 -n ns-mutually-aware-nses`) @@ -219,7 +219,7 @@ func (s *Suite) TestNse_composition() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-nse-composition`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/nse-composition?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/nse-composition?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=5m pod -l app=alpine -n ns-nse-composition`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-nse-composition`) r.Run(`kubectl exec pods/alpine -n ns-nse-composition -- ping -c 4 172.16.1.100`) @@ -232,7 +232,7 @@ func (s *Suite) TestOpa() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-opa`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/opa?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/opa?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel -n ns-opa`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-opa`) r.Run(`kubectl logs deployments/nsc-kernel -n ns-opa | grep "PermissionDenied desc = no sufficient privileges"`) @@ -242,7 +242,7 @@ func (s *Suite) TestPolicy_based_routing() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-policy-based-routing`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/policy-based-routing?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/policy-based-routing?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nettools -n ns-policy-based-routing`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-policy-based-routing`) r.Run(`kubectl exec pods/nettools -n ns-policy-based-routing -- ping -c 4 172.16.1.100`) @@ -258,7 +258,7 @@ func (s *Suite) TestScale_from_zero() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-scale-from-zero`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/scale-from-zero?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/scale-from-zero?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n ns-scale-from-zero --for=condition=ready --timeout=1m pod -l app=nse-supplier-k8s`) r.Run(`kubectl wait -n ns-scale-from-zero --for=condition=ready --timeout=1m pod -l app=alpine`) r.Run(`kubectl wait -n ns-scale-from-zero --for=condition=ready --timeout=1m pod -l app=nse-icmp-responder`) @@ -276,7 +276,7 @@ func (s *Suite) TestScaled_registry() { r.Run(`kubectl delete ns ns-scaled-registry`) r.Run(`kubectl scale --replicas=1 deployments/registry-k8s -n nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/scaled-registry?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/scaled-registry?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-scaled-registry`) r.Run(`NSE=$(kubectl get pod -n ns-scaled-registry --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}' -l app=nse-kernel)`) r.Run(`kubectl get nses -A | grep $NSE`) @@ -293,7 +293,7 @@ func (s *Suite) TestSelect_forwarder() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-select-forwarder`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/select-forwarder?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/select-forwarder?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-select-forwarder`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-select-forwarder`) r.Run(`kubectl exec pods/alpine -n ns-select-forwarder -- ping -c 4 169.254.0.0`) @@ -305,7 +305,7 @@ func (s *Suite) TestVl3_basic() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-basic?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-basic?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=2m pod -l app=alpine -n ns-vl3`) r.Run(`nscs=$(kubectl get pods -l app=alpine -o go-template --template="{{range .items}}{{.metadata.name}} {{end}}" -n ns-vl3)` + "\n" + `[[ ! -z $nscs ]]`) r.Run(`(` + "\n" + `for nsc in $nscs ` + "\n" + `do` + "\n" + ` ipAddr=$(kubectl exec -n ns-vl3 $nsc -- ifconfig nsm-1) || exit` + "\n" + ` ipAddr=$(echo $ipAddr | grep -Eo 'inet addr:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'| cut -c 11-)` + "\n" + ` for pinger in $nscs` + "\n" + ` do` + "\n" + ` echo $pinger pings $ipAddr` + "\n" + ` kubectl exec $pinger -n ns-vl3 -- ping -c2 -i 0.5 $ipAddr || exit` + "\n" + ` done` + "\n" + `done` + "\n" + `)`) @@ -316,7 +316,7 @@ func (s *Suite) TestVl3_dns() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3-dns`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-dns?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-dns?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=2m pod -l app=alpine -n ns-vl3-dns`) r.Run(`nscs=$(kubectl get pods -l app=alpine -o go-template --template="{{range .items}}{{.metadata.name}} {{end}}" -n ns-vl3-dns)` + "\n" + `[[ ! -z $nscs ]]`) r.Run(`(` + "\n" + `for nsc in $nscs` + "\n" + `do` + "\n" + ` for pinger in $nscs` + "\n" + ` do` + "\n" + ` kubectl exec $pinger -n ns-vl3-dns -- ping -c2 -i 0.5 $nsc.vl3-dns -4 || exit` + "\n" + ` done` + "\n" + `done` + "\n" + `)`) @@ -330,7 +330,7 @@ func (s *Suite) TestVl3_lb() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3-lb`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-lb?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-lb?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=2m pod -l type=vl3-client -n ns-vl3-lb`) r.Run(`kubectl exec deployments/finance-client -n ns-vl3-lb -- curl -s finance.vl3-lb:8080 | grep "Hello! I'm finance-server"`) } @@ -339,7 +339,7 @@ func (s *Suite) TestVl3_scale_from_zero() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3-scale-from-zero`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-scale-from-zero?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-scale-from-zero?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n ns-vl3-scale-from-zero --for=condition=ready --timeout=1m pod -l app=nse-supplier-k8s`) r.Run(`kubectl wait -n ns-vl3-scale-from-zero --for=condition=ready --timeout=1m pod -l app=alpine`) r.Run(`kubectl wait -n ns-vl3-scale-from-zero --for=condition=ready --timeout=1m pod -l app=nse-vl3-vpp`) @@ -352,7 +352,7 @@ func (s *Suite) TestWebhook() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-webhook`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/webhook?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/webhook?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=5m pod -l app=nse-kernel -n ns-webhook`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nettools -n ns-webhook`) r.Run(`kubectl exec pods/nettools -n ns-webhook -- curl 172.16.1.100:80 | grep -o "Welcome to nginx!"`) diff --git a/suites/features/vl3-ipv6/suite.gen.go b/suites/features/vl3-ipv6/suite.gen.go index 26c44a3f26..0b4b83b479 100755 --- a/suites/features/vl3-ipv6/suite.gen.go +++ b/suites/features/vl3-ipv6/suite.gen.go @@ -25,7 +25,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3-ipv6`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-ipv6?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/vl3-ipv6?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=2m pod -l app=alpine -n ns-vl3-ipv6`) r.Run(`nscs=$(kubectl get pods -n ns-vl3-ipv6 -l app=alpine -o go-template --template="{{range .items}}{{.metadata.name}} {{end}}")` + "\n" + `[[ ! -z $nscs ]]`) r.Run(`(` + "\n" + `for nsc in $nscs` + "\n" + `do` + "\n" + ` ipAddr=$(kubectl exec -n ns-vl3-ipv6 $nsc -- ifconfig nsm-1) || exit` + "\n" + ` ipAddr=$(echo $ipAddr | grep -Eo 'inet6 addr: 2001:.*' | cut -d ' ' -f 3 | cut -d '/' -f 1)` + "\n" + ` for pinger in $nscs` + "\n" + ` do` + "\n" + ` echo $pinger pings $ipAddr` + "\n" + ` kubectl exec $pinger -n ns-vl3-ipv6 -- ping6 -c2 -i 0.5 $ipAddr || exit` + "\n" + ` done` + "\n" + `done` + "\n" + `)`) diff --git a/suites/heal/suite.gen.go b/suites/heal/suite.gen.go index d5a0436a25..f20974eb56 100755 --- a/suites/heal/suite.gen.go +++ b/suites/heal/suite.gen.go @@ -29,7 +29,7 @@ func (s *Suite) TestDataplane_interrupt() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-dataplane-interrupt`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/dataplane-interrupt?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/dataplane-interrupt?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-dataplane-interrupt`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-dataplane-interrupt`) r.Run(`kubectl exec pods/alpine -n ns-dataplane-interrupt -- ping -c 4 172.16.1.100 -I 172.16.1.101`) @@ -45,7 +45,7 @@ func (s *Suite) TestLocal_forwarder_death() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-forwarder-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-forwarder-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-forwarder-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-local-forwarder-death`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-local-forwarder-death`) r.Run(`kubectl exec pods/alpine -n ns-local-forwarder-death -- ping -c 4 172.16.1.100`) @@ -62,7 +62,7 @@ func (s *Suite) TestLocal_forwarder_remote_forwarder() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-forwarder-remote-forwarder`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-forwarder-remote-forwarder?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-forwarder-remote-forwarder?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-local-forwarder-remote-forwarder`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-local-forwarder-remote-forwarder`) r.Run(`kubectl exec pods/alpine -n ns-local-forwarder-remote-forwarder -- ping -c 4 172.16.1.100`) @@ -82,14 +82,14 @@ func (s *Suite) TestLocal_nse_death() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-nse-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nse-death/nse-before-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nse-death/nse-before-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-local-nse-death`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-local-nse-death`) r.Run(`kubectl exec pods/alpine -n ns-local-nse-death -- ping -c 4 172.16.1.100 -I 172.16.1.101`) r.Run(`kubectl exec deployments/nse-kernel -n ns-local-nse-death -- ping -c 4 172.16.1.101 -I 172.16.1.100`) r.Run(`kubectl scale deployment nse-kernel -n ns-local-nse-death --replicas=0`) r.Run(`kubectl exec pods/alpine -n ns-local-nse-death -- ping -c 4 172.16.1.100 -I 172.16.1.101 2>&1 | egrep "100% packet loss|Network unreachable|can't set multicast source"`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nse-death/nse-after-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nse-death/nse-after-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl scale deployment nse-kernel -n ns-local-nse-death --replicas=1`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -l version=new -n ns-local-nse-death`) r.Run(`NEW_NSE=$(kubectl get pods -l app=nse-kernel -l version=new -n ns-local-nse-death --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) @@ -101,13 +101,13 @@ func (s *Suite) TestLocal_nsm_system_restart() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-nsm-system-restart`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsm-system-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsm-system-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-local-nsm-system-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-local-nsm-system-restart`) r.Run(`kubectl exec pods/alpine -n ns-local-nsm-system-restart -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-local-nsm-system-restart -- ping -c 4 172.16.1.101`) r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/basic?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/basic?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl exec pods/alpine -n ns-local-nsm-system-restart -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-local-nsm-system-restart -- ping -c 4 172.16.1.101`) } @@ -116,7 +116,7 @@ func (s *Suite) TestLocal_nsmgr_local_forwarder_memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-nsmgr-local-forwarder-memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-local-forwarder-memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-local-forwarder-memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-local-nsmgr-local-forwarder-memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-local-nsmgr-local-forwarder-memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-local-nsmgr-local-forwarder-memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -136,7 +136,7 @@ func (s *Suite) TestLocal_nsmgr_local_nse_memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-nsmgr-local-nse-memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-local-nse-memif/nse-before-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-local-nse-memif/nse-before-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-local-nsmgr-local-nse-memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-local-nsmgr-local-nse-memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n ns-local-nsmgr-local-nse-memif -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -145,7 +145,7 @@ func (s *Suite) TestLocal_nsmgr_local_nse_memif() { r.Run(`NSC_NODE=$(kubectl get pods -l app=nsc-memif -n ns-local-nsmgr-local-nse-memif --template '{{range .items}}{{.spec.nodeName}}{{"\n"}}{{end}}')`) r.Run(`NSMGR=$(kubectl get pods -l app=nsmgr --field-selector spec.nodeName==${NSC_NODE} -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl delete pod ${NSMGR} -n nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-local-nse-memif/nse-after-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-local-nse-memif/nse-after-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsmgr --field-selector spec.nodeName==${NSC_NODE} -n nsm-system`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -l version=new -n ns-local-nsmgr-local-nse-memif`) r.Run(`NEW_NSE=$(kubectl get pods -l app=nse-memif -l version=new -n ns-local-nsmgr-local-nse-memif --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) @@ -157,7 +157,7 @@ func (s *Suite) TestLocal_nsmgr_remote_nsmgr() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-nsmgr-remote-nsmgr`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-remote-nsmgr?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-remote-nsmgr?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-local-nsmgr-remote-nsmgr`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-local-nsmgr-remote-nsmgr`) r.Run(`kubectl exec pods/alpine -n ns-local-nsmgr-remote-nsmgr -- ping -c 4 172.16.1.100`) @@ -177,7 +177,7 @@ func (s *Suite) TestLocal_nsmgr_restart() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-local-nsmgr-restart`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/local-nsmgr-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-local-nsmgr-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-local-nsmgr-restart`) r.Run(`kubectl exec pods/alpine -n ns-local-nsmgr-restart -- ping -c 4 172.16.1.100`) @@ -194,14 +194,14 @@ func (s *Suite) TestRegistry_local_endpoint() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-registry-local-endpoint`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-local-endpoint/nse-first?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-local-endpoint/nse-first?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-registry-local-endpoint`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-registry-local-endpoint`) r.Run(`kubectl exec pods/alpine -n ns-registry-local-endpoint -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-registry-local-endpoint -- ping -c 4 172.16.1.101`) r.Run(`REGISTRY=$(kubectl get pods -l app=registry -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl delete pod ${REGISTRY} -n nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-local-endpoint/nse-second?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-local-endpoint/nse-second?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=registry -n nsm-system`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -l version=new -n ns-registry-local-endpoint`) r.Run(`NEW_NSE=$(kubectl get pods -l app=nse-kernel -l version=new -n ns-registry-local-endpoint --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) @@ -213,7 +213,7 @@ func (s *Suite) TestRegistry_remote_forwarder() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-registry-remote-forwarder`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-remote-forwarder?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-remote-forwarder?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-registry-remote-forwarder`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-registry-remote-forwarder`) r.Run(`kubectl exec pods/alpine -n ns-registry-remote-forwarder -- ping -c 4 172.16.1.100`) @@ -233,7 +233,7 @@ func (s *Suite) TestRegistry_remote_nsmgr() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-registry-remote-nsmgr`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-remote-nsmgr?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-remote-nsmgr?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-registry-remote-nsmgr`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-registry-remote-nsmgr`) r.Run(`kubectl exec pods/alpine -n ns-registry-remote-nsmgr -- ping -c 4 172.16.1.100`) @@ -253,7 +253,7 @@ func (s *Suite) TestRegistry_restart() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-registry-restart`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-restart/registry-before-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-restart/registry-before-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-registry-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-registry-restart`) r.Run(`NSC=$(kubectl get pods -l app=alpine -n ns-registry-restart --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) @@ -263,7 +263,7 @@ func (s *Suite) TestRegistry_restart() { r.Run(`REGISTRY=$(kubectl get pods -l app=registry -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl delete pod ${REGISTRY} -n nsm-system`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=registry -n nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-restart/registry-after-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/registry-restart/registry-after-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine-new -n ns-registry-restart`) r.Run(`kubectl exec pods/alpine-new -n ns-registry-restart -- ping -c 4 172.16.1.102`) r.Run(`kubectl exec deployments/nse-kernel -n ns-registry-restart -- ping -c 4 172.16.1.103`) @@ -273,7 +273,7 @@ func (s *Suite) TestRemote_forwarder_death() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-forwarder-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-forwarder-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-forwarder-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-forwarder-death`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-forwarder-death`) r.Run(`kubectl exec pods/alpine -n ns-remote-forwarder-death -- ping -c 4 172.16.1.100`) @@ -290,7 +290,7 @@ func (s *Suite) TestRemote_forwarder_death_ip() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-forwarder-death-ip`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-forwarder-death-ip?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-forwarder-death-ip?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-forwarder-death-ip`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-forwarder-death-ip`) r.Run(`kubectl exec pods/alpine -n ns-remote-forwarder-death-ip -- ping -c 4 172.16.1.100`) @@ -307,14 +307,14 @@ func (s *Suite) TestRemote_nse_death() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-nse-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death/nse-before-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death/nse-before-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-nse-death`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-nse-death`) r.Run(`NSC=$(kubectl get pods -l app=alpine -n ns-remote-nse-death --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`NSE=$(kubectl get pods -l app=nse-kernel -n ns-remote-nse-death --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl exec pods/alpine -n ns-remote-nse-death -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-remote-nse-death -- ping -c 4 172.16.1.101`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death/nse-after-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death/nse-after-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -l version=new -n ns-remote-nse-death`) r.Run(`NEW_NSE=$(kubectl get pods -l app=nse-kernel -l version=new -n ns-remote-nse-death --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl exec pods/alpine -n ns-remote-nse-death -- ping -c 4 172.16.1.102`) @@ -325,12 +325,12 @@ func (s *Suite) TestRemote_nse_death_ip() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-nse-death-ip`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death-ip/nse-before-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death-ip/nse-before-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-nse-death-ip`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-nse-death-ip`) r.Run(`kubectl exec pods/alpine -n ns-remote-nse-death-ip -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-remote-nse-death-ip -- ping -c 4 172.16.1.101`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death-ip/nse-after-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nse-death-ip/nse-after-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -l version=new -n ns-remote-nse-death-ip`) r.Run(`NEW_NSE=$(kubectl get pods -l app=nse-kernel -l version=new -n ns-remote-nse-death-ip --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl exec pods/alpine -n ns-remote-nse-death-ip -- ping -c 4 172.16.1.102`) @@ -341,30 +341,30 @@ func (s *Suite) TestRemote_nsm_system_restart_memif_ip() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-nsm-system-restart-memif-ip`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsm-system-restart-memif-ip?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsm-system-restart-memif-ip?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-remote-nsm-system-restart-memif-ip`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-remote-nsm-system-restart-memif-ip`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n ns-remote-nsm-system-restart-memif-ip -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) r.Run(`result=$(kubectl exec deployments/nse-memif -n ns-remote-nsm-system-restart-memif-ip -- vppctl ping 172.16.1.101 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) r.Run(`kubectl create ns nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/basic?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/basic?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n ns-remote-nsm-system-restart-memif-ip -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) r.Run(`result=$(kubectl exec deployments/nse-memif -n ns-remote-nsm-system-restart-memif-ip -- vppctl ping 172.16.1.101 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) } func (s *Suite) TestRemote_nsmgr_death() { r := s.Runner("../deployments-k8s/examples/heal/remote-nsmgr-death") s.T().Cleanup(func() { - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/apps/nsmgr?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4 -n nsm-system`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/apps/nsmgr?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c -n nsm-system`) r.Run(`kubectl delete ns ns-remote-nsmgr-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-death/remote-nse?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-death/remote-nse?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-nsmgr-death`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-nsmgr-death`) r.Run(`kubectl exec pods/alpine -n ns-remote-nsmgr-death -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-remote-nsmgr-death -- ping -c 4 172.16.1.101`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-death/nsmgr-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-death/local-nse?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-death/nsmgr-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-death/local-nse?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l nse-version=local -n ns-remote-nsmgr-death`) r.Run(`NEW_NSE=$(kubectl get pods -l nse-version=local -n ns-remote-nsmgr-death --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl exec pods/alpine -n ns-remote-nsmgr-death -- ping -c 4 172.16.1.102`) @@ -375,7 +375,7 @@ func (s *Suite) TestRemote_nsmgr_remote_endpoint() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-nsmgr-remote-endpoint`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-remote-endpoint/nsmgr-before-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-remote-endpoint/nsmgr-before-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-nsmgr-remote-endpoint`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-nsmgr-remote-endpoint`) r.Run(`kubectl exec pods/alpine -n ns-remote-nsmgr-remote-endpoint -- ping -c 4 172.16.1.100`) @@ -383,7 +383,7 @@ func (s *Suite) TestRemote_nsmgr_remote_endpoint() { r.Run(`NSE_NODE=$(kubectl get pods -l app=nse-kernel -n ns-remote-nsmgr-remote-endpoint --template '{{range .items}}{{.spec.nodeName}}{{"\n"}}{{end}}')`) r.Run(`NSMGR=$(kubectl get pods -l app=nsmgr --field-selector spec.nodeName==${NSE_NODE} -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) r.Run(`kubectl delete pod ${NSMGR} -n nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-remote-endpoint/nsmgr-after-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-remote-endpoint/nsmgr-after-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsmgr --field-selector spec.nodeName==${NSE_NODE} -n nsm-system`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -l version=new -n ns-remote-nsmgr-remote-endpoint`) r.Run(`NEW_NSE=$(kubectl get pods -l app=nse-kernel -l version=new -n ns-remote-nsmgr-remote-endpoint --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')`) @@ -395,7 +395,7 @@ func (s *Suite) TestRemote_nsmgr_restart() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-nsmgr-restart`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-nsmgr-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-nsmgr-restart`) r.Run(`kubectl exec pods/alpine -n ns-remote-nsmgr-restart -- ping -c 4 172.16.1.100`) @@ -412,7 +412,7 @@ func (s *Suite) TestRemote_nsmgr_restart_ip() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-remote-nsmgr-restart-ip`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-restart-ip?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/remote-nsmgr-restart-ip?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-remote-nsmgr-restart-ip`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-remote-nsmgr-restart-ip`) r.Run(`kubectl exec pods/alpine -n ns-remote-nsmgr-restart-ip -- ping -c 4 172.16.1.100`) @@ -430,7 +430,7 @@ func (s *Suite) TestSpire_agent_restart() { r.Run(`kubectl delete ns ns-spire-agent-restart`) }) r.Run(`kubectl create ns ns-spire-agent-restart`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-agent-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-agent-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-spire-agent-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-spire-agent-restart`) r.Run(`kubectl exec pods/alpine -n ns-spire-agent-restart -- ping -c 4 172.16.1.100`) @@ -447,7 +447,7 @@ func (s *Suite) TestSpire_server_agent_restart() { r.Run(`kubectl delete ns ns-spire-server-agent-restart`) }) r.Run(`kubectl create ns ns-spire-server-agent-restart`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-server-agent-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-server-agent-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-spire-server-agent-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-spire-server-agent-restart`) r.Run(`kubectl exec pods/alpine -n ns-spire-server-agent-restart -- ping -c 4 172.16.1.100`) @@ -466,7 +466,7 @@ func (s *Suite) TestSpire_server_restart() { r.Run(`kubectl delete ns ns-spire-server-restart`) }) r.Run(`kubectl create ns ns-spire-server-restart`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-server-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-server-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-spire-server-restart`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-spire-server-restart`) r.Run(`kubectl exec pods/alpine -n ns-spire-server-restart -- ping -c 4 172.16.1.100`) @@ -482,17 +482,17 @@ func (s *Suite) TestSpire_upgrade() { r.Run(`kubectl delete ns ns-spire-upgrade`) }) r.Run(`kubectl create ns ns-spire-upgrade`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-upgrade?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/spire-upgrade?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel -n ns-spire-upgrade`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-spire-upgrade`) r.Run(`kubectl exec pods/alpine -n ns-spire-upgrade -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-spire-upgrade -- ping -c 4 172.16.1.101`) r.Run(`kubectl delete crd clusterspiffeids.spire.spiffe.io` + "\n" + `kubectl delete crd clusterfederatedtrustdomains.spire.spiffe.io` + "\n" + `kubectl delete validatingwebhookconfiguration.admissionregistration.k8s.io/spire-controller-manager-webhook` + "\n" + `kubectl delete ns spire`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/single_cluster?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/single_cluster?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=3m pod -l app=spire-server -n spire`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=spire-agent -n spire`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/single_cluster/clusterspiffeid-template.yaml`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/base/clusterspiffeid-webhook-template.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/single_cluster/clusterspiffeid-template.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/base/clusterspiffeid-webhook-template.yaml`) r.Run(`kubectl exec pods/alpine -n ns-spire-upgrade -- ping -c 4 172.16.1.100`) r.Run(`kubectl exec deployments/nse-kernel -n ns-spire-upgrade -- ping -c 4 172.16.1.101`) } @@ -501,7 +501,7 @@ func (s *Suite) TestVl3_nscs_death() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3-nscs-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/vl3-nscs-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/vl3-nscs-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n ns-vl3-nscs-death --for=condition=ready --timeout=1m pod -l app=alpine`) r.Run(`nscs=$(kubectl get pods -l app=alpine -o go-template --template="{{range .items}}{{.metadata.name}} {{end}}" -n ns-vl3-nscs-death)` + "\n" + `[[ ! -z $nscs ]]`) r.Run(`(` + "\n" + `for nsc in $nscs` + "\n" + `do` + "\n" + ` ipAddr=$(kubectl exec -n ns-vl3-nscs-death $nsc -- ifconfig nsm-1) || exit` + "\n" + ` ipAddr=$(echo $ipAddr | grep -Eo 'inet addr:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'| cut -c 11-)` + "\n" + ` for pinger in $nscs` + "\n" + ` do` + "\n" + ` echo $pinger pings $ipAddr` + "\n" + ` kubectl exec $pinger -n ns-vl3-nscs-death -- ping -c2 -i 0.5 $ipAddr || exit` + "\n" + ` done` + "\n" + `done` + "\n" + `)`) @@ -517,7 +517,7 @@ func (s *Suite) TestVl3_nse_death() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-vl3-nse-death`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/vl3-nse-death?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal/vl3-nse-death?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n ns-vl3-nse-death --for=condition=ready --timeout=1m pod -l app=alpine`) r.Run(`nscs=$(kubectl get pods -l app=alpine -o go-template --template="{{range .items}}{{.metadata.name}} {{end}}" -n ns-vl3-nse-death) ` + "\n" + `[[ ! -z $nscs ]]`) r.Run(`(` + "\n" + `for nsc in $nscs ` + "\n" + `do` + "\n" + ` ipAddr=$(kubectl exec -n ns-vl3-nse-death $nsc -- ifconfig nsm-1) || exit` + "\n" + ` ipAddr=$(echo $ipAddr | grep -Eo 'inet addr:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'| cut -c 11-)` + "\n" + ` for pinger in $nscs` + "\n" + ` do` + "\n" + ` echo $pinger pings $ipAddr` + "\n" + ` kubectl exec $pinger -n ns-vl3-nse-death -- ping -c2 -i 0.5 $ipAddr || exit` + "\n" + ` done` + "\n" + `done` + "\n" + `)`) diff --git a/suites/heal_extended/suite.gen.go b/suites/heal_extended/suite.gen.go index 64a40eecba..5cc5adac51 100755 --- a/suites/heal_extended/suite.gen.go +++ b/suites/heal_extended/suite.gen.go @@ -29,7 +29,7 @@ func (s *Suite) TestComponent_restart() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-component-restart`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal_extended/component-restart?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/heal_extended/component-restart?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=client -n ns-component-restart`) r.Run(`# N_RESTARTS - number of restarts` + "\n" + `# TEST_TIME - determines how long the test will take (sec)` + "\n" + `# DELAY - delay between restarts (sec)` + "\n" + `# INTERFACE_READY_WAIT - how long do we wait for the interface to be ready (sec). Equals to NSM_REQUEST_TIMEOUT * 2 (for Close and Request)` + "\n" + `N_RESTARTS=15` + "\n" + `TEST_TIME=900` + "\n" + `DELAY=$(($TEST_TIME/$N_RESTARTS))` + "\n" + `INTERFACE_READY_WAIT=10`) r.Run(`# Iterates over NSCs and checks connectivity to NSE (sends pings)` + "\n" + `function connectivity_check() {` + "\n" + `echo -e "\n-- Connectivity check --"` + "\n" + `nscs=$(kubectl get pods -l app=client -o go-template --template="{{range .items}}{{.metadata.name}} {{end}}" -n ns-component-restart)` + "\n" + `for nsc in $nscs` + "\n" + `do` + "\n" + ` echo -e "\nNSC: $nsc"` + "\n" + ` echo "Wait for NSM interface to be ready"` + "\n" + ` for i in $(seq 1 $INTERFACE_READY_WAIT)` + "\n" + ` do` + "\n" + ` if [ $i -eq $INTERFACE_READY_WAIT ] ; then` + "\n" + ` echo "NSM interface is not ready after $INTERFACE_READY_WAIT s"` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + ` sleep 1` + "\n" + ` routes=$(kubectl exec -n ns-component-restart $nsc -- ip route)` + "\n" + ` nseAddr=$(echo $routes | grep -Eo '172\.16\.1\.[0-9]{1,3}')` + "\n" + ` test $? -ne 0 || break` + "\n" + ` done` + "\n" + ` echo "NSM interface is ready"` + "\n" + ` kubectl exec $nsc -n ns-component-restart -- ping -c2 -i 0.5 $nseAddr || return 2` + "\n" + `done` + "\n" + `return 0` + "\n" + `}` + "\n" + `` + "\n" + `# Restarts NSM components and checks connectivity.` + "\n" + `# $1 is used to define NSM-component type (e.g. forwarder or nsmgr)` + "\n" + `# -a defines the restart method.` + "\n" + `# if specified - all NSM-pods of this type will be restarted at the same time.` + "\n" + `# else - they will be restarted one by one.` + "\n" + `function restart_nsm_component() {` + "\n" + `nsm_component=$1` + "\n" + `shift` + "\n" + `` + "\n" + `a_flag=0` + "\n" + `while getopts 'a' flag; do` + "\n" + ` case "${flag}" in` + "\n" + ` a) a_flag=1 ;;` + "\n" + ` esac` + "\n" + `done` + "\n" + `` + "\n" + `for i in $(seq 1 $N_RESTARTS)` + "\n" + `do` + "\n" + ` echo -e "\n-------- $nsm_component restart $i of $N_RESTARTS --------"` + "\n" + ` echo "Wait $DELAY sec before restart..."` + "\n" + ` sleep $DELAY` + "\n" + ` if [ $a_flag -eq 1 ]; then` + "\n" + ` kubectl delete pod -n nsm-system -l app=${nsm_component}` + "\n" + ` kubectl wait --for=condition=ready --timeout=1m pod -l app=${nsm_component} -n nsm-system || return 1` + "\n" + ` connectivity_check || return 2` + "\n" + ` else` + "\n" + ` nodes=$(kubectl get pods -l app=${nsm_component} -n nsm-system --template '{{range .items}}{{.spec.nodeName}}{{"\n"}}{{end}}')` + "\n" + ` for node in $nodes` + "\n" + ` do` + "\n" + ` kubectl delete pod -n nsm-system -l app=${nsm_component} --field-selector spec.nodeName==${node}` + "\n" + ` kubectl wait --for=condition=ready --timeout=1m pod -l app=${nsm_component} --field-selector spec.nodeName==${node} -n nsm-system || return 1` + "\n" + ` connectivity_check || return 2` + "\n" + ` done` + "\n" + ` fi` + "\n" + `done` + "\n" + `return 0` + "\n" + `}`) diff --git a/suites/interdomain/nsm/suite.gen.go b/suites/interdomain/nsm/suite.gen.go index 24f28dffea..e809abfb0c 100755 --- a/suites/interdomain/nsm/suite.gen.go +++ b/suites/interdomain/nsm/suite.gen.go @@ -23,10 +23,10 @@ func (s *Suite) SetupSuite() { } r := s.Runner("../deployments-k8s/examples/interdomain/nsm") s.T().Cleanup(func() { - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster1?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster2?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster1?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster2?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) }) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster1?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster2?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster1?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm/cluster2?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait --for=condition=ready --timeout=1m pod -n nsm-system -l app=admission-webhook-k8s`) r.Run(`kubectl --kubeconfig=$KUBECONFIG2 wait --for=condition=ready --timeout=1m pod -n nsm-system -l app=admission-webhook-k8s`) } diff --git a/suites/interdomain/nsm_istio_booking/suite.gen.go b/suites/interdomain/nsm_istio_booking/suite.gen.go index 133573bf98..19bc0aa18b 100755 --- a/suites/interdomain/nsm_istio_booking/suite.gen.go +++ b/suites/interdomain/nsm_istio_booking/suite.gen.go @@ -35,12 +35,12 @@ func (s *Suite) SetupSuite() { } r := s.Runner("../deployments-k8s/examples/interdomain/nsm_istio_booking") s.T().Cleanup(func() { - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/istio/istio/release-1.13/samples/bookinfo/platform/kube/bookinfo.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio_booking/nse-auto-scale?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4 ` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio_booking/productpage/productpage.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio_booking/netsvc.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete ns istio-system` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection-` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete pods --all`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/istio/istio/release-1.13/samples/bookinfo/platform/kube/bookinfo.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio_booking/nse-auto-scale?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c ` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio_booking/productpage/productpage.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio_booking/netsvc.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete ns istio-system` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection-` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete pods --all`) }) r.Run(`curl -sL https://istio.io/downloadIstioctl | sh -` + "\n" + `export PATH=$PATH:$HOME/.istioctl/bin` + "\n" + `istioctl install --readiness-timeout 10m0s --set profile=minimal -y --kubeconfig=$KUBECONFIG2` + "\n" + `istioctl --kubeconfig=$KUBECONFIG2 proxy-status`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio_booking/netsvc.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio_booking/productpage/productpage.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio_booking/nse-auto-scale?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio_booking/netsvc.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio_booking/productpage/productpage.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio_booking/nse-auto-scale?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection=enabled` + "\n" + `` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/istio/istio/release-1.13/samples/bookinfo/platform/kube/bookinfo.yaml`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait --timeout=5m --for=condition=ready pod -l app=productpage`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 exec deploy/productpage-v1 -c cmd-nsc -- apk add curl`) diff --git a/suites/interdomain/spiffe_federation/suite.gen.go b/suites/interdomain/spiffe_federation/suite.gen.go index efc72d32cc..0368523852 100755 --- a/suites/interdomain/spiffe_federation/suite.gen.go +++ b/suites/interdomain/spiffe_federation/suite.gen.go @@ -22,8 +22,8 @@ func (s *Suite) SetupSuite() { } } r := s.Runner("../deployments-k8s/examples/interdomain/spiffe_federation") - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/spiffe_federation/cluster1-spiffeid-template.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/spiffe_federation/cluster2-spiffeid-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/spiffe_federation/cluster1-spiffeid-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/spiffe_federation/cluster2-spiffeid-template.yaml`) r.Run(`bundle1=$(kubectl --kubeconfig=$KUBECONFIG1 exec spire-server-0 -n spire -- bin/spire-server bundle show -format spiffe)` + "\n" + `bundle2=$(kubectl --kubeconfig=$KUBECONFIG2 exec spire-server-0 -n spire -- bin/spire-server bundle show -format spiffe)`) r.Run(`echo $bundle2 | kubectl --kubeconfig=$KUBECONFIG1 exec -i spire-server-0 -n spire -- bin/spire-server bundle set -format spiffe -id "spiffe://nsm.cluster2"` + "\n" + `echo $bundle1 | kubectl --kubeconfig=$KUBECONFIG2 exec -i spire-server-0 -n spire -- bin/spire-server bundle set -format spiffe -id "spiffe://nsm.cluster1"`) } diff --git a/suites/interdomain/suite.gen.go b/suites/interdomain/suite.gen.go index 383fe2c6e1..6e89515b7f 100755 --- a/suites/interdomain/suite.gen.go +++ b/suites/interdomain/suite.gen.go @@ -38,7 +38,7 @@ func (s *Suite) TestNsm_consul() { r := s.Runner("../deployments-k8s/examples/interdomain/nsm_consul") s.T().Cleanup(func() { r.Run(`pkill -f "port-forward"`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/server/counting_nsm.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/client/dashboard.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-client?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-server?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/service.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/server/counting_service.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/netsvc.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete pods --all`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/server/counting_nsm.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/client/dashboard.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-client?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-server?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/service.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/server/counting_service.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/netsvc.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete pods --all`) r.Run(`consul-k8s uninstall --kubeconfig=$KUBECONFIG2 -auto-approve=true -wipe-data=true`) }) r.Run(`curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -`) @@ -46,18 +46,18 @@ func (s *Suite) TestNsm_consul() { r.Run(`sudo apt-get update && sudo apt-get install -y consul-k8s=0.48.0-1`) r.Run(`consul-k8s version`) r.Run(`consul-k8s install -config-file=helm-consul-values.yaml -set global.image=hashicorp/consul:1.12.0 -auto-approve --kubeconfig=$KUBECONFIG2`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/server/counting_service.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/server/counting.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/netsvc.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-client?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-server?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/service.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/client/dashboard.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/server/counting_service.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/server/counting.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/netsvc.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-client?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_consul/nse-auto-scale-server?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/service.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/client/dashboard.yaml`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait --timeout=10m --for=condition=ready pod -l app=dashboard-nsc`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 exec pod/dashboard-nsc -c cmd-nsc -- apk add curl`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 exec pod/dashboard-nsc -c cmd-nsc -- curl counting:9001`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 port-forward pod/dashboard-nsc 9002:9002 &`) r.Run(`kubectl --kubeconfig=$KUBECONFIG2 delete deploy counting`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_consul/server/counting_nsm.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_consul/server/counting_nsm.yaml`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait --timeout=5m --for=condition=ready pod -l app=counting`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 exec pod/dashboard-nsc -c cmd-nsc -- curl counting:9001`) } @@ -132,13 +132,13 @@ func (s *Suite) TestNsm_consul_vl3() { func (s *Suite) TestNsm_istio() { r := s.Runner("../deployments-k8s/examples/interdomain/nsm_istio") s.T().Cleanup(func() { - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio/greeting/server.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio/nse-auto-scale?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio/greeting/client.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio/netsvc.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete ns istio-system` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection-` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete pods --all`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio/greeting/server.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio/nse-auto-scale?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio/greeting/client.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio/netsvc.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete ns istio-system` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection-` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete pods --all`) }) r.Run(`curl -sL https://istio.io/downloadIstioctl | sh -` + "\n" + `export PATH=$PATH:$HOME/.istioctl/bin` + "\n" + `istioctl install --readiness-timeout 10m0s --set profile=minimal -y --kubeconfig=$KUBECONFIG2` + "\n" + `istioctl --kubeconfig=$KUBECONFIG2 proxy-status`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio/netsvc.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio/greeting/client.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio/nse-auto-scale?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection=enabled` + "\n" + `` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_istio/greeting/server.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio/netsvc.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio/greeting/client.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_istio/nse-auto-scale?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 label namespace default istio-injection=enabled` + "\n" + `` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_istio/greeting/server.yaml`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait --timeout=5m --for=condition=ready pod -l app=alpine`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 exec deploy/alpine -c cmd-nsc -- apk add curl`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 exec deploy/alpine -c cmd-nsc -- curl -s greeting.default:9080 | grep -o "hello world from istio"`) @@ -148,16 +148,16 @@ func (s *Suite) TestNsm_kuma_universal_vl3() { s.T().Cleanup(func() { r.Run(`pkill -f "port-forward"` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete ns kuma-system kuma-demo ns-dns-vl3` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete ns kuma-demo` + "\n" + `rm tls.crt tls.key ca.crt kustomization.yaml control-plane.yaml` + "\n" + `rm -rf kuma-1.7.0`) }) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_kuma_universal_vl3/vl3-dns?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 -n ns-dns-vl3 wait --for=condition=ready --timeout=5m pod -l app=vl3-ipam`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/interdomain/nsm_kuma_universal_vl3/vl3-dns?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 -n ns-dns-vl3 wait --for=condition=ready --timeout=5m pod -l app=vl3-ipam`) r.Run(`curl -L https://kuma.io/installer.sh | VERSION=1.7.0 ARCH=amd64 bash -` + "\n" + `export PATH=$PWD/kuma-1.7.0/bin:$PATH`) r.Run(`kumactl generate tls-certificate --hostname=control-plane-kuma.my-vl3-network --hostname=kuma-control-plane.kuma-system.svc --type=server --key-file=./tls.key --cert-file=./tls.crt`) r.Run(`cp ./tls.crt ./ca.crt`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/interdomain/nsm_kuma_universal_vl3/namespace.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 create secret generic general-tls-certs --namespace=kuma-system --from-file=./tls.key --from-file=./tls.crt --from-file=./ca.crt`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/interdomain/nsm_kuma_universal_vl3/namespace.yaml` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 create secret generic general-tls-certs --namespace=kuma-system --from-file=./tls.key --from-file=./tls.crt --from-file=./ca.crt`) r.Run(`kumactl install control-plane --tls-general-secret=general-tls-certs --tls-general-ca-bundle=$(cat ./ca.crt | base64) > control-plane.yaml`) - r.Run(`cat > kustomization.yaml < kustomization.yaml < docker-compose.override.yaml < docker-compose.override.yaml </dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-kernel2ethernet2kernel-vfio2noop`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel_Vfio2Noop?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel_Vfio2Noop?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2kernel-vfio2noop`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ethernet2kernel-vfio2noop`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio -n ns-kernel2ethernet2kernel-vfio2noop`) @@ -62,7 +62,7 @@ func (s *Suite) TestKernel2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2kernel -- ping -c 4 172.16.1.100`) @@ -74,7 +74,7 @@ func (s *Suite) TestKernel2Kernel_Vfio2Noop() { r.Run(`kubectl -n ns-kernel2kernel-vfio2noop exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-kernel2kernel-vfio2noop`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel_Vfio2Noop?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel_Vfio2Noop?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel-vfio2noop`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel-vfio2noop`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio -n ns-kernel2kernel-vfio2noop`) @@ -89,7 +89,7 @@ func (s *Suite) TestMemif2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -100,10 +100,10 @@ func (s *Suite) TestSriovKernel2Noop() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-sriov-kernel2noop`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop/ponger?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop/ponger?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop wait --for=condition=ready --timeout=1m pod -l app=ponger`) r.Run(`kubectl -n ns-sriov-kernel2noop exec deploy/ponger -- ip a | grep "172.16.1.100"`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel`) r.Run(`kubectl -n ns-sriov-kernel2noop wait --for=condition=ready --timeout=1m pod -l app=nse-noop`) r.Run(`kubectl -n ns-sriov-kernel2noop exec deployments/nsc-kernel -- ping -c 4 172.16.1.100`) @@ -114,7 +114,7 @@ func (s *Suite) TestVfio2Noop() { r.Run(`kubectl -n ns-vfio2noop exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-vfio2noop`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2Noop?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2Noop?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-vfio2noop wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio`) r.Run(`kubectl -n ns-vfio2noop wait --for=condition=ready --timeout=1m pod -l app=nse-vfio`) r.Run(`function dpdk_ping() {` + "\n" + ` err_file="$(mktemp)"` + "\n" + ` trap 'rm -f "${err_file}"' RETURN` + "\n" + `` + "\n" + ` client_mac="$1"` + "\n" + ` server_mac="$2"` + "\n" + `` + "\n" + ` command="/root/dpdk-pingpong/build/pingpong \` + "\n" + ` --no-huge \` + "\n" + ` -- \` + "\n" + ` -n 500 \` + "\n" + ` -c \` + "\n" + ` -C ${client_mac} \` + "\n" + ` -S ${server_mac}` + "\n" + ` "` + "\n" + ` out="$(kubectl -n ns-vfio2noop exec deployments/nsc-vfio --container pinger -- /bin/bash -c "${command}" 2>"${err_file}")"` + "\n" + `` + "\n" + ` if [[ "$?" != 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if ! pong_packets="$(echo "${out}" | grep "rx .* pong packets" | sed -E 's/rx ([0-9]*) pong packets/\1/g')"; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if [[ "${pong_packets}" == 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` echo "${out}"` + "\n" + ` return 0` + "\n" + `}`) diff --git a/suites/multiforwarder_vlantag/suite.gen.go b/suites/multiforwarder_vlantag/suite.gen.go index 6141bd7b34..4ad50f258e 100755 --- a/suites/multiforwarder_vlantag/suite.gen.go +++ b/suites/multiforwarder_vlantag/suite.gen.go @@ -27,7 +27,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/multiforwarder?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/multiforwarder?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) } func (s *Suite) TestKernel2Ethernet2Kernel() { @@ -35,7 +35,7 @@ func (s *Suite) TestKernel2Ethernet2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2ethernet2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ethernet2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2ethernet2kernel -- ping -c 4 172.16.1.100`) @@ -47,7 +47,7 @@ func (s *Suite) TestKernel2Ethernet2Kernel_Vfio2NoopVlanTag() { r.Run(`kubectl -n ns-kernel2ethernet2kernel-vfio2noopvlantag exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-kernel2ethernet2kernel-vfio2noopvlantag`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel_Vfio2NoopVlanTag?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Ethernet2Kernel_Vfio2NoopVlanTag?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2ethernet2kernel-vfio2noopvlantag`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2ethernet2kernel-vfio2noopvlantag`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio -n ns-kernel2ethernet2kernel-vfio2noopvlantag`) @@ -62,7 +62,7 @@ func (s *Suite) TestKernel2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2kernel -- ping -c 4 172.16.1.100`) @@ -74,7 +74,7 @@ func (s *Suite) TestKernel2Kernel_Vfio2NoopVlanTag() { r.Run(`kubectl -n ns-kernel2kernel-vfio2noopvlantag exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-kernel2kernel-vfio2noopvlantag`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel_Vfio2NoopVlanTag?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel_Vfio2NoopVlanTag?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel-vfio2noopvlantag`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel-vfio2noopvlantag`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio -n ns-kernel2kernel-vfio2noopvlantag`) @@ -89,7 +89,7 @@ func (s *Suite) TestMemif2Memif() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-memif2memif`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Memif?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Memif2Memif?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-memif -n ns-memif2memif`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-memif -n ns-memif2memif`) r.Run(`result=$(kubectl exec deployments/nsc-memif -n "ns-memif2memif" -- vppctl ping 172.16.1.100 repeat 4)` + "\n" + `echo ${result}` + "\n" + `! echo ${result} | grep -E -q "(100% packet loss)|(0 sent)|(no egress interface)"`) @@ -100,10 +100,10 @@ func (s *Suite) TestSriovKernel2NoopVlanTag() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-sriov-kernel2noop-vlantag`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag/ponger?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag/ponger?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=ponger`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag exec deploy/ponger -- ip a | grep "172.16.1.100"`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nse-noop`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag exec deployments/nsc-kernel -- ping -c 4 172.16.1.100`) @@ -114,7 +114,7 @@ func (s *Suite) TestVfio2NoopVlanTag() { r.Run(`kubectl -n ns-vfio2noop-vlantag exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-vfio2noop-vlantag`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2NoopVlanTag?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2NoopVlanTag?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-vfio2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio`) r.Run(`kubectl -n ns-vfio2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nse-vfio`) r.Run(`function dpdk_ping() {` + "\n" + ` err_file="$(mktemp)"` + "\n" + ` trap 'rm -f "${err_file}"' RETURN` + "\n" + `` + "\n" + ` client_mac="$1"` + "\n" + ` server_mac="$2"` + "\n" + `` + "\n" + ` command="/root/dpdk-pingpong/build/pingpong \` + "\n" + ` --no-huge \` + "\n" + ` -- \` + "\n" + ` -n 500 \` + "\n" + ` -c \` + "\n" + ` -C ${client_mac} \` + "\n" + ` -S ${server_mac}` + "\n" + ` "` + "\n" + ` out="$(kubectl -n ns-vfio2noop-vlantag exec deployments/nsc-vfio --container pinger -- /bin/bash -c "${command}" 2>"${err_file}")"` + "\n" + `` + "\n" + ` if [[ "$?" != 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if ! pong_packets="$(echo "${out}" | grep "rx .* pong packets" | sed -E 's/rx ([0-9]*) pong packets/\1/g')"; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if [[ "${pong_packets}" == 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` echo "${out}"` + "\n" + ` return 0` + "\n" + `}`) diff --git a/suites/observability/dashboard/suite.gen.go b/suites/observability/dashboard/suite.gen.go index 59b5b05ff5..087baa965d 100755 --- a/suites/observability/dashboard/suite.gen.go +++ b/suites/observability/dashboard/suite.gen.go @@ -27,7 +27,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`pkill -f "kubectl port-forward -n nsm-system service/dashboard-backend 3001:3001"` + "\n" + `pkill -f "kubectl port-forward -n nsm-system service/dashboard-ui 3000:3000"` + "\n" + `kubectl delete service/dashboard-ui service/dashboard-backend pod/dashboard -n=nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/apps/dashboard?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/apps/dashboard?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready pod -l app=dashboard --timeout=5m -n nsm-system`) r.Run(`nohup kubectl port-forward -n nsm-system service/dashboard-backend 3001:3001 &`) r.Run(`nohup kubectl port-forward -n nsm-system service/dashboard-ui 3000:3000 &`) diff --git a/suites/observability/jaeger_and_prometheus/suite.gen.go b/suites/observability/jaeger_and_prometheus/suite.gen.go index e3a81c7661..334124e468 100755 --- a/suites/observability/jaeger_and_prometheus/suite.gen.go +++ b/suites/observability/jaeger_and_prometheus/suite.gen.go @@ -28,9 +28,9 @@ func (s *Suite) SetupSuite() { r.Run(`kubectl delete ns ns-jaeger-and-prometheus`) r.Run(`kubectl describe pods -n observability` + "\n" + `kubectl delete ns observability` + "\n" + `pkill -f "port-forward"`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/observability/jaeger_and_prometheus?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/observability/jaeger_and_prometheus?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n observability --timeout=1m --for=condition=ready pod -l app=opentelemetry`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/observability/jaeger_and_prometheus/example?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/observability/jaeger_and_prometheus/example?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-jaeger-and-prometheus`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-jaeger-and-prometheus`) r.Run(`kubectl exec pods/alpine -n ns-jaeger-and-prometheus -- ping -c 4 172.16.1.100`) diff --git a/suites/observability/nsm_system/suite.gen.go b/suites/observability/nsm_system/suite.gen.go index 72724fdf1e..eaf630f17a 100755 --- a/suites/observability/nsm_system/suite.gen.go +++ b/suites/observability/nsm_system/suite.gen.go @@ -27,7 +27,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/observability/nsm_system?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/observability/nsm_system?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) } func (s *Suite) Test() {} diff --git a/suites/ovs/suite.gen.go b/suites/ovs/suite.gen.go index 2ceac31735..e3fbda5e66 100755 --- a/suites/ovs/suite.gen.go +++ b/suites/ovs/suite.gen.go @@ -27,7 +27,7 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/ovs?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/ovs?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) } func (s *Suite) TestWebhook_smartvf() { @@ -36,7 +36,7 @@ func (s *Suite) TestWebhook_smartvf() { r.Run(`kubectl delete ns ns-webhook-smartvf`) }) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/webhook-smartvf?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/features/webhook-smartvf?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=5m pod -l app=nse-kernel -n ns-webhook-smartvf`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod postgres-cl -n ns-webhook-smartvf`) r.Run(`kubectl exec pods/postgres-cl -n ns-webhook-smartvf -c postgres-cl -- sh -c 'PGPASSWORD=admin psql -h 172.16.1.100 -p 5432 -U admin test'`) @@ -46,7 +46,7 @@ func (s *Suite) TestKernel2Kernel() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2Kernel?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=alpine -n ns-kernel2kernel`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel`) r.Run(`kubectl exec pods/alpine -n ns-kernel2kernel -- ping -c 4 172.16.1.100`) @@ -57,7 +57,7 @@ func (s *Suite) TestKernel2KernelVLAN() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2kernel-vlan`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2KernelVLAN?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2KernelVLAN?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel -n ns-kernel2kernel-vlan`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nse-kernel -n ns-kernel2kernel-vlan`) r.Run(`NSC=$((kubectl get pods -l app=nsc-kernel -n ns-kernel2kernel-vlan --template '{{range .items}}{{.metadata.name}}{{" "}}{{end}}') | cut -d' ' -f1)` + "\n" + `TARGET_IP=$(kubectl exec -ti ${NSC} -n ns-kernel2kernel-vlan -- ip route show | grep 172.16 | cut -d' ' -f1)`) @@ -69,7 +69,7 @@ func (s *Suite) TestSmartVF2SmartVF() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-smartvf2smartvf`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SmartVF2SmartVF?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SmartVF2SmartVF?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-smartvf2smartvf wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel`) r.Run(`kubectl -n ns-smartvf2smartvf wait --for=condition=ready --timeout=1m pod -l app=nse-kernel`) r.Run(`kubectl -n ns-smartvf2smartvf exec deployments/nsc-kernel -- ping -c 4 172.16.1.100`) diff --git a/suites/pss/suite.gen.go b/suites/pss/suite.gen.go index 945acbb77d..c9650b7c35 100755 --- a/suites/pss/suite.gen.go +++ b/suites/pss/suite.gen.go @@ -28,7 +28,7 @@ func (s *Suite) SetupSuite() { r.Run(`kubectl delete ds/forwarder-vpp -n nsm-system`) r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/pss/nsm-system?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/pss/nsm-system?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) } func (s *Suite) TestNginx() { @@ -36,7 +36,7 @@ func (s *Suite) TestNginx() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-nginx`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/pss/use-cases/nginx?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/pss/use-cases/nginx?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait --for=condition=ready --timeout=5m pod -l app=nse-kernel -n ns-nginx`) r.Run(`kubectl wait --for=condition=ready --timeout=1m pod -l app=nettools -n ns-nginx`) r.Run(`kubectl exec pods/nettools -n ns-nginx -- curl 172.16.1.100:8080 | grep -o "Welcome to nginx"`) diff --git a/suites/remotevlan_ovs/suite.gen.go b/suites/remotevlan_ovs/suite.gen.go index cb1c663094..9d46d5ff17 100755 --- a/suites/remotevlan_ovs/suite.gen.go +++ b/suites/remotevlan_ovs/suite.gen.go @@ -30,7 +30,7 @@ func (s *Suite) SetupSuite() { }) r.Run(`docker network create bridge-2` + "\n" + `docker network connect bridge-2 kind-worker` + "\n" + `docker network connect bridge-2 kind-worker2`) r.Run(`MACS=($(docker inspect --format='{{range .Containers}}{{.MacAddress}}{{"\n"}}{{end}}' bridge-2))` + "\n" + `ifw1=$(docker exec kind-worker ip -o link | grep ${MACS[@]/#/-e } | cut -f1 -d"@" | cut -f2 -d" ")` + "\n" + `ifw2=$(docker exec kind-worker2 ip -o link | grep ${MACS[@]/#/-e } | cut -f1 -d"@" | cut -f2 -d" ")` + "\n" + `` + "\n" + `(docker exec kind-worker ip link set $ifw1 down &&` + "\n" + `docker exec kind-worker ip link set $ifw1 name ext_net1 &&` + "\n" + `docker exec kind-worker ip link set dev ext_net1 mtu 1450 &&` + "\n" + `docker exec kind-worker ip link set ext_net1 up &&` + "\n" + `docker exec kind-worker2 ip link set $ifw2 down &&` + "\n" + `docker exec kind-worker2 ip link set $ifw2 name ext_net1 &&` + "\n" + `docker exec kind-worker2 ip link set dev ext_net1 mtu 1450 &&` + "\n" + `docker exec kind-worker2 ip link set ext_net1 up)`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/remotevlan_ovs?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/remotevlan_ovs?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n nsm-system wait --for=condition=ready --timeout=2m pod -l app=nse-remote-vlan`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) r.Run(`kubectl -n nsm-system wait --for=condition=ready --timeout=2m pod -l app=forwarder-ovs`) @@ -41,7 +41,7 @@ func (s *Suite) TestKernel2RVlanBreakout() { r.Run(`docker stop rvm-tester-breakout` + "\n" + `docker image rm rvm-tester-breakout:latest` + "\n" + `true`) r.Run(`kubectl delete ns ns-kernel2rvlan-breakout`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanBreakout?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanBreakout?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-kernel2rvlan-breakout wait --for=condition=ready --timeout=1m pod -l app=iperf1-s`) r.Run(`NSCS=($(kubectl get pods -l app=iperf1-s -n ns-kernel2rvlan-breakout --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'))`) r.Run(`cat > Dockerfile <<EOF` + "\n" + `FROM networkstatic/iperf3` + "\n" + `` + "\n" + `RUN apt-get update \` + "\n" + ` && apt-get install -y ethtool iproute2 \` + "\n" + ` && rm -rf /var/lib/apt/lists/*` + "\n" + `` + "\n" + `ENTRYPOINT [ "tail", "-f", "/dev/null" ]` + "\n" + `EOF` + "\n" + `docker build . -t rvm-tester-breakout`) @@ -56,7 +56,7 @@ func (s *Suite) TestKernel2RVlanInternal() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2rvlan-internal`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanInternal?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanInternal?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-kernel2rvlan-internal wait --for=condition=ready --timeout=1m pod -l app=iperf1-s`) r.Run(`NSCS=($(kubectl get pods -l app=iperf1-s -n ns-kernel2rvlan-internal --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'))`) r.Run(`IP_ADDR=$(kubectl exec ${NSCS[0]} -c cmd-nsc -n ns-kernel2rvlan-internal -- ip -4 addr show nsm-1 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')` + "\n" + ` kubectl exec ${NSCS[0]} -c iperf-server -n ns-kernel2rvlan-internal -- iperf3 -sD -B ${IP_ADDR} -1` + "\n" + ` kubectl exec ${NSCS[1]} -c iperf-server -n ns-kernel2rvlan-internal -- iperf3 -i0 -t 5 -c ${IP_ADDR}`) @@ -72,9 +72,9 @@ func (s *Suite) TestKernel2RVlanMultiNS() { r.Run(`kubectl delete ns ns-kernel2vlan-multins-2`) r.Run(`kubectl delete ns ns-kernel2vlan-multins-3`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-1?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/use-cases/Kernel2RVlanMultiNS/ns-2/ns-kernel2vlan-multins-2.yaml` + "\n" + `kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/use-cases/Kernel2RVlanMultiNS/ns-2/netsvc.yaml` + "\n" + `kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-2?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-3?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-1?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/use-cases/Kernel2RVlanMultiNS/ns-2/ns-kernel2vlan-multins-2.yaml` + "\n" + `kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/use-cases/Kernel2RVlanMultiNS/ns-2/netsvc.yaml` + "\n" + `kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-2?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-3?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-kernel2vlan-multins-1 wait --for=condition=ready --timeout=1m pod -l app=nse-remote-vlan`) r.Run(`kubectl -n ns-kernel2vlan-multins-1 wait --for=condition=ready --timeout=1m pod -l app=alpine-1`) r.Run(`kubectl -n ns-kernel2vlan-multins-2 wait --for=condition=ready --timeout=1m pod -l app=nse-remote-vlan`) diff --git a/suites/remotevlan_vpp/suite.gen.go b/suites/remotevlan_vpp/suite.gen.go index d83374fb48..2796c7750c 100755 --- a/suites/remotevlan_vpp/suite.gen.go +++ b/suites/remotevlan_vpp/suite.gen.go @@ -30,7 +30,7 @@ func (s *Suite) SetupSuite() { }) r.Run(`docker network create bridge-2` + "\n" + `docker network connect bridge-2 kind-worker` + "\n" + `docker network connect bridge-2 kind-worker2`) r.Run(`MACS=($(docker inspect --format='{{range .Containers}}{{.MacAddress}}{{"\n"}}{{end}}' bridge-2))` + "\n" + `ifw1=$(docker exec kind-worker ip -o link | grep ${MACS[@]/#/-e } | cut -f1 -d"@" | cut -f2 -d" ")` + "\n" + `ifw2=$(docker exec kind-worker2 ip -o link | grep ${MACS[@]/#/-e } | cut -f1 -d"@" | cut -f2 -d" ")` + "\n" + `` + "\n" + `(docker exec kind-worker ip link set $ifw1 down &&` + "\n" + `docker exec kind-worker ip link set $ifw1 name ext_net1 &&` + "\n" + `docker exec kind-worker ip link set dev ext_net1 mtu 1450 &&` + "\n" + `docker exec kind-worker ip link set ext_net1 up &&` + "\n" + `docker exec kind-worker2 ip link set $ifw2 down &&` + "\n" + `docker exec kind-worker2 ip link set $ifw2 name ext_net1 &&` + "\n" + `docker exec kind-worker2 ip link set dev ext_net1 mtu 1450 &&` + "\n" + `docker exec kind-worker2 ip link set ext_net1 up)`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/remotevlan_vpp?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/remotevlan_vpp?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n nsm-system wait --for=condition=ready --timeout=2m pod -l app=nse-remote-vlan`) r.Run(`WH=$(kubectl get pods -l app=admission-webhook-k8s -n nsm-system --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')` + "\n" + `kubectl wait --for=condition=ready --timeout=1m pod ${WH} -n nsm-system`) r.Run(`kubectl -n nsm-system wait --for=condition=ready --timeout=2m pod -l app=forwarder-vpp`) @@ -41,7 +41,7 @@ func (s *Suite) TestKernel2RVlanBreakout() { r.Run(`docker stop rvm-tester-breakout` + "\n" + `docker image rm rvm-tester-breakout:latest` + "\n" + `true`) r.Run(`kubectl delete ns ns-kernel2rvlan-breakout`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanBreakout?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanBreakout?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-kernel2rvlan-breakout wait --for=condition=ready --timeout=1m pod -l app=iperf1-s`) r.Run(`NSCS=($(kubectl get pods -l app=iperf1-s -n ns-kernel2rvlan-breakout --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'))`) r.Run(`cat > Dockerfile <<EOF` + "\n" + `FROM networkstatic/iperf3` + "\n" + `` + "\n" + `RUN apt-get update \` + "\n" + ` && apt-get install -y ethtool iproute2 \` + "\n" + ` && rm -rf /var/lib/apt/lists/*` + "\n" + `` + "\n" + `ENTRYPOINT [ "tail", "-f", "/dev/null" ]` + "\n" + `EOF` + "\n" + `docker build . -t rvm-tester-breakout`) @@ -56,7 +56,7 @@ func (s *Suite) TestKernel2RVlanInternal() { s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-kernel2rvlan-internal`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanInternal?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanInternal?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-kernel2rvlan-internal wait --for=condition=ready --timeout=1m pod -l app=iperf1-s`) r.Run(`NSCS=($(kubectl get pods -l app=iperf1-s -n ns-kernel2rvlan-internal --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'))`) r.Run(`IP_ADDR=$(kubectl exec ${NSCS[0]} -c cmd-nsc -n ns-kernel2rvlan-internal -- ip -4 addr show nsm-1 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')` + "\n" + ` kubectl exec ${NSCS[0]} -c iperf-server -n ns-kernel2rvlan-internal -- iperf3 -sD -B ${IP_ADDR} -1` + "\n" + ` kubectl exec ${NSCS[1]} -c iperf-server -n ns-kernel2rvlan-internal -- iperf3 -i0 -t 5 -c ${IP_ADDR}`) @@ -72,9 +72,9 @@ func (s *Suite) TestKernel2RVlanMultiNS() { r.Run(`kubectl delete ns ns-kernel2vlan-multins-2`) r.Run(`kubectl delete ns ns-kernel2vlan-multins-3`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-1?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/use-cases/Kernel2RVlanMultiNS/ns-2/ns-kernel2vlan-multins-2.yaml` + "\n" + `kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/use-cases/Kernel2RVlanMultiNS/ns-2/netsvc.yaml` + "\n" + `kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-2?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-3?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-1?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/use-cases/Kernel2RVlanMultiNS/ns-2/ns-kernel2vlan-multins-2.yaml` + "\n" + `kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/use-cases/Kernel2RVlanMultiNS/ns-2/netsvc.yaml` + "\n" + `kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-2?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Kernel2RVlanMultiNS/ns-3?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-kernel2vlan-multins-1 wait --for=condition=ready --timeout=1m pod -l app=nse-remote-vlan`) r.Run(`kubectl -n ns-kernel2vlan-multins-1 wait --for=condition=ready --timeout=1m pod -l app=alpine-1`) r.Run(`kubectl -n ns-kernel2vlan-multins-2 wait --for=condition=ready --timeout=1m pod -l app=nse-remote-vlan`) diff --git a/suites/spire/cluster1/suite.gen.go b/suites/spire/cluster1/suite.gen.go index edd1e3edaf..f4acfb3ec8 100755 --- a/suites/spire/cluster1/suite.gen.go +++ b/suites/spire/cluster1/suite.gen.go @@ -26,10 +26,10 @@ func (s *Suite) SetupSuite() { r.Run(`kubectl --kubeconfig=$KUBECONFIG1 delete crd clusterspiffeids.spire.spiffe.io` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete crd clusterfederatedtrustdomains.spire.spiffe.io` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete validatingwebhookconfiguration.admissionregistration.k8s.io/spire-controller-manager-webhook` + "\n" + `kubectl --kubeconfig=$KUBECONFIG1 delete ns spire`) }) r.Run(`[[ ! -z $KUBECONFIG1 ]]`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/cluster1?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/cluster1?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait -n spire --timeout=3m --for=condition=ready pod -l app=spire-server`) r.Run(`kubectl --kubeconfig=$KUBECONFIG1 wait -n spire --timeout=1m --for=condition=ready pod -l app=spire-agent`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/cluster1/clusterspiffeid-template.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/base/clusterspiffeid-webhook-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/cluster1/clusterspiffeid-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG1 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/base/clusterspiffeid-webhook-template.yaml`) } func (s *Suite) Test() {} diff --git a/suites/spire/cluster2/suite.gen.go b/suites/spire/cluster2/suite.gen.go index a969122139..fbc637bb0e 100755 --- a/suites/spire/cluster2/suite.gen.go +++ b/suites/spire/cluster2/suite.gen.go @@ -26,10 +26,10 @@ func (s *Suite) SetupSuite() { r.Run(`kubectl --kubeconfig=$KUBECONFIG2 delete crd clusterspiffeids.spire.spiffe.io` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete crd clusterfederatedtrustdomains.spire.spiffe.io` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete validatingwebhookconfiguration.admissionregistration.k8s.io/spire-controller-manager-webhook` + "\n" + `kubectl --kubeconfig=$KUBECONFIG2 delete ns spire`) }) r.Run(`[[ ! -z $KUBECONFIG2 ]]`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/cluster2?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/cluster2?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl --kubeconfig=$KUBECONFIG2 wait -n spire --timeout=3m --for=condition=ready pod -l app=spire-server`) r.Run(`kubectl --kubeconfig=$KUBECONFIG2 wait -n spire --timeout=1m --for=condition=ready pod -l app=spire-agent`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/cluster2/clusterspiffeid-template.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/base/clusterspiffeid-webhook-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/cluster2/clusterspiffeid-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG2 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/base/clusterspiffeid-webhook-template.yaml`) } func (s *Suite) Test() {} diff --git a/suites/spire/cluster3/suite.gen.go b/suites/spire/cluster3/suite.gen.go index db2e0f0af1..d6ee458677 100755 --- a/suites/spire/cluster3/suite.gen.go +++ b/suites/spire/cluster3/suite.gen.go @@ -26,10 +26,10 @@ func (s *Suite) SetupSuite() { r.Run(`kubectl --kubeconfig=$KUBECONFIG3 delete crd clusterspiffeids.spire.spiffe.io` + "\n" + `kubectl --kubeconfig=$KUBECONFIG3 delete crd clusterfederatedtrustdomains.spire.spiffe.io` + "\n" + `kubectl --kubeconfig=$KUBECONFIG3 delete validatingwebhookconfiguration.admissionregistration.k8s.io/spire-controller-manager-webhook` + "\n" + `kubectl --kubeconfig=$KUBECONFIG3 delete ns spire`) }) r.Run(`[[ ! -z $KUBECONFIG3 ]]`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG3 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/cluster3?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG3 apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/cluster3?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl --kubeconfig=$KUBECONFIG3 wait -n spire --timeout=3m --for=condition=ready pod -l app=spire-server`) r.Run(`kubectl --kubeconfig=$KUBECONFIG3 wait -n spire --timeout=1m --for=condition=ready pod -l app=spire-agent`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG3 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/cluster3/clusterspiffeid-template.yaml`) - r.Run(`kubectl --kubeconfig=$KUBECONFIG3 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/base/clusterspiffeid-webhook-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG3 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/cluster3/clusterspiffeid-template.yaml`) + r.Run(`kubectl --kubeconfig=$KUBECONFIG3 apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/base/clusterspiffeid-webhook-template.yaml`) } func (s *Suite) Test() {} diff --git a/suites/spire/single_cluster/suite.gen.go b/suites/spire/single_cluster/suite.gen.go index 135645081c..304a669d5b 100755 --- a/suites/spire/single_cluster/suite.gen.go +++ b/suites/spire/single_cluster/suite.gen.go @@ -25,10 +25,10 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete crd clusterspiffeids.spire.spiffe.io` + "\n" + `kubectl delete crd clusterfederatedtrustdomains.spire.spiffe.io` + "\n" + `kubectl delete validatingwebhookconfiguration.admissionregistration.k8s.io/spire-controller-manager-webhook` + "\n" + `kubectl delete ns spire`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/single_cluster?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/single_cluster?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n spire --timeout=3m --for=condition=ready pod -l app=spire-server`) r.Run(`kubectl wait -n spire --timeout=1m --for=condition=ready pod -l app=spire-agent`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/single_cluster/clusterspiffeid-template.yaml`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/base/clusterspiffeid-webhook-template.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/single_cluster/clusterspiffeid-template.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/base/clusterspiffeid-webhook-template.yaml`) } func (s *Suite) Test() {} diff --git a/suites/spire/single_cluster_csi/suite.gen.go b/suites/spire/single_cluster_csi/suite.gen.go index 74e481b373..0d0999e6c4 100755 --- a/suites/spire/single_cluster_csi/suite.gen.go +++ b/suites/spire/single_cluster_csi/suite.gen.go @@ -25,10 +25,10 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete crd clusterspiffeids.spire.spiffe.io` + "\n" + `kubectl delete crd clusterfederatedtrustdomains.spire.spiffe.io` + "\n" + `kubectl delete validatingwebhookconfiguration.admissionregistration.k8s.io/spire-controller-manager-webhook` + "\n" + `kubectl delete ns spire`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/single_cluster_csi?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/spire/single_cluster_csi?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl wait -n spire --timeout=3m --for=condition=ready pod -l app=spire-server`) r.Run(`kubectl wait -n spire --timeout=1m --for=condition=ready pod -l app=spire-agent`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/single_cluster/clusterspiffeid-template.yaml`) - r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4/examples/spire/base/clusterspiffeid-webhook-template.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/single_cluster/clusterspiffeid-template.yaml`) + r.Run(`kubectl apply -f https://raw.githubusercontent.com/networkservicemesh/deployments-k8s/893c7ef045dad7e95e79f31acf1e14a7dce3718c/examples/spire/base/clusterspiffeid-webhook-template.yaml`) } func (s *Suite) Test() {} diff --git a/suites/sriov/suite.gen.go b/suites/sriov/suite.gen.go index c1aee40c07..fbf54db889 100755 --- a/suites/sriov/suite.gen.go +++ b/suites/sriov/suite.gen.go @@ -27,17 +27,17 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/sriov?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/sriov?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) } func (s *Suite) TestSriovKernel2Noop() { r := s.Runner("../deployments-k8s/examples/use-cases/SriovKernel2Noop") s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-sriov-kernel2noop`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop/ponger?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop/ponger?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop wait --for=condition=ready --timeout=1m pod -l app=ponger`) r.Run(`kubectl -n ns-sriov-kernel2noop exec deploy/ponger -- ip a | grep "172.16.1.100"`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2Noop?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel`) r.Run(`kubectl -n ns-sriov-kernel2noop wait --for=condition=ready --timeout=1m pod -l app=nse-noop`) r.Run(`kubectl -n ns-sriov-kernel2noop exec deployments/nsc-kernel -- ping -c 4 172.16.1.100`) @@ -48,7 +48,7 @@ func (s *Suite) TestVfio2Noop() { r.Run(`kubectl -n ns-vfio2noop exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-vfio2noop`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2Noop?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2Noop?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-vfio2noop wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio`) r.Run(`kubectl -n ns-vfio2noop wait --for=condition=ready --timeout=1m pod -l app=nse-vfio`) r.Run(`function dpdk_ping() {` + "\n" + ` err_file="$(mktemp)"` + "\n" + ` trap 'rm -f "${err_file}"' RETURN` + "\n" + `` + "\n" + ` client_mac="$1"` + "\n" + ` server_mac="$2"` + "\n" + `` + "\n" + ` command="/root/dpdk-pingpong/build/pingpong \` + "\n" + ` --no-huge \` + "\n" + ` -- \` + "\n" + ` -n 500 \` + "\n" + ` -c \` + "\n" + ` -C ${client_mac} \` + "\n" + ` -S ${server_mac}` + "\n" + ` "` + "\n" + ` out="$(kubectl -n ns-vfio2noop exec deployments/nsc-vfio --container pinger -- /bin/bash -c "${command}" 2>"${err_file}")"` + "\n" + `` + "\n" + ` if [[ "$?" != 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if ! pong_packets="$(echo "${out}" | grep "rx .* pong packets" | sed -E 's/rx ([0-9]*) pong packets/\1/g')"; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if [[ "${pong_packets}" == 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` echo "${out}"` + "\n" + ` return 0` + "\n" + `}`) diff --git a/suites/sriov_vlantag/suite.gen.go b/suites/sriov_vlantag/suite.gen.go index 2608fbd019..edba4bb56d 100755 --- a/suites/sriov_vlantag/suite.gen.go +++ b/suites/sriov_vlantag/suite.gen.go @@ -27,17 +27,17 @@ func (s *Suite) SetupSuite() { s.T().Cleanup(func() { r.Run(`kubectl delete mutatingwebhookconfiguration nsm-mutating-webhook` + "\n" + `kubectl delete ns nsm-system`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/sriov?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/sriov?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) } func (s *Suite) TestSriovKernel2NoopVlanTag() { r := s.Runner("../deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag") s.T().Cleanup(func() { r.Run(`kubectl delete ns ns-sriov-kernel2noop-vlantag`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag/ponger?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag/ponger?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=ponger`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag exec deploy/ponger -- ip a | grep "172.16.1.100"`) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/SriovKernel2NoopVlanTag?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nsc-kernel`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nse-noop`) r.Run(`kubectl -n ns-sriov-kernel2noop-vlantag exec deployments/nsc-kernel -- ping -c 4 172.16.1.100`) @@ -48,7 +48,7 @@ func (s *Suite) TestVfio2NoopVlanTag() { r.Run(`kubectl -n ns-vfio2noop-vlantag exec deployments/nse-vfio --container ponger -- /bin/bash -c '\` + "\n" + ` (sleep 10 && kill $(pgrep "pingpong")) 1>/dev/null 2>&1 & \` + "\n" + `'`) r.Run(`kubectl delete ns ns-vfio2noop-vlantag`) }) - r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2NoopVlanTag?ref=f21d0bdeaf5e4e1f9e6e768c2e31bf8ca57150b4`) + r.Run(`kubectl apply -k https://github.com/networkservicemesh/deployments-k8s/examples/use-cases/Vfio2NoopVlanTag?ref=893c7ef045dad7e95e79f31acf1e14a7dce3718c`) r.Run(`kubectl -n ns-vfio2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nsc-vfio`) r.Run(`kubectl -n ns-vfio2noop-vlantag wait --for=condition=ready --timeout=1m pod -l app=nse-vfio`) r.Run(`function dpdk_ping() {` + "\n" + ` err_file="$(mktemp)"` + "\n" + ` trap 'rm -f "${err_file}"' RETURN` + "\n" + `` + "\n" + ` client_mac="$1"` + "\n" + ` server_mac="$2"` + "\n" + `` + "\n" + ` command="/root/dpdk-pingpong/build/pingpong \` + "\n" + ` --no-huge \` + "\n" + ` -- \` + "\n" + ` -n 500 \` + "\n" + ` -c \` + "\n" + ` -C ${client_mac} \` + "\n" + ` -S ${server_mac}` + "\n" + ` "` + "\n" + ` out="$(kubectl -n ns-vfio2noop-vlantag exec deployments/nsc-vfio --container pinger -- /bin/bash -c "${command}" 2>"${err_file}")"` + "\n" + `` + "\n" + ` if [[ "$?" != 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if ! pong_packets="$(echo "${out}" | grep "rx .* pong packets" | sed -E 's/rx ([0-9]*) pong packets/\1/g')"; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` if [[ "${pong_packets}" == 0 ]]; then` + "\n" + ` echo "${out}"` + "\n" + ` cat "${err_file}" 1>&2` + "\n" + ` return 1` + "\n" + ` fi` + "\n" + `` + "\n" + ` echo "${out}"` + "\n" + ` return 0` + "\n" + `}`)