1
0
mirror of https://github.com/juanfont/headscale.git synced 2026-02-23 13:50:36 +01:00
juanfont.headscale/hscontrol
Kristoffer Dalby 1e4fc3f179 hscontrol: add tests for deleting users with tagged nodes
Test the tagged-node-survives-user-deletion scenario at two layers:

DB layer (users_test.go):
- success_user_only_has_tagged_nodes: tagged nodes with nil
  user_id do not block user deletion and survive it
- error_user_has_tagged_and_owned_nodes: user-owned nodes
  still block deletion even when tagged nodes coexist

App layer (grpcv1_test.go):
- TestDeleteUser_TaggedNodeSurvives: full registration flow
  with tagged PreAuthKey verifies nil UserID after registration,
  absence from nodesByUser index, user deletion succeeds, and
  tagged node remains in global node list

Also update auth_tags_test.go assertions to expect nil UserID
on tagged nodes, consistent with the new invariant.

Updates #3077
2026-02-20 21:51:00 +01:00
..
assets editorconfig: add basic editor config 2025-12-16 10:12:36 +01:00
capver capver: regenerate from docker tags 2026-02-07 08:23:51 +01:00
db hscontrol: add tests for deleting users with tagged nodes 2026-02-20 21:51:00 +01:00
derp all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
dns all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
mapper all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
policy policy/v2: add policy unmarshal tests for bracketed IPv6 2026-02-20 21:49:21 +01:00
routes all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
state hscontrol: enforce that tagged nodes never have user_id 2026-02-20 21:51:00 +01:00
templates Link to headscale.net for docs 2026-01-16 14:54:04 +01:00
types hscontrol/types: regenerate types_view.go 2026-02-20 21:51:00 +01:00
util all: apply golangci-lint 2.9.0 fixes 2026-02-19 08:21:23 +01:00
app.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
auth_tags_test.go hscontrol: add tests for deleting users with tagged nodes 2026-02-20 21:51:00 +01:00
auth_test.go node: implement disable key expiry via CLI and API 2026-02-20 21:49:55 +01:00
auth.go node: implement disable key expiry via CLI and API 2026-02-20 21:49:55 +01:00
debug.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
grpcv1_test.go hscontrol: add tests for deleting users with tagged nodes 2026-02-20 21:51:00 +01:00
grpcv1.go node: implement disable key expiry via CLI and API 2026-02-20 21:49:55 +01:00
handlers.go all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
metrics.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
noise.go all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
oidc_template_test.go make tags first class node owner (#2885) 2025-12-02 12:01:25 +01:00
oidc_test.go oidc: make email verification configurable 2025-12-18 11:42:32 +00:00
oidc.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
platform_config.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
poll.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
tailsql.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
templates_consistency_test.go Link to headscale.net for docs 2026-01-16 14:54:04 +01:00