tailscale/.github/workflows
Brad Fitzpatrick e2fa9ff140 ssh/tailssh: speed up SSH integration tests
Parallelize the SSH integration tests across OS targets and reduce
per-container overhead:

- CI: use GitHub Actions matrix strategy to run all 4 OS containers
  (ubuntu:focal, ubuntu:jammy, ubuntu:noble, alpine:latest) in parallel
  instead of sequentially (~4x wall-clock improvement)

- Makefile: run docker builds in parallel for local dev too

- Dockerfile: consolidate ~20 separate RUN commands into 5 (one per
  test phase), eliminating Docker layer overhead. Combine test binary
  invocations where no state mutation is needed between them. Fix a bug
  where TestDoDropPrivileges was silently not being run (was passed as a
  second positional arg to -test.run instead of using regex alternation).

- TestMain: replace tail -F + 2s sleep with synchronous log read,
  eliminating 2s overhead per test binary invocation. Set debugTest once
  in TestMain instead of redundantly in each test function.

- session.read(): close channel on EOF so non-shell tests return
  immediately instead of waiting for the 1s silence timeout.

Updates #19244

Change-Id: I2cc8588964fbce0dd7b654fb94e7ff33440b8584
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2026-04-13 14:18:27 -07:00
..
checklocks.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
cigocacher.yml .github: Bump actions/download-artifact from 8.0.0 to 8.0.1 2026-03-27 14:55:59 +00:00
codeql-analysis.yml .github: Bump github/codeql-action from 4.32.6 to 4.34.1 2026-03-23 15:53:31 +00:00
docker-base.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
docker-file-build.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
flakehub-publish-tagged.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
golangci-lint.yml go.toolchain.branch: switch to Go 1.26 2026-03-04 21:57:05 -08:00
govulncheck.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
installer.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
kubemanifests.yaml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
natlab-integrationtest.yml .github/workflows: enable natlab in CI 2026-03-04 15:02:07 -08:00
pin-github-actions.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00
request-dataplane-review.yml .github: Bump actions/create-github-app-token from 2.2.1 to 3.0.0 (#19003) 2026-03-26 10:08:56 -04:00
ssh-integrationtest.yml ssh/tailssh: speed up SSH integration tests 2026-04-13 14:18:27 -07:00
test.yml .github, tool/listpkgs: automatically find tests which use tstest.RequireRoot 2026-04-10 16:22:05 -07:00
update-flake.yml .github: Bump actions/create-github-app-token from 2.2.1 to 3.0.0 (#19003) 2026-03-26 10:08:56 -04:00
update-webclient-prebuilt.yml .github: Bump actions/create-github-app-token from 2.2.1 to 3.0.0 (#19003) 2026-03-26 10:08:56 -04:00
vet.yml cmd/vet: add subtestnames analyzer; fix all existing violations 2026-04-05 15:52:51 -07:00
webclient.yml .github: bump actions/checkout from 6.0.1 to 6.0.2 2026-02-23 08:44:40 -07:00