mirror of
https://github.com/tailscale/tailscale.git
synced 2025-04-08 17:24:57 +00:00
cmd/containerboot: speed up tests
The test suite had grown to about 20s on my machine, but it doesn't do much taxing work so was a good candidate to parallelise. Now runs in under 2s on my machine. Updates #cleanup Change-Id: I2fcc6be9ca226c74c0cb6c906778846e959492e4 Signed-off-by: Tom Proctor <tomhjp@users.noreply.github.com>
This commit is contained in:
parent
02ad21717f
commit
2bf51e5bc5
File diff suppressed because it is too large
Load Diff
@ -35,6 +35,9 @@ import (
|
||||
|
||||
const tailscaleTunInterface = "tailscale0"
|
||||
|
||||
// Modified using a build flag to speed up tests.
|
||||
var testSleepDuration string
|
||||
|
||||
// This file contains functionality to run containerboot as a proxy that can
|
||||
// route cluster traffic to one or more tailnet targets, based on portmapping
|
||||
// rules read from a configfile. Currently (9/2024) this is only used for the
|
||||
@ -149,8 +152,13 @@ func (ep *egressProxy) configure(opts egressProxyRunOpts) {
|
||||
ep.podIPv4 = opts.podIPv4
|
||||
ep.tailnetAddrs = opts.tailnetAddrs
|
||||
ep.client = &http.Client{} // default HTTP client
|
||||
ep.shortSleep = time.Second
|
||||
ep.longSleep = time.Second * 10
|
||||
sleepDuration := time.Second
|
||||
if d, err := time.ParseDuration(testSleepDuration); err == nil && d > 0 {
|
||||
log.Printf("using test sleep duration %v", d)
|
||||
sleepDuration = d
|
||||
}
|
||||
ep.shortSleep = sleepDuration
|
||||
ep.longSleep = sleepDuration * 10
|
||||
}
|
||||
|
||||
// sync triggers an egress proxy config resync. The resync calculates the diff between config and status to determine if
|
||||
|
@ -35,11 +35,11 @@ func startTailscaled(ctx context.Context, cfg *settings) (*tailscale.LocalClient
|
||||
}
|
||||
log.Printf("Starting tailscaled")
|
||||
if err := cmd.Start(); err != nil {
|
||||
return nil, nil, fmt.Errorf("starting tailscaled failed: %v", err)
|
||||
return nil, nil, fmt.Errorf("starting tailscaled failed: %w", err)
|
||||
}
|
||||
|
||||
// Wait for the socket file to appear, otherwise API ops will racily fail.
|
||||
log.Printf("Waiting for tailscaled socket")
|
||||
log.Printf("Waiting for tailscaled socket at %s", cfg.Socket)
|
||||
for {
|
||||
if ctx.Err() != nil {
|
||||
return nil, nil, errors.New("timed out waiting for tailscaled socket")
|
||||
|
Loading…
x
Reference in New Issue
Block a user