mirror of
https://github.com/CloudNebulaProject/vm-manager.git
synced 2026-04-10 05:10:41 +00:00
libssh2 cannot handle all OpenSSH private key formats (e.g. passphrase- protected or newer ed25519 keys), causing auth failures. Instead of referencing the user's ~/.ssh keys, generate a fresh Ed25519 keypair at resolve time when the VMFile omits ssh-key and private-key. The public key is injected into cloud-init and the private PEM is persisted to the VM's work directory so that provision, reload, and ssh commands can reuse it. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
643 B
Text
30 lines
643 B
Text
vm "omnios-builder" {
|
|
image-url "https://downloads.omnios.org/media/stable/omnios-r151056.cloud.qcow2"
|
|
vcpus 4
|
|
memory 4096
|
|
disk 20
|
|
|
|
cloud-init {
|
|
hostname "omnios-builder"
|
|
}
|
|
|
|
ssh {
|
|
user "smithy"
|
|
}
|
|
|
|
// Stage 1: System packages and Rust toolchain
|
|
provision "shell" {
|
|
script "scripts/bootstrap-omnios.sh"
|
|
}
|
|
|
|
// Stage 2: Upload forger source
|
|
provision "file" {
|
|
source "scripts/forger-src.tar.gz"
|
|
destination "/tmp/forger-src.tar.gz"
|
|
}
|
|
|
|
// Stage 3: Extract and build forger
|
|
provision "shell" {
|
|
script "scripts/install-forger.sh"
|
|
}
|
|
}
|