diff options
-rw-r--r-- | extras/hs-test/docker/Dockerfile.envoy | 6 | ||||
-rw-r--r-- | extras/hs-test/docker/Dockerfile.nginx | 3 | ||||
-rw-r--r-- | extras/hs-test/infra/hst_suite.go | 21 | ||||
-rw-r--r-- | extras/hs-test/infra/suite_envoy_proxy.go | 1 | ||||
-rw-r--r-- | extras/hs-test/infra/suite_nginx_proxy.go | 75 | ||||
-rw-r--r-- | extras/hs-test/infra/suite_no_topo.go | 47 | ||||
-rw-r--r-- | extras/hs-test/infra/suite_ns.go | 127 | ||||
-rw-r--r-- | extras/hs-test/infra/utils.go | 1 | ||||
-rw-r--r-- | extras/hs-test/nginx_test.go | 33 | ||||
-rw-r--r-- | extras/hs-test/proxy_test.go | 18 | ||||
-rw-r--r-- | extras/hs-test/resources/nginx/nginx.conf | 2 | ||||
-rw-r--r-- | extras/hs-test/resources/nginx/nginx_proxy_mirroring.conf | 2 | ||||
-rw-r--r-- | extras/hs-test/resources/nginx/vcl.conf | 1 | ||||
-rwxr-xr-x | extras/hs-test/script/build_hst.sh | 1 | ||||
-rw-r--r-- | extras/hs-test/topo-containers/envoyProxy.yaml | 5 | ||||
-rw-r--r-- | extras/hs-test/topo-containers/ns.yaml | 27 |
16 files changed, 168 insertions, 202 deletions
diff --git a/extras/hs-test/docker/Dockerfile.envoy b/extras/hs-test/docker/Dockerfile.envoy new file mode 100644 index 00000000000..cadb9b14a76 --- /dev/null +++ b/extras/hs-test/docker/Dockerfile.envoy @@ -0,0 +1,6 @@ +FROM envoyproxy/envoy-contrib:v1.31-latest + +RUN chmod go+r /etc/envoy/envoy.yaml +RUN chown envoy:envoy /dev/stdout /dev/stderr + +ENTRYPOINT ["/bin/sh", "-c", "envoy --log-format [%t][%l][%g:%#]%_ --concurrency 2 -c /etc/envoy/envoy.yaml"]
\ No newline at end of file diff --git a/extras/hs-test/docker/Dockerfile.nginx b/extras/hs-test/docker/Dockerfile.nginx index 386f8e90016..78a75d44a31 100644 --- a/extras/hs-test/docker/Dockerfile.nginx +++ b/extras/hs-test/docker/Dockerfile.nginx @@ -7,11 +7,10 @@ RUN apt-get update \ && rm -rf /var/lib/apt/lists/* COPY vpp-data/lib/* /usr/lib/ -COPY resources/nginx/vcl.conf /vcl.conf COPY resources/nginx/nginx.conf /nginx.conf COPY script/nginx_ldp.sh /usr/bin/nginx_ldp.sh -ENV VCL_CONFIG=/vcl.conf +ENV VCL_CONFIG=/tmp/nginx/vcl.conf ENV LDP=/usr/lib/libvcl_ldpreload.so ENV LDP_DEBUG=0 ENV VCL_DEBUG=0 diff --git a/extras/hs-test/infra/hst_suite.go b/extras/hs-test/infra/hst_suite.go index 07c0d935e04..8785fbf63d4 100644 --- a/extras/hs-test/infra/hst_suite.go +++ b/extras/hs-test/infra/hst_suite.go @@ -322,20 +322,25 @@ func (s *HstSuite) SkipIfMultiWorker(args ...any) { } } -func (s *HstSuite) SkipIfNotEnoughAvailableCpus() bool { - var MaxRequestedCpu int +func (s *HstSuite) SkipIfNotEnoughAvailableCpus() { + var maxRequestedCpu int + availableCpus := len(s.CpuAllocator.cpus) - 1 + + if *UseCpu0 { + availableCpus++ + } if s.CpuAllocator.runningInCi { - MaxRequestedCpu = ((s.CpuAllocator.buildNumber + 1) * s.CpuAllocator.maxContainerCount * s.CpuCount) + maxRequestedCpu = ((s.CpuAllocator.buildNumber + 1) * s.CpuAllocator.maxContainerCount * s.CpuCount) } else { - MaxRequestedCpu = (GinkgoParallelProcess() * s.CpuAllocator.maxContainerCount * s.CpuCount) + maxRequestedCpu = (GinkgoParallelProcess() * s.CpuAllocator.maxContainerCount * s.CpuCount) } - if len(s.CpuAllocator.cpus)-1 < MaxRequestedCpu { - s.Skip(fmt.Sprintf("test case cannot allocate requested cpus (%d cpus * %d containers)", s.CpuCount, s.CpuAllocator.maxContainerCount)) + if availableCpus < maxRequestedCpu { + s.Skip(fmt.Sprintf("Test case cannot allocate requested cpus "+ + "(%d cpus * %d containers, %d available). Try using 'CPU0=true'", + s.CpuCount, s.CpuAllocator.maxContainerCount, availableCpus)) } - - return true } func (s *HstSuite) SkipUnlessLeakCheck() { diff --git a/extras/hs-test/infra/suite_envoy_proxy.go b/extras/hs-test/infra/suite_envoy_proxy.go index e34a7d74225..b7f37a9ace7 100644 --- a/extras/hs-test/infra/suite_envoy_proxy.go +++ b/extras/hs-test/infra/suite_envoy_proxy.go @@ -96,6 +96,7 @@ func (s *EnvoyProxySuite) SetupTest() { // Envoy envoyContainer := s.GetContainerByName(EnvoyProxyContainerName) s.AssertNil(envoyContainer.Create()) + s.proxyPort = 8080 envoySettings := struct { LogPrefix string diff --git a/extras/hs-test/infra/suite_nginx_proxy.go b/extras/hs-test/infra/suite_nginx_proxy.go index 75215cfc78d..93a9635f938 100644 --- a/extras/hs-test/infra/suite_nginx_proxy.go +++ b/extras/hs-test/infra/suite_nginx_proxy.go @@ -65,26 +65,9 @@ func (s *NginxProxySuite) SetupTest() { s.AssertNil(vpp.createTap(serverInterface, 2)) // nginx proxy - nginxProxyContainer := s.GetTransientContainerByName(NginxProxyContainerName) + nginxProxyContainer := s.GetContainerByName(NginxProxyContainerName) s.AssertNil(nginxProxyContainer.Create()) s.proxyPort = 80 - values := struct { - LogPrefix string - Proxy string - Server string - Port uint16 - }{ - LogPrefix: nginxProxyContainer.Name, - Proxy: clientInterface.Peer.Ip4AddressString(), - Server: serverInterface.Ip4AddressString(), - Port: s.proxyPort, - } - nginxProxyContainer.CreateConfig( - "/nginx.conf", - "./resources/nginx/nginx_proxy_mirroring.conf", - values, - ) - s.AssertNil(nginxProxyContainer.Start()) // nginx HTTP server nginxServerContainer := s.GetTransientContainerByName(NginxServerContainerName) @@ -104,8 +87,6 @@ func (s *NginxProxySuite) SetupTest() { nginxSettings, ) s.AssertNil(nginxServerContainer.Start()) - - vpp.WaitForApp("nginx-", 5) } func (s *NginxProxySuite) TearDownTest() { @@ -116,6 +97,35 @@ func (s *NginxProxySuite) TearDownTest() { s.HstSuite.TearDownTest() } +func (s *NginxProxySuite) CreateNginxProxyConfig(container *Container, multiThreadWorkers bool) { + clientInterface := s.GetInterfaceByName(MirroringClientInterfaceName) + serverInterface := s.GetInterfaceByName(MirroringServerInterfaceName) + var workers uint8 + if multiThreadWorkers { + workers = 2 + } else { + workers = 1 + } + values := struct { + Workers uint8 + LogPrefix string + Proxy string + Server string + Port uint16 + }{ + Workers: workers, + LogPrefix: container.Name, + Proxy: clientInterface.Peer.Ip4AddressString(), + Server: serverInterface.Ip4AddressString(), + Port: s.proxyPort, + } + container.CreateConfig( + "/nginx.conf", + "./resources/nginx/nginx_proxy_mirroring.conf", + values, + ) +} + func (s *NginxProxySuite) ProxyPort() uint16 { return s.proxyPort } @@ -132,6 +142,31 @@ func (s *NginxProxySuite) CurlDownloadResource(uri string) { s.AssertNotContains(log, "Operation timed out") } +func (s *NginxProxySuite) AddVclConfig(container *Container, multiThreadWorkers bool) { + var vclConf Stanza + vclFileName := container.GetHostWorkDir() + "/vcl.conf" + + appSocketApi := fmt.Sprintf("app-socket-api %s/var/run/app_ns_sockets/default", + container.GetContainerWorkDir()) + + vclConf. + NewStanza("vcl"). + Append("heapsize 64M"). + Append("rx-fifo-size 4000000"). + Append("tx-fifo-size 4000000"). + Append("segment-size 4000000000"). + Append("add-segment-size 4000000000"). + Append("event-queue-size 100000"). + Append("use-mq-eventfd"). + Append(appSocketApi) + if multiThreadWorkers { + vclConf.Append("multi-thread-workers") + } + + err := vclConf.Close().SaveToFile(vclFileName) + s.AssertNil(err, fmt.Sprint(err)) +} + var _ = Describe("NginxProxySuite", Ordered, ContinueOnFailure, func() { var s NginxProxySuite BeforeAll(func() { diff --git a/extras/hs-test/infra/suite_no_topo.go b/extras/hs-test/infra/suite_no_topo.go index a4abf40d07a..f518ba7c5e1 100644 --- a/extras/hs-test/infra/suite_no_topo.go +++ b/extras/hs-test/infra/suite_no_topo.go @@ -1,6 +1,7 @@ package hst import ( + "fmt" "reflect" "runtime" "strings" @@ -68,6 +69,50 @@ func (s *NoTopoSuite) TearDownTest() { s.HstSuite.TearDownTest() } +func (s *NoTopoSuite) CreateNginxConfig(container *Container, multiThreadWorkers bool) { + var workers uint8 + if multiThreadWorkers { + workers = 2 + } else { + workers = 1 + } + values := struct { + Workers uint8 + }{ + Workers: workers, + } + container.CreateConfig( + "/nginx.conf", + "./resources/nginx/nginx.conf", + values, + ) +} + +func (s *NoTopoSuite) AddNginxVclConfig(multiThreadWorkers bool) { + nginxCont := s.GetContainerByName(SingleTopoContainerNginx) + vclFileName := nginxCont.GetHostWorkDir() + "/vcl.conf" + appSocketApi := fmt.Sprintf("app-socket-api %s/var/run/app_ns_sockets/default", + nginxCont.GetContainerWorkDir()) + + var vclConf Stanza + vclConf. + NewStanza("vcl"). + Append("heapsize 64M"). + Append("rx-fifo-size 4000000"). + Append("tx-fifo-size 4000000"). + Append("segment-size 4000000000"). + Append("add-segment-size 4000000000"). + Append("event-queue-size 100000"). + Append("use-mq-eventfd"). + Append(appSocketApi) + if multiThreadWorkers { + vclConf.Append("multi-thread-workers") + } + + err := vclConf.Close().SaveToFile(vclFileName) + s.AssertNil(err, fmt.Sprint(err)) +} + func (s *NoTopoSuite) VppAddr() string { return s.GetInterfaceByName(TapInterfaceName).Peer.Ip4AddressString() } @@ -80,7 +125,7 @@ func (s *NoTopoSuite) HostAddr() string { return s.GetInterfaceByName(TapInterfaceName).Ip4AddressString() } -func (s *NoTopoSuite) CreateNginxConfig(container *Container) { +func (s *NoTopoSuite) CreateNginxHttp3Config(container *Container) { nginxSettings := struct { LogPrefix string }{ diff --git a/extras/hs-test/infra/suite_ns.go b/extras/hs-test/infra/suite_ns.go deleted file mode 100644 index 601ec22a8a9..00000000000 --- a/extras/hs-test/infra/suite_ns.go +++ /dev/null @@ -1,127 +0,0 @@ -package hst - -import ( - "fmt" - "reflect" - "runtime" - "strings" - - . "github.com/onsi/ginkgo/v2" -) - -// These correspond to names used in yaml config -const ( - ClientInterface = "hclnvpp" - ServerInterface = "hsrvvpp" -) - -var nsTests = map[string][]func(s *NsSuite){} -var nsSoloTests = map[string][]func(s *NsSuite){} - -type NsSuite struct { - HstSuite -} - -func RegisterNsTests(tests ...func(s *NsSuite)) { - nsTests[getTestFilename()] = tests -} -func RegisterNsSoloTests(tests ...func(s *NsSuite)) { - nsSoloTests[getTestFilename()] = tests -} - -func (s *NsSuite) SetupSuite() { - s.HstSuite.SetupSuite() - s.ConfigureNetworkTopology("ns") - s.LoadContainerTopology("ns") -} - -func (s *NsSuite) SetupTest() { - s.HstSuite.SetupTest() - - // Setup test conditions - var sessionConfig Stanza - sessionConfig. - NewStanza("session"). - Append("enable"). - Append("use-app-socket-api"). - Append("evt_qs_memfd_seg"). - Append("event-queue-length 100000") - - if strings.Contains(CurrentSpecReport().LeafNodeText, "InterruptMode") { - sessionConfig.Append("use-private-rx-mqs").Close() - } else { - sessionConfig.Close() - } - - container := s.GetContainerByName("vpp") - vpp, _ := container.newVppInstance(container.AllocatedCpus, sessionConfig) - s.AssertNil(vpp.Start()) - - idx, err := vpp.createAfPacket(s.GetInterfaceByName(ServerInterface)) - s.AssertNil(err, fmt.Sprint(err)) - s.AssertNotEqual(0, idx) - - idx, err = vpp.createAfPacket(s.GetInterfaceByName(ClientInterface)) - s.AssertNil(err, fmt.Sprint(err)) - s.AssertNotEqual(0, idx) - - container.Exec("chmod 777 -R %s", container.GetContainerWorkDir()) -} - -var _ = Describe("NsSuite", Ordered, ContinueOnFailure, func() { - var s NsSuite - BeforeAll(func() { - s.SetupSuite() - }) - BeforeEach(func() { - s.SetupTest() - }) - AfterAll(func() { - s.TearDownSuite() - }) - AfterEach(func() { - s.TearDownTest() - }) - - for filename, tests := range nsTests { - for _, test := range tests { - test := test - pc := reflect.ValueOf(test).Pointer() - funcValue := runtime.FuncForPC(pc) - testName := filename + "/" + strings.Split(funcValue.Name(), ".")[2] - It(testName, func(ctx SpecContext) { - s.Log(testName + ": BEGIN") - test(&s) - }, SpecTimeout(SuiteTimeout)) - } - } -}) - -var _ = Describe("NsSuiteSolo", Ordered, ContinueOnFailure, Serial, func() { - var s NsSuite - BeforeAll(func() { - s.SetupSuite() - }) - BeforeEach(func() { - s.SetupTest() - }) - AfterAll(func() { - s.TearDownSuite() - }) - AfterEach(func() { - s.TearDownTest() - }) - - for filename, tests := range nsSoloTests { - for _, test := range tests { - test := test - pc := reflect.ValueOf(test).Pointer() - funcValue := runtime.FuncForPC(pc) - testName := filename + "/" + strings.Split(funcValue.Name(), ".")[2] - It(testName, Label("SOLO"), func(ctx SpecContext) { - s.Log(testName + ": BEGIN") - test(&s) - }, SpecTimeout(SuiteTimeout)) - } - } -}) diff --git a/extras/hs-test/infra/utils.go b/extras/hs-test/infra/utils.go index 25d8519cb8a..ee528370280 100644 --- a/extras/hs-test/infra/utils.go +++ b/extras/hs-test/infra/utils.go @@ -254,6 +254,7 @@ func (s *HstSuite) StartWget(finished chan error, server_ip, port, query, netNs netNs) s.Log(cmd) o, err := cmd.CombinedOutput() + s.Log(string(o)) if err != nil { finished <- fmt.Errorf("wget error: '%v\n\n%s'", err, o) return diff --git a/extras/hs-test/nginx_test.go b/extras/hs-test/nginx_test.go index 07faf2a3262..7a6f5b3c182 100644 --- a/extras/hs-test/nginx_test.go +++ b/extras/hs-test/nginx_test.go @@ -12,13 +12,15 @@ import ( func init() { RegisterNoTopoTests(NginxHttp3Test, NginxAsServerTest, NginxPerfCpsTest, NginxPerfRpsTest, NginxPerfWrkTest, NginxPerfCpsInterruptModeTest, NginxPerfRpsInterruptModeTest, NginxPerfWrkInterruptModeTest) + RegisterNoTopoSoloTests(NginxPerfRpsMultiThreadTest, NginxPerfCpsMultiThreadTest) } func NginxHttp3Test(s *NoTopoSuite) { query := "index.html" nginxCont := s.GetContainerByName(NginxHttp3ContainerName) + nginxCont.Create() - s.CreateNginxConfig(nginxCont) + s.CreateNginxHttp3Config(nginxCont) nginxCont.Start() vpp := s.GetContainerByName("vpp").VppInstance @@ -43,7 +45,10 @@ func NginxAsServerTest(s *NoTopoSuite) { finished := make(chan error, 1) nginxCont := s.GetContainerByName("nginx") - nginxCont.Run() + nginxCont.Create() + s.CreateNginxConfig(nginxCont, false) + s.AddNginxVclConfig(false) + nginxCont.Start() vpp := s.GetContainerByName("vpp").VppInstance vpp.WaitForApp("nginx-", 5) @@ -68,7 +73,7 @@ func parseString(s, pattern string) string { return "" } -func runNginxPerf(s *NoTopoSuite, mode, ab_or_wrk string) error { +func runNginxPerf(s *NoTopoSuite, mode, ab_or_wrk string, multiThreadWorkers bool) error { nRequests := 1000000 nClients := 1000 @@ -77,7 +82,10 @@ func runNginxPerf(s *NoTopoSuite, mode, ab_or_wrk string) error { vpp := s.GetContainerByName("vpp").VppInstance nginxCont := s.GetContainerByName(SingleTopoContainerNginx) - nginxCont.Run() + nginxCont.Create() + s.AddNginxVclConfig(multiThreadWorkers) + s.CreateNginxConfig(nginxCont, multiThreadWorkers) + nginxCont.Start() vpp.WaitForApp("nginx-", 5) if ab_or_wrk == "ab" { @@ -92,6 +100,7 @@ func runNginxPerf(s *NoTopoSuite, mode, ab_or_wrk string) error { args += " -r" args += " http://" + serverAddress + ":80/64B.json" abCont.ExtraRunningArgs = args + s.Log("Test might take up to 2 minutes to finish. Please wait") abCont.Run() o, err := abCont.GetOutput() rps := parseString(o, "Requests per second:") @@ -117,18 +126,24 @@ func NginxPerfCpsInterruptModeTest(s *NoTopoSuite) { NginxPerfCpsTest(s) } -// unstable with multiple workers +func NginxPerfCpsMultiThreadTest(s *NoTopoSuite) { + s.AssertNil(runNginxPerf(s, "cps", "ab", true)) +} + func NginxPerfCpsTest(s *NoTopoSuite) { - s.SkipIfMultiWorker() - s.AssertNil(runNginxPerf(s, "cps", "ab")) + s.AssertNil(runNginxPerf(s, "cps", "ab", false)) } func NginxPerfRpsInterruptModeTest(s *NoTopoSuite) { NginxPerfRpsTest(s) } +func NginxPerfRpsMultiThreadTest(s *NoTopoSuite) { + s.AssertNil(runNginxPerf(s, "rps", "ab", true)) +} + func NginxPerfRpsTest(s *NoTopoSuite) { - s.AssertNil(runNginxPerf(s, "rps", "ab")) + s.AssertNil(runNginxPerf(s, "rps", "ab", false)) } func NginxPerfWrkInterruptModeTest(s *NoTopoSuite) { @@ -136,5 +151,5 @@ func NginxPerfWrkInterruptModeTest(s *NoTopoSuite) { } func NginxPerfWrkTest(s *NoTopoSuite) { - s.AssertNil(runNginxPerf(s, "", "wrk")) + s.AssertNil(runNginxPerf(s, "", "wrk", false)) } diff --git a/extras/hs-test/proxy_test.go b/extras/hs-test/proxy_test.go index 758064424a8..b914242d34f 100644 --- a/extras/hs-test/proxy_test.go +++ b/extras/hs-test/proxy_test.go @@ -10,6 +10,7 @@ func init() { RegisterVppProxyTests(VppProxyHttpGetTcpTest, VppProxyHttpGetTlsTest, VppProxyHttpPutTcpTest, VppProxyHttpPutTlsTest) RegisterEnvoyProxyTests(EnvoyProxyHttpGetTcpTest, EnvoyProxyHttpPutTcpTest) RegisterNginxProxyTests(NginxMirroringTest) + RegisterNginxProxySoloTests(MirrorMultiThreadTest) } func configureVppProxy(s *VppProxySuite, proto string, proxyPort uint16) { @@ -63,9 +64,22 @@ func EnvoyProxyHttpPutTcpTest(s *EnvoyProxySuite) { s.CurlUploadResource(uri, CurlContainerTestFile) } -// broken when CPUS > 1 +func MirrorMultiThreadTest(s *NginxProxySuite) { + nginxMirroring(s, true) +} + func NginxMirroringTest(s *NginxProxySuite) { - s.SkipIfMultiWorker() + nginxMirroring(s, false) +} + +func nginxMirroring(s *NginxProxySuite, multiThreadWorkers bool) { + nginxProxyContainer := s.GetContainerByName(NginxProxyContainerName) + vpp := s.GetContainerByName(VppContainerName).VppInstance + + s.AddVclConfig(nginxProxyContainer, multiThreadWorkers) + s.CreateNginxProxyConfig(nginxProxyContainer, multiThreadWorkers) + nginxProxyContainer.Start() + vpp.WaitForApp("nginx-", 5) uri := fmt.Sprintf("http://%s:%d/httpTestFile", s.ProxyAddr(), s.ProxyPort()) s.CurlDownloadResource(uri) } diff --git a/extras/hs-test/resources/nginx/nginx.conf b/extras/hs-test/resources/nginx/nginx.conf index 99073aab1ab..956a13138eb 100644 --- a/extras/hs-test/resources/nginx/nginx.conf +++ b/extras/hs-test/resources/nginx/nginx.conf @@ -1,6 +1,6 @@ master_process on; worker_rlimit_nofile 10240; -worker_processes 2; +worker_processes {{.Workers}}; daemon off; events { diff --git a/extras/hs-test/resources/nginx/nginx_proxy_mirroring.conf b/extras/hs-test/resources/nginx/nginx_proxy_mirroring.conf index 7f6b09c6050..d834a27288a 100644 --- a/extras/hs-test/resources/nginx/nginx_proxy_mirroring.conf +++ b/extras/hs-test/resources/nginx/nginx_proxy_mirroring.conf @@ -1,5 +1,5 @@ master_process on; -worker_processes 4; +worker_processes {{.Workers}}; worker_rlimit_nofile 102400; daemon off; diff --git a/extras/hs-test/resources/nginx/vcl.conf b/extras/hs-test/resources/nginx/vcl.conf index cfcd5d2e959..27699248bcf 100644 --- a/extras/hs-test/resources/nginx/vcl.conf +++ b/extras/hs-test/resources/nginx/vcl.conf @@ -5,7 +5,6 @@ vcl { rx-fifo-size 4000000 tx-fifo-size 4000000 event-queue-size 100000 - use-mq-eventfd app-socket-api /tmp/nginx/var/run/app_ns_sockets/default } diff --git a/extras/hs-test/script/build_hst.sh b/extras/hs-test/script/build_hst.sh index 861eca5eb5f..a072abdb29d 100755 --- a/extras/hs-test/script/build_hst.sh +++ b/extras/hs-test/script/build_hst.sh @@ -85,6 +85,7 @@ docker_build hs-test/vpp vpp docker_build hs-test/nginx-ldp nginx docker_build hs-test/nginx-server nginx-server docker_build hs-test/curl curl +docker_build hs-test/envoy envoy docker_build hs-test/nginx-http3 nginx-http3 # cleanup detached images diff --git a/extras/hs-test/topo-containers/envoyProxy.yaml b/extras/hs-test/topo-containers/envoyProxy.yaml index 92dd9b93c47..cbb00d868db 100644 --- a/extras/hs-test/topo-containers/envoyProxy.yaml +++ b/extras/hs-test/topo-containers/envoyProxy.yaml @@ -20,9 +20,8 @@ containers: - name: "ENVOY_UID" value: "0" - name: "VCL_CONFIG" - value: "/tmp/vcl.conf" - image: "envoyproxy/envoy-contrib:v1.30-latest" - extra-args: "--log-format [%t][%l][%g:%#]%_ --concurrency 2 -c /etc/envoy/envoy.yaml" + value: /tmp/vcl.conf + image: "hs-test/envoy" is-optional: true - name: "nginx-server" volumes: diff --git a/extras/hs-test/topo-containers/ns.yaml b/extras/hs-test/topo-containers/ns.yaml deleted file mode 100644 index 3de5af59569..00000000000 --- a/extras/hs-test/topo-containers/ns.yaml +++ /dev/null @@ -1,27 +0,0 @@ ---- -volumes: - - volume: &shared-vol - host-dir: "$HST_VOLUME_DIR/shared-vol" - -# $HST_DIR will be replaced during runtime by path to hs-test directory -containers: - - name: "vpp" - volumes: - - <<: *shared-vol - container-dir: "/tmp/vpp" - is-default-work-dir: true - - name: "envoy" - volumes: - - <<: *shared-vol - container-dir: "/tmp/vpp-envoy" - is-default-work-dir: true - - host-dir: "$HST_DIR/resources/envoy" - container-dir: "/tmp" - vars: - - name: "ENVOY_UID" - value: "0" - - name: "VCL_CONFIG" - value: "/tmp/vcl.conf" - image: "envoyproxy/envoy-contrib:v1.30-latest" - extra-args: "--concurrency 2 -c /etc/envoy/envoy.yaml" - is-optional: true |