diff --git a/hack/run-e2e.sh b/hack/run-e2e.sh index d51d0ce..a574b6d 100755 --- a/hack/run-e2e.sh +++ b/hack/run-e2e.sh @@ -26,7 +26,7 @@ frpsPath=${ROOT}/bin/frps if [ "${FRPS_PATH}" ]; then frpsPath="${FRPS_PATH}" fi -concurrency="12" +concurrency="16" if [ "${CONCURRENCY}" ]; then concurrency="${CONCURRENCY}" fi diff --git a/test/e2e/framework/framework.go b/test/e2e/framework/framework.go index f8b8aa0..e0be5af 100644 --- a/test/e2e/framework/framework.go +++ b/test/e2e/framework/framework.go @@ -67,7 +67,7 @@ func NewDefaultFramework() *Framework { TotalParallelNode: suiteConfig.ParallelTotal, CurrentNodeIndex: suiteConfig.ParallelProcess, FromPortIndex: 10000, - ToPortIndex: 60000, + ToPortIndex: 30000, } return NewFramework(options) } diff --git a/test/e2e/framework/process.go b/test/e2e/framework/process.go index 139753e..ae89e82 100644 --- a/test/e2e/framework/process.go +++ b/test/e2e/framework/process.go @@ -42,7 +42,7 @@ func (f *Framework) RunProcesses(serverTemplates []string, clientTemplates []str ExpectNoError(err) time.Sleep(500 * time.Millisecond) } - time.Sleep(1 * time.Second) + time.Sleep(2 * time.Second) currentClientProcesses := make([]*process.Process, 0, len(clientTemplates)) for i := range clientTemplates { @@ -76,7 +76,7 @@ func (f *Framework) RunFrps(args ...string) (*process.Process, string, error) { return p, p.StdOutput(), err } // sleep for a while to get std output - time.Sleep(time.Second) + time.Sleep(2 * time.Second) return p, p.StdOutput(), nil } @@ -87,7 +87,7 @@ func (f *Framework) RunFrpc(args ...string) (*process.Process, string, error) { if err != nil { return p, p.StdOutput(), err } - time.Sleep(time.Second) + time.Sleep(2 * time.Second) return p, p.StdOutput(), nil } diff --git a/test/e2e/legacy/basic/server.go b/test/e2e/legacy/basic/server.go index f3c2a22..ca6717c 100644 --- a/test/e2e/legacy/basic/server.go +++ b/test/e2e/legacy/basic/server.go @@ -22,11 +22,11 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { clientConf := consts.LegacyDefaultClientConfig serverConf += ` - allow_ports = 20000-25000,25002,30000-50000 + allow_ports = 10000-11000,11002,12000-13000 ` - tcpPortName := port.GenName("TCP", port.WithRangePorts(20000, 25000)) - udpPortName := port.GenName("UDP", port.WithRangePorts(30000, 50000)) + tcpPortName := port.GenName("TCP", port.WithRangePorts(10000, 11000)) + udpPortName := port.GenName("UDP", port.WithRangePorts(12000, 13000)) clientConf += fmt.Sprintf(` [tcp-allowded-in-range] type = tcp @@ -37,7 +37,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { [tcp-port-not-allowed] type = tcp local_port = {{ .%s }} - remote_port = 25001 + remote_port = 11001 `, framework.TCPEchoServerPort) clientConf += fmt.Sprintf(` [tcp-port-unavailable] @@ -55,7 +55,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { [udp-port-not-allowed] type = udp local_port = {{ .%s }} - remote_port = 25003 + remote_port = 11003 `, framework.UDPEchoServerPort) f.RunProcesses([]string{serverConf}, []string{clientConf}) @@ -65,7 +65,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { framework.NewRequestExpect(f).PortName(tcpPortName).Ensure() // Not Allowed - framework.NewRequestExpect(f).Port(25001).ExpectError(true).Ensure() + framework.NewRequestExpect(f).Port(11001).ExpectError(true).Ensure() // Unavailable, already bind by frps framework.NewRequestExpect(f).PortName(consts.PortServerName).ExpectError(true).Ensure() @@ -76,7 +76,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { // Not Allowed framework.NewRequestExpect(f).RequestModify(func(r *request.Request) { - r.UDP().Port(25003) + r.UDP().Port(11003) }).ExpectError(true).Ensure() }) diff --git a/test/e2e/pkg/port/port.go b/test/e2e/pkg/port/port.go index b9bcccf..49cc9a6 100644 --- a/test/e2e/pkg/port/port.go +++ b/test/e2e/pkg/port/port.go @@ -79,6 +79,7 @@ func (pa *Allocator) GetByName(portName string) int { udpConn.Close() pa.used.Insert(port) + pa.reserved.Delete(port) return port } return 0 diff --git a/test/e2e/v1/basic/server.go b/test/e2e/v1/basic/server.go index eed1dda..f2f4e0a 100644 --- a/test/e2e/v1/basic/server.go +++ b/test/e2e/v1/basic/server.go @@ -23,14 +23,14 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { serverConf += ` allowPorts = [ - { start = 20000, end = 25000 }, - { single = 25002 }, - { start = 30000, end = 50000 }, + { start = 10000, end = 11000 }, + { single = 11002 }, + { start = 12000, end = 13000 }, ] ` - tcpPortName := port.GenName("TCP", port.WithRangePorts(20000, 25000)) - udpPortName := port.GenName("UDP", port.WithRangePorts(30000, 50000)) + tcpPortName := port.GenName("TCP", port.WithRangePorts(10000, 11000)) + udpPortName := port.GenName("UDP", port.WithRangePorts(12000, 13000)) clientConf += fmt.Sprintf(` [[proxies]] name = "tcp-allowded-in-range" @@ -43,7 +43,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { name = "tcp-port-not-allowed" type = "tcp" localPort = {{ .%s }} - remotePort = 25001 + remotePort = 11001 `, framework.TCPEchoServerPort) clientConf += fmt.Sprintf(` [[proxies]] @@ -64,7 +64,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { name = "udp-port-not-allowed" type = "udp" localPort = {{ .%s }} - remotePort = 25003 + remotePort = 11003 `, framework.UDPEchoServerPort) f.RunProcesses([]string{serverConf}, []string{clientConf}) @@ -74,7 +74,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { framework.NewRequestExpect(f).PortName(tcpPortName).Ensure() // Not Allowed - framework.NewRequestExpect(f).Port(25001).ExpectError(true).Ensure() + framework.NewRequestExpect(f).Port(11001).ExpectError(true).Ensure() // Unavailable, already bind by frps framework.NewRequestExpect(f).PortName(consts.PortServerName).ExpectError(true).Ensure() @@ -85,7 +85,7 @@ var _ = ginkgo.Describe("[Feature: Server Manager]", func() { // Not Allowed framework.NewRequestExpect(f).RequestModify(func(r *request.Request) { - r.UDP().Port(25003) + r.UDP().Port(11003) }).ExpectError(true).Ensure() })