headscale/hscontrol/db
Kristoffer Dalby f20bd0cf08 node: implement disable key expiry via CLI and API
Add --disable flag to "headscale nodes expire" CLI command and
disable_expiry field handling in the gRPC API to allow disabling
key expiry for nodes. When disabled, the node's expiry is set to
NULL and IsExpired() returns false.

The CLI follows the new grpcRunE/RunE/printOutput patterns
introduced in the recent CLI refactor.

Also fix NodeSetExpiry to persist directly to the database instead
of going through persistNodeToDB which omits the expiry field.

Fixes #2681

Co-authored-by: Marco Santos <me@marcopsantos.com>
2026-02-20 21:49:55 +01:00
..
sqliteconfig all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
testdata/sqlite db: use PolicyManager for RequestTags migration 2026-01-21 15:10:29 +01:00
api_key.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
api_key_test.go grpc: support expire/delete API keys by ID 2026-01-20 17:13:38 +01:00
db.go db: enforce strict version upgrade path 2026-02-19 08:21:23 +01:00
db_test.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
ephemeral_garbage_collector_test.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
ip.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
ip_test.go all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
node.go node: implement disable key expiry via CLI and API 2026-02-20 21:49:55 +01:00
node_test.go node: implement disable key expiry via CLI and API 2026-02-20 21:49:55 +01:00
policy.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
preauth_keys.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
preauth_keys_test.go all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
schema.sql db: enforce strict version upgrade path 2026-02-19 08:21:23 +01:00
suite_test.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
text_serialiser.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
user_update_test.go hscontrol: use Updates() instead of Save() for partial updates 2025-11-11 12:47:48 -06:00
users.go all: fix golangci-lint issues (#3064) 2026-02-06 21:45:32 +01:00
users_test.go all: apply golangci-lint 2.9.0 fixes 2026-02-19 08:21:23 +01:00
versioncheck.go db: fix database_versions table creation for PostgreSQL 2026-02-19 08:21:23 +01:00
versioncheck_test.go db: enforce strict version upgrade path 2026-02-19 08:21:23 +01:00