web: add cloud-init SSH key builder #133

Merged
a73x merged 1 commit from cloud-init-builder into main 2026-09-30 11:12:19 +00:00
Owner

VM creation previously exposed only a raw cloud-init field under Advanced. The create dialog now offers SSH public-key entry, inline validation, a generated cloud-config preview, and an optional custom user-data editor.

The frontend sends the key separately through the existing API. The backend merges it into user-data and records its fingerprint; no API or agent changes are required.

Validation: console build, 86 console tests and type checking passed. Authenticated Chromium checks against an isolated OIDC issuer and real API covered VM creation, missing-CA and unsupported-format refusals, malformed-key blocking, custom YAML/scripts, form reset and mobile layout. SQLite confirmed merged user-data; demo resources were cleaned up.

The full make ci gate passed on commit 154631a. Installation inside a booted guest and SSH login remain unverified.

VM creation previously exposed only a raw cloud-init field under Advanced. The create dialog now offers SSH public-key entry, inline validation, a generated cloud-config preview, and an optional custom user-data editor. The frontend sends the key separately through the existing API. The backend merges it into user-data and records its fingerprint; no API or agent changes are required. Validation: console build, 86 console tests and type checking passed. Authenticated Chromium checks against an isolated OIDC issuer and real API covered VM creation, missing-CA and unsupported-format refusals, malformed-key blocking, custom YAML/scripts, form reset and mobile layout. SQLite confirmed merged user-data; demo resources were cleaned up. The full `make ci` gate passed on commit `154631a`. Installation inside a booted guest and SSH login remain unverified.
a73x merged commit 4f90ae603e into main 2026-09-30 11:12:19 +00:00
a73x deleted branch cloud-init-builder 2026-09-30 11:12:19 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
a73x/eitri!133
No description provided.