Сбой SSH при сборке RancherOS с пакером
У меня проблема с Packer и RancherOS. Я пытаюсь создать собственный образ rancherOS с cloud-config
файл. Я работаю над MacOSX.
у меня есть это build.json
файл
{
"variables": {
"vm_name" : ""
},
"builders": [
{
"type": "vmware-iso",
"iso_url": "rancheros.iso",
"guest_os_type": "other",
"iso_checksum_type": "md5",
"iso_checksum": "467caa8394684ba54e8731aed8480652",
"output_directory": "output_rancheros",
"ssh_wait_timeout": "30s",
"shutdown_command": "sudo shutdown -h now",
"disk_size": 20000,
"ssh_username": "rancher",
"ssh_password": "rancher",
"ssh_port": 22,
"ssh_wait_timeout": "90m",
"vm_name": "{{ user `vm_name` }}",
"boot_wait": "10s",
"vmx_data": {
"memsize": "4096"
}
}
],
"provisioners": [
{
"type":"file",
"source": "cloud-config.yml",
"destination": "/tmp/cloud-config.yml"
},
{
"type": "shell",
"inline": [
"sudo ros install -d /dev/sda -f -t generic -c /tmp/cloud-config.yml"
]
}
]
}
Вдоль стороны у меня есть cloud-config.yml
содержащий только мой ключ SSH
#cloud-config
ssh_authorized_keys:
- ssh-rsa AAAA....d admin@example.com
Когда я запускаю команду здания packer build build.json
я получил
vmware-iso: + umount /mnt/new_img
vmware-iso: time="2016-07-27T05:52:35Z" level=fatal msg=EOF
vmware-iso: Continue with reboot [y/N]:
==> vmware-iso: Stopping virtual machine...
==> vmware-iso: Deleting output directory...
Build 'vmware-iso' errored: Script exited with non-zero exit status: 1
==> Some builds didn't complete successfully and had errors:
--> vmware-iso: Script exited with non-zero exit status: 1
==> Builds finished but no artifacts were created.
Если я правильно понимаю. Мой скрипт работает, но после перезагрузки виртуальной машины новый ключ SSH не работает.
Я не знаю, как это решить. Может быть, кто-то поможет мне.
С наилучшими пожеланиями
1 ответ
Я нашел решение
Просто добавьте -no-reboot
флаг на sudo ros install -d /dev/sda -f -t generic -c /tmp/cloud-config.yml
Команда сделать свое дело.
Таким образом, во время генерации перезагрузка не будет.