Packer SSH key plugin
Packer plugin used to generate SSH keys.
For the full list of available features for this plugin see documentation.
Packer 1.7.3 or later is required.
Usage example
packer {
required_plugins {
sshkey = {
version = ">= 1.3.0"
source = "github.com/ivoronin/sshkey"
}
}
}
variables {
temporary_key_pair_name = "my_temp_key"
}
data "sshkey" "install" {
name = var.temporary_key_pair_name
}
source "qemu" "install" {
ssh_username = "root"
ssh_private_key_file = data.sshkey.install.private_key_path
ssh_clear_authorized_keys = true
temporary_key_pair_name = var.temporary_key_pair_name
http_content = {
"/preseed.cfg" = templatefile("preseed.cfg.pkrtpl", {
"ssh_public_key" : data.sshkey.install.public_key
})
}
<...>
}
build {
sources = ["source.qemu.install"]
}
Starting from version 1.7, Packer supports a new packer init command allowing
automatic installation of Packer plugins. Read the
Packer documentation for more information.
[!NOTE]
Packer 1.8.5 has a -evaluate-datasources option which solves the ssh_private_key_file is invalid issue. Run: packer validate test.pkr.hcl -evaluate-datasources