You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**Headplane now supports connecting to machines via SSH in the web browser.**
3
3
- This is an experimental feature and requires the `integration.agent` section to be set up in the config file.
4
4
- This is built on top of a Go binary that runs in WebAssembly, using Xterm.js for the terminal interface.
@@ -27,7 +27,9 @@
27
27
- `oidc.scope` can be set to specify custom scopes (defaults to `openid email profile`).
28
28
- `oidc.extra_params` can be set to pass arbitrary query parameters to the authorization endpoint (closes [#197](https://github.com/tale/headplane/issues/197)).
29
29
30
-
### 0.6.0 (May 25, 2025)
30
+
---
31
+
32
+
# 0.6.0 (May 25, 2025)
31
33
- Headplane 0.6.0 now requires **Headscale 0.26.0** or newer.
32
34
- Breaking API changes with routes and pre auth keys are now supported (closes [#204](https://github.com/tale/headplane/issues/204)).
33
35
- Older versions of Headscale will not work with Headplane.
@@ -52,26 +54,36 @@
52
54
- Tighten `proc` integration logic by checking for the `headscale serve` command (via #[195](https://github.com/tale/headplane/pull/195)).
53
55
- Strip newlines in the OIDC `client_secret_path` file if provided (closes [#199](https://github.com/tale/headplane/issues/199)).
54
56
55
-
### 0.5.10 (April 4, 2025)
57
+
---
58
+
59
+
# 0.5.10 (April 4, 2025)
56
60
- Fix an issue where other preferences to skip onboarding affected every user.
57
61
58
-
### 0.5.9 (April 3, 2025)
62
+
---
63
+
64
+
# 0.5.9 (April 3, 2025)
59
65
- Filter out empty users from the pre-auth keys page which could possibly cause a crash with unmigrated users.
60
66
- OIDC users cannot be renamed, so that functionality has been disabled in the menu options.
61
67
- Suppress hydration errors for any fields with a date in it.
62
68
63
-
### 0.5.8 (April 3, 2025)
69
+
---
70
+
71
+
# 0.5.8 (April 3, 2025)
64
72
- You can now skip the onboarding page if desired.
65
73
- Added the UI to change user roles in the dashboard.
66
74
- Fixed an issue where integrations would throw instead of loading properly.
67
75
- Loading the ACL page no longer spams blank updates to the Headscale database (fixes [#151](https://github.com/tale/headplane/issues/151))
68
76
- Automatically create `/var/lib/headplane` in the Docker container (fixes [#166](https://github.com/tale/headplane/issues/166))
69
77
- OIDC logout with `disable_api_key_login` set to true will not automatically login again (fixes [#149](https://github.com/tale/headplane/issues/149))
70
78
71
-
### 0.5.7 (April 2, 2025)
79
+
---
80
+
81
+
# 0.5.7 (April 2, 2025)
72
82
- Hotfix an issue where assets aren't served under `/admin` or the prefix.
73
83
74
-
### 0.5.6 (April 2, 2025)
84
+
---
85
+
86
+
# 0.5.6 (April 2, 2025)
75
87
76
88
### IMPORTANT
77
89
> **PLEASE** update to this ASAP if you were using Google OIDC. This is because previously *ANY* accounts have admin access to your Tailnet if they discover the URL that Headplane is being hosted on. This new change enforces that new logins by default are not given any permissions. You will need to re-login to Headplane to generate an owner account and prevent unauthorized access.
@@ -91,10 +103,14 @@ If there are no users, the first user will be given an `owner` role which cannot
91
103
- Unknown values in the Headplane config no longer cause a crash.
92
104
- Fixed an issue that caused copied commands to have a random space (fixes [#161](https://github.com/tale/headplane/issues/161))
93
105
94
-
### 0.5.5 (March 18, 2025)
106
+
---
107
+
108
+
# 0.5.5 (March 18, 2025)
95
109
- Hotfix an issue that caused Headplane to crash if no agents are available
96
110
97
-
### 0.5.4 (March 18, 2025)
111
+
---
112
+
113
+
# 0.5.4 (March 18, 2025)
98
114
- Fixed a typo in the Kubernetes documentation
99
115
- Handle split and global DNS records not being set in the Headscale config (via [#129](https://github.com/tale/headplane/pull/129))
100
116
- Stop checking for the `mkey:` prefix on machine registration (via [#131](https://github.com/tale/headplane/pull/131))
@@ -108,20 +124,28 @@ If there are no users, the first user will be given an `owner` role which cannot
108
124
- You can now pass in an OIDC client secret through `oidc.client_secret_path` in the config (fixes [#126](https://github.com/tale/headplane/issues/126))
109
125
- Correctly handle differently localized number inputs (fixes [#125](https://github.com/tale/headplane/issues/125))
110
126
111
-
### 0.5.3 (March 1, 2025)
127
+
---
128
+
129
+
# 0.5.3 (March 1, 2025)
112
130
- Fixed an issue where Headplane expected the incorrect config value for OIDC scope (fixes [#111](https://github.com/tale/headplane/issues/111))
113
131
- Added an ARIA indicator for when an input is required and fixed the confirm buttons (fixed [#116](https://github.com/tale/headplane/issues/116))
114
132
- Fixed a typo in the docs that defaulted to `/var/run/docker.dock` for the Docker socket (via [#112](https://github.com/tale/headplane/pull/112))
115
133
116
-
### 0.5.2 (February 28, 2025)
134
+
---
135
+
136
+
# 0.5.2 (February 28, 2025)
117
137
- Hotfixed an issue where the server bundle got reloaded on each request
118
138
119
-
### 0.5.1 (February 28, 2025)
139
+
---
140
+
141
+
# 0.5.1 (February 28, 2025)
120
142
- Fixed an issue that caused the entire server to crash on start
121
143
- Fixed the published semver tags from Docker
122
144
- Fixed the Kubernetes integration not reading the config
123
145
124
-
### 0.5 (February 27, 2025)
146
+
---
147
+
148
+
# 0.5 (February 27, 2025)
125
149
> This release is a major overhaul and contains a significant breaking change.
126
150
> We now use a config file for all settings instead of environment variables.
127
151
> Please see [config.example.yaml](/config.example.yaml) for the new format.
@@ -136,10 +160,14 @@ If there are no users, the first user will be given an `owner` role which cannot
136
160
- Settings that were previously shared like `public_url` or `oidc` are now separate within Headplane/Headscale. This is a rather large breaking change but fixes cases where a user may choose to utilize Headscale OIDC for Tailscale but not for the Headplane UI.
137
161
- Deprecate the `latest` tag in Docker for explicit versioning and `edge` for nightly builds.
138
162
139
-
### 0.4.1 (January 18, 2025)
163
+
---
164
+
165
+
# 0.4.1 (January 18, 2025)
140
166
- Fixed an urgent issue where the OIDC redirect URI would mismatch.
141
167
142
-
### 0.4.0 (January 18, 2025)
168
+
---
169
+
170
+
# 0.4.0 (January 18, 2025)
143
171
- Switched from Remix.run to React-Router
144
172
- Fixed an issue where some config fields were marked as required even if they weren't (fixes [#66](https://github.com/tale/headplane/issues/66))
145
173
- Fixed an issue where the toasts would be obscured by the footer (fixes [#68](https://github.com/tale/headplane/issues/68))
@@ -152,29 +180,41 @@ If there are no users, the first user will be given an `owner` role which cannot
152
180
- Reusable Pre-Auth Keys no longer show expired when used (PR [#88](https://github.com/tale/headplane/pull/88))
153
181
- Tweaked some CSS issues in the UI
154
182
155
-
### 0.3.9 (December 6, 2024)
183
+
---
184
+
185
+
# 0.3.9 (December 6, 2024)
156
186
- Fixed a race condition bug in the OIDC validation code
157
187
158
-
### 0.3.8 (December 6, 2024)
188
+
---
189
+
190
+
# 0.3.8 (December 6, 2024)
159
191
- Added a little HTML footer to show the login page and link to a donation page.
160
192
- Allow creating pre-auth keys that expire past 90 days (fixes [#58](https://github.com/tale/headplane/issues/58))
161
193
- Validates OIDC config and ignores validation if specified via variables or Headscale config (fixes [#63](https://github.com/tale/headplane/issues/63))
162
194
163
-
### 0.3.7 (November 30, 2024)
195
+
---
196
+
197
+
# 0.3.7 (November 30, 2024)
164
198
- Allow customizing the OIDC token endpoint auth method via `OIDC_CLIENT_SECRET_METHOD` (fixes [#57](https://github.com/tale/headplane/issues/57))
165
199
- Added a `/healthz` endpoint for Kubernetes and other health checks (fixes [#59](https://github.com/tale/headplane/issues/59))
166
200
- Allow `HEADSCALE_PUBLIC_URL` to be set if `HEADSCALE_URL` points to a different internal address (fixes [#60](https://github.com/tale/headplane/issues/60))
167
201
- Fixed an issue where the copy machine registration command had a typo.
168
202
169
-
### 0.3.6 (November 20, 2024)
203
+
---
204
+
205
+
# 0.3.6 (November 20, 2024)
170
206
- Fixed an issue where select dropdowns would not scroll (fixes [#53](https://github.com/tale/headplane/issues/53))
171
207
- Added a button to copy the machine registration command to the clipboard (fixes [#52](https://github.com/tale/headplane/issues/52))
172
208
173
-
### 0.3.5 (November 8, 2024)
209
+
---
210
+
211
+
# 0.3.5 (November 8, 2024)
174
212
- Quickfix a bug where environment variables are ignored on the server.
175
213
- Remove a nagging error about missing cookie since that happens when signed out.
176
214
177
-
### 0.3.4 (November 7, 2024)
215
+
---
216
+
217
+
# 0.3.4 (November 7, 2024)
178
218
- Clicking on the machine name in the users page now takes you to the machine overview page.
179
219
- Completely rebuilt the production server to work better outside of Docker and be lighter. More specifically, we've switched from the `@remix-run/serve` package to our own custom built server.
180
220
- Fixed a bunch of silly issues introduced by me not typechecking the codebase.
@@ -184,90 +224,120 @@ If there are no users, the first user will be given an `owner` role which cannot
184
224
- Added full support for Exit Nodes in the UI and redesigned the machines page (fixes [#36](https://github.com/tale/headplane/issues/36))
185
225
- Added a basic check to see if the API keys passed via cookies are invalid.
186
226
187
-
### 0.3.3 (October 28, 2024)
227
+
---
228
+
229
+
# 0.3.3 (October 28, 2024)
188
230
- Added the ability to load a `.env` file from the PWD when `LOAD_ENV_FILE=true` is set as an environment variable.
189
231
- Fixed an issue where non-English languages could not create Pre-auth keys due to a localization error
190
232
- Improved ACL editor performance by switching back to CodeMirror 6
191
233
- Fixed an issue where editing the ACL policy would cause it to revert on the UI (fixes [#34](https://github.com/tale/headplane/issues/34))
192
234
- Updated to the next stable beta of the React 19 Compiler ([See More](https://react.dev/learn/react-compiler))
193
235
194
-
### 0.3.2 (October 11, 2024)
236
+
---
237
+
238
+
# 0.3.2 (October 11, 2024)
195
239
- Implement the ability to create and expire pre-auth keys (fixes [#22](https://github.com/tale/headplane/issues/22))
196
240
- Fix machine registration not working as expected (fixes [#27](https://github.com/tale/headplane/issues/27))
197
241
- Removed more references to usernames in MagicDNS hostnames (fixes [#35](https://github.com/tale/headplane/issues/35))
198
242
- Handle `null` values on machine expiry when using a database like PostgreSQL.
199
243
- Use `X-Forwarded-Proto` and `Host` headers for building the OIDC callback URL.
200
244
201
-
### 0.3.1 (October 3, 2024)
245
+
---
246
+
247
+
# 0.3.1 (October 3, 2024)
202
248
- Fixed the Docker integration to properly support custom socket paths. This regressed at some point previously.
203
249
- Allow you to register a machine using machine keys (`nodekey:...`) on the machines page.
204
250
- Added the option for debug logs with the `DEBUG=true` environment variable.
205
251
206
-
### 0.3.0 (September 25, 2024)
252
+
---
253
+
254
+
# 0.3.0 (September 25, 2024)
207
255
- Bumped the minimum supported version of Headscale to 0.23.
208
256
- Updated the UI to respect `dns.use_username_in_magic_dns`.
209
257
210
-
### 0.2.4 (August 24, 2024)
258
+
---
259
+
260
+
# 0.2.4 (August 24, 2024)
211
261
- Removed ACL management from the integration since Headscale 0.23-beta2 now supports it natively.
212
262
- Removed the `ACL_FILE` environment variable since it's no longer needed.
213
263
- Introduce a `COOKIE_SECURE=false` environment variable to disable HTTPS requirements for cookies.
214
264
- Fixed a bug where removing Split DNS configurations would crash the UI.
215
265
216
-
### 0.2.3 (August 23, 2024)
266
+
---
267
+
268
+
# 0.2.3 (August 23, 2024)
217
269
- Change the minimum required version of Headscale to 0.23-beta2
218
270
- Support the new API policy mode for Headscale 0.23-beta1
219
271
- Switch to the new DNS configuration in Headscale 0.23-beta2 (fixes [#29](https://github.com/tale/headplane/issues/29))
220
272
- If OIDC environment variables are defined, don't use configuration file values (fixes [#24](https://github.com/tale/headplane/issues/24))
221
273
222
-
### 0.2.2 (August 2, 2024)
274
+
---
275
+
276
+
# 0.2.2 (August 2, 2024)
223
277
- Added a proper Kubernetes integration which utilizes `shareProcessNamespace` for PIDs.
224
278
- Added a new logger utility that shows categories, levels, and timestamps.
225
279
- Reimplemented the integration system to be more resilient and log more information.
226
280
- Fixed an issue where the /proc integration found `undefined` PIDs.
227
281
228
-
### 0.2.1 (July 7, 2024)
282
+
---
283
+
284
+
# 0.2.1 (July 7, 2024)
229
285
- Added the ability to manage custom DNS records on your Tailnet.
230
286
- ACL tags for machines are now able to be changed via the machine menu.
231
287
- Fixed a bug where the ACL editor did not show the diffs correctly.
232
288
- Fixed an issue that stopped the "Discard changes" button in the ACL editor from working.
233
289
234
-
### 0.2.0 (June 23, 2024)
290
+
---
291
+
292
+
# 0.2.0 (June 23, 2024)
235
293
- Fix the dropdown options for machines not working on the machines page.
236
294
- Add an option to change the machine owner in the dropdown (aside from the users page).
237
295
238
-
### 0.1.9 (June 2, 2024)
296
+
---
297
+
298
+
# 0.1.9 (June 2, 2024)
239
299
- Switch to Monaco editor with proper HuJSON and YAML syntax highlighting.
240
300
- Utilize magic DNS hostnames for the machine overview page.
241
301
- Fixed the expiry issue once and for all.
242
302
- Add a nightly build with the `ghcr.io/tale/headplane:edge` tag
243
303
244
-
### 0.1.8 (June 2, 2024)
304
+
---
305
+
306
+
# 0.1.8 (June 2, 2024)
245
307
- Built basic functionality for the machine overview page (by machine ID).
246
308
- Possibly fixed an issue where expiry disabled machines' timestamps weren't handled correctly.
247
309
- Prevent users from being deleted if they still have ownership of machines.
248
310
- Fixed some type issues where `Date` was being used instead of `string` for timestamps.
249
311
250
-
### 0.1.7 (May 30, 2024)
312
+
---
313
+
314
+
# 0.1.7 (May 30, 2024)
251
315
- Added support for the `HEADSCALE_INTEGRATION` variable to allow for advanced integration without Docker.
252
316
- Fixed a bug where the `expiry` field on the Headscale configuration could cause crashes.
253
317
- Made the strict configuration loader more lenient to allow for more flexibility.
254
318
- Added `HEADSCALE_CONFIG_UNSTRICT`=true to revert back to a weaker configuration loader.
255
319
- Headplane's context now only loads once at start instead of being lazy-loaded.
256
320
- Improved logging and error propagation so that it's easier to debug issues.
257
321
258
-
### 0.1.6 (May 22, 2024)
322
+
---
323
+
324
+
# 0.1.6 (May 22, 2024)
259
325
- Added experimental support for advanced integration without Docker.
260
326
- Fixed a crash where the Docker integration tried to use `process.env.API_KEY` instead of context.
261
327
- Fixed a crash where `ROOT_API_KEY` was not respected in the OIDC flow.
262
328
263
-
### 0.1.5 (May 20, 2024)
329
+
---
330
+
331
+
# 0.1.5 (May 20, 2024)
264
332
- Robust configuration handling with fallbacks based on the headscale source.
265
333
- Support for `client_secret_path` on configuration file based OIDC.
266
334
-`DISABLE_API_KEY_LOGIN` now works as expected (non 'true' values work).
267
335
-`API_KEY` is renamed to `ROOT_API_KEY` for better clarity (old variable still works).
268
336
- Fixed button responders not actually being invoked (should fix the ACL page).
269
337
270
-
### 0.1.4 (May 15, 2024)
338
+
---
339
+
340
+
# 0.1.4 (May 15, 2024)
271
341
272
342
- Users can now be created, renamed, and deleted on the users page.
273
343
- Machines can be dragged between users to change their ownership.
@@ -276,13 +346,17 @@ If there are no users, the first user will be given an `owner` role which cannot
276
346
- Upgrade to React 19 beta to take advantage of the compiler (may revert if it causes issues).
277
347
- Upgrade other dependencies
278
348
279
-
### 0.1.3 (May 4, 2024)
349
+
---
350
+
351
+
# 0.1.3 (May 4, 2024)
280
352
281
353
- Switched to a better icon set for the UI.
282
354
- Support stable scrollbar gutter if supported by the browser.
283
355
- Cleaned up the header which fixed a bug that could crash the entire application on fetch errors.
284
356
285
-
### 0.1.2 (May 1, 2024)
357
+
---
358
+
359
+
# 0.1.2 (May 1, 2024)
286
360
287
361
- Added support for renaming, expiring, removing, and managing the routes of a machine.
288
362
- Implemented an expiry check for machines which now reflect on the machine table.
0 commit comments