• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ppker / tailscale
52%

Build:
DEFAULT BRANCH: main
Repo Added 03 Jun 2024 09:17PM UTC
Token cWBfKZL5KPl58kxKd1gTMWdhE1TMa02Yk regen
Build 10 Last
Files 782
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: SELECT
CHANGE BRANCH
x
Sync Branches
  • No branch selected
  • main

29 Jan 2025 07:35AM UTC coverage: 52.374% (+0.06%) from 52.315%
13028854803

Pull #49

github

web-flow
cmd/{k8s-operator,containerboot},kube: ensure egress ProxyGroup proxies don't terminate while cluster traffic is still routed to them (#14436)

cmd/{containerboot,k8s-operator},kube: add preshutdown hook for egress PG proxies

This change is part of work towards minimizing downtime during update
rollouts of egress ProxyGroup replicas.
This change:
- updates the containerboot health check logic to return Pod IP in headers,
if set
- always runs the health check for egress PG proxies
- updates ClusterIP Services created for PG egress endpoints to include
the health check endpoint
- implements preshutdown endpoint in proxies. The preshutdown endpoint
logic waits till, for all currently configured egress services, the ClusterIP
Service health check endpoint is no longer returned by the shutting-down Pod
(by looking at the new Pod IP header).
- ensures that kubelet is configured to call the preshutdown endpoint

This reduces the possibility that, as replicas are terminated during an update,
a replica gets terminated to which cluster traffic is still being routed via
the ClusterIP Service because kube proxy has not yet updated routig rules.
This is not a perfect check as in practice, it only checks that the kube
proxy on the node on which the proxy runs has updated rules. However, overall
this might be good enough.

The preshutdown logic is disabled if users have configured a custom health check
port via TS_LOCAL_ADDR_PORT env var. This change throws a warnign if so and in
future setting of that env var for operator proxies might be disallowed (as users
shouldn't need to configure this for a Pod directly).
This is backwards compatible with earlier proxy versions.

Updates tailscale/tailscale#14326


Signed-off-by: Irbe Krumina <irbe@tailscale.com>
Pull Request #49: [pull] main from tailscale:main

186 of 309 new or added lines in 10 files covered. (60.19%)

33 existing lines in 12 files now uncovered.

60131 of 114810 relevant lines covered (52.37%)

0.59 hits per line

Relevant lines Covered
Build:
Build:
114810 RELEVANT LINES 60131 COVERED LINES
0.59 HITS PER LINE
Source Files on main
  • Tree
  • List 782
  • Changed 33
  • Source Changed 0
  • Coverage Changed 33
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
13028854803 main cmd/{k8s-operator,containerboot},kube: ensure egress ProxyGroup proxies don't terminate while cluster traffic is still routed to them (#14436) cmd/{containerboot,k8s-operator},kube: add preshutdown hook for egress PG proxies This change is par... Pull #49 29 Jan 2025 10:11AM UTC web-flow github
52.37
13024366869 main .github: Bump actions/checkout from 3.6.0 to 4.2.2 (#14139) Bumps [actions/checkout](https://github.com/actions/checkout) from 3.6.0 to 4.2.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/acti... push 29 Jan 2025 04:15AM UTC web-flow github
52.31
13020354092 main go.toolchain.rev: bump from Go 1.23.3 to 1.23.5 (#14814) Update Go toolchain to 1.23.5. Updates #cleanup Signed-off-by: Mario Minardi <mario@tailscale.com> push 28 Jan 2025 10:28PM UTC web-flow github
52.39
13020353705 main go.toolchain.rev: bump from Go 1.23.3 to 1.23.5 (#14814) Update Go toolchain to 1.23.5. Updates #cleanup Signed-off-by: Mario Minardi <mario@tailscale.com> Pull #47 28 Jan 2025 10:18PM UTC web-flow github
52.32
13014492619 main tsnet: return from Accept when the listener gets closed Fixes #14808 Signed-off-by: Anton Tolchanov <anton@tailscale.com> push 28 Jan 2025 04:19PM UTC knyar github
52.38
13014491867 main tsnet: return from Accept when the listener gets closed Fixes #14808 Signed-off-by: Anton Tolchanov <anton@tailscale.com> Pull #46 28 Jan 2025 04:08PM UTC knyar github
52.35
13007956822 main tempfork/acme: fix TestSyncedToUpstream with Windows line endings Updates #10238 Change-Id: Ic85811c26 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com> Pull #45 28 Jan 2025 10:09AM UTC bradfitz github
52.27
12999167389 main types/persist: remove Persist.LegacyFrontendPrivateMachineKey It was a temporary migration over four years ago. It's no longer relevant. Updates #610 Change-Id: I1f00c9485 Signed-off-by: Brad Fitzpatrick <bradfitz... push 27 Jan 2025 10:17PM UTC bradfitz github
52.39
9362192637 main ipn/ipnlocal: periodically run auto-updates when "offline" (#12118) When the client is disconnected from control for any reason (typically just turned off), we should still attempt to update if auto-updates are enabled. This may help users who ... Pull #44 04 Jun 2024 06:23AM UTC web-flow github
50.91
9357177100 main ipn/ipnlocal: improve testability of random node selection In order to test the sticky last suggestion code, a test was written for LocalBackend.SuggestExitNode but it contains a random number generator which makes writing comprehensive tests ver... push 03 Jun 2024 09:17PM UTC sailorfrag github
51.03
See All Builds (10)

Badge your Repo: tailscale

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc