rcourtman
2bc48774c2
Let deleted hosts re-enroll with a freshly generated token
...
Deleting a host writes a machine-id-keyed removal block that rejected
every future report with HTTP 400, and the error pointed at an Allow
reconnect control that is not wired into the UI, leaving the machine
permanently unable to enroll without changing its machine-id (#1581 ).
Three holes made the block effectively immortal:
- The 24h TTL sweep only iterated the in-memory removal maps, which
reset on every restart, so persisted blocks never expired. Sweep the
persisted entries by their own RemovedAt for host agents, Docker
hosts, and Kubernetes clusters.
- AllowHostAgentReenroll (and the Docker and Kubernetes equivalents)
bailed out when the ID was missing from the in-memory map, so even
the API escape hatch stopped clearing persisted blocks after a
restart. Check and clear the persisted store independently.
- A report presenting an API token created after the removal is
explicit re-add intent (the user generated a fresh install command),
so clear the block and accept it. A still-running old agent keeps
presenting its pre-removal token and stays blocked.
Also reword the rejection to describe the two working recovery paths
instead of the unwired Settings control.
2026-07-16 09:50:04 +01:00
..
2026-03-18 16:06:30 +00:00
2026-06-29 18:03:46 +01:00
2026-06-29 18:03:46 +01:00
2026-07-09 21:29:45 +01:00
2026-07-16 09:26:53 +01:00
2025-11-26 23:44:36 +00:00
2025-10-20 15:13:37 +00:00
2026-02-07 22:05:55 +00:00
2026-03-18 16:06:30 +00:00
2026-07-16 09:50:04 +01:00
2026-06-02 14:52:47 +01:00
2026-06-04 14:07:14 +01:00
2026-06-04 14:07:14 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-07-11 18:25:17 +01:00
2026-07-11 18:25:17 +01:00
2025-12-01 17:33:36 +00:00
2026-03-18 16:06:30 +00:00
2026-06-26 11:35:12 +01:00
2026-06-26 11:35:12 +01:00
2026-04-01 19:14:12 +01:00
2026-05-05 14:59:29 +01:00
2026-07-10 00:05:22 +01:00
2026-07-10 00:05:22 +01:00
2026-06-25 20:30:38 +01:00
2026-06-25 20:30:38 +01:00
2026-06-04 10:35:35 +01:00
2026-06-04 10:35:35 +01:00
2026-07-14 12:00:57 +01:00
2026-01-01 22:29:15 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2025-10-14 16:13:53 +00:00
2025-11-12 09:47:02 +00:00
2026-07-02 23:52:02 +01:00
2026-07-02 23:52:02 +01:00
2026-07-10 00:14:01 +01:00
2026-05-19 22:37:55 +01:00
2026-01-28 16:52:35 +00:00
2026-07-13 09:41:11 +01:00
2026-05-05 14:59:29 +01:00
2026-04-22 09:22:46 +01:00
2026-06-04 14:07:14 +01:00
2026-06-04 14:07:14 +01:00
2026-06-27 17:41:00 +01:00
2026-06-27 17:41:00 +01:00
2026-04-01 19:14:12 +01:00
2026-05-05 14:59:29 +01:00
2026-04-01 18:38:42 +01:00
2026-06-04 14:07:14 +01:00
2026-03-18 16:06:30 +00:00
2026-07-03 10:52:18 +01:00
2026-07-03 10:43:28 +01:00
2026-07-07 09:46:51 +01:00
2025-11-26 23:44:36 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-07-14 17:03:14 +01:00
2026-07-16 09:50:04 +01:00
2026-04-11 22:46:34 +01:00
2026-02-04 19:49:52 +00:00
2026-02-04 19:49:52 +00:00
2026-04-12 09:41:29 +01:00
2026-06-11 19:42:40 +01:00
2026-06-11 19:42:40 +01:00
2026-06-10 09:19:51 +01:00
2026-04-01 19:00:48 +01:00
2026-06-09 21:42:21 +01:00
2026-06-12 19:19:16 +01:00
2025-12-01 21:18:33 +00:00
2025-11-27 09:16:53 +00:00
2026-02-04 19:35:19 +00:00
2026-05-15 21:27:39 +01:00
2026-05-15 21:27:39 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-06-03 12:29:37 +01:00
2026-06-11 15:48:00 +01:00
2026-06-10 21:25:02 +01:00
2026-06-09 21:42:21 +01:00
2026-06-09 21:42:21 +01:00
2026-01-22 13:39:06 +00:00
2026-06-04 09:11:07 +01:00
2026-07-16 09:50:04 +01:00
2026-07-11 18:28:28 +01:00
2026-06-11 19:53:45 +01:00
2026-07-11 18:28:28 +01:00
2026-05-05 14:19:50 +01:00
2026-07-09 20:28:52 +01:00
2026-07-16 09:38:53 +01:00
2026-05-05 16:25:00 +01:00
2026-04-19 11:42:53 +01:00
2026-04-19 11:42:53 +01:00
2026-05-01 20:28:12 +01:00
2026-06-04 09:11:07 +01:00
2025-11-18 22:57:20 +00:00
2026-06-11 10:23:49 +01:00
2026-06-23 17:31:37 +01:00
2026-07-15 17:55:26 +01:00
2026-07-02 23:52:02 +01:00
2026-05-13 22:18:47 +01:00
2025-10-20 15:13:38 +00:00
2026-06-14 11:07:47 +01:00
2026-06-30 09:43:33 +01:00
2026-07-16 09:50:04 +01:00
2026-07-03 10:52:18 +01:00
2026-04-01 10:04:30 +01:00
2026-05-01 20:28:12 +01:00
2026-04-11 14:51:10 +01:00
2026-06-09 21:42:21 +01:00
2026-06-11 13:12:59 +01:00
2026-05-25 20:35:58 +01:00
2026-07-12 02:53:01 +01:00
2026-05-13 17:05:03 +01:00
2026-01-04 10:29:40 +00:00
2026-06-11 10:57:22 +01:00
2026-05-08 19:53:03 +01:00
2026-06-14 09:55:56 +01:00
2026-07-03 10:43:28 +01:00
2026-04-01 11:51:19 +01:00
2026-07-16 09:26:53 +01:00
2026-03-18 16:06:30 +00:00
2026-06-11 10:57:22 +01:00
2026-06-10 16:19:24 +01:00
2026-06-10 09:19:51 +01:00
2026-04-01 19:31:50 +01:00
2026-05-13 19:00:02 +01:00
2026-04-01 19:14:12 +01:00
2026-04-01 11:51:19 +01:00
2026-06-10 16:20:35 +01:00
2026-06-10 16:20:35 +01:00
2026-07-11 10:24:45 +01:00
2026-07-13 09:41:11 +01:00
2026-04-01 20:41:56 +01:00
2026-04-21 14:46:23 +01:00
2026-04-21 14:46:23 +01:00
2026-06-04 14:07:14 +01:00
2026-06-04 14:07:14 +01:00
2026-03-18 16:06:30 +00:00
2026-06-04 14:07:14 +01:00
2026-06-11 09:47:42 +01:00
2026-07-11 10:24:45 +01:00
2026-01-04 10:29:40 +00:00
2026-03-18 16:06:30 +00:00
2026-06-04 09:00:30 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-06-04 10:27:59 +01:00
2026-05-17 18:45:24 +01:00
2026-01-05 23:34:33 +00:00
2026-03-18 16:06:30 +00:00
2026-06-11 20:29:13 +01:00
2026-03-18 16:06:30 +00:00
2026-07-16 09:38:53 +01:00
2026-05-05 12:59:59 +01:00
2026-04-11 22:46:34 +01:00
2026-07-07 20:37:18 +01:00
2026-04-01 10:04:30 +01:00
2026-06-27 17:41:00 +01:00
2026-06-27 17:41:00 +01:00
2026-04-11 22:46:34 +01:00
2026-02-07 22:05:55 +00:00
2026-01-14 12:26:18 +00:00
2026-07-14 14:48:30 +01:00
2026-07-14 14:48:30 +01:00
2026-06-10 09:19:51 +01:00
2026-07-16 09:26:53 +01:00
2026-03-18 16:06:30 +00:00
2026-07-13 11:04:09 +01:00
2026-07-13 11:04:09 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-04-01 23:33:43 +01:00
2026-07-16 09:38:53 +01:00
2026-03-26 22:58:27 +00:00
2026-03-31 15:42:16 +01:00
2026-05-28 11:39:30 +01:00
2026-05-28 11:39:30 +01:00
2026-07-03 09:05:12 +01:00
2026-07-16 09:26:53 +01:00
2026-07-16 09:26:53 +01:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-03-18 16:06:30 +00:00
2026-01-06 17:44:52 +00:00
2026-01-06 17:44:52 +00:00
2026-02-04 19:33:29 +00:00
2025-12-02 12:02:13 +00:00
2026-03-18 16:06:30 +00:00
2026-06-11 16:00:25 +01:00
2026-06-11 16:00:25 +01:00
2026-07-14 11:51:55 +01:00
2026-07-14 11:51:55 +01:00
2026-05-22 20:26:56 +01:00
2026-06-10 09:19:51 +01:00