Imran
Imran

Reputation: 1902

Packer ssh timeout

I am trying to build images with packer in a jenkins pipeline. However, the packer ssh provisioner does not work as the ssh never becomes available and error out with timeout. Farther investigation of the issue shows that, the image is missing network interface files ifconfig-eth0 in /etc/sysconfig/network-scripts directory so it never gets an ip and does not accept ssh connection. The problem is, there are many such images to be generated and I can't open each one manually in GUI of virtualbox and correct the issue and repack. Is there any other possible solution to that?

    {
  "variables": {
    "build_base": ".",
    "isref_machine":"create-ova-caf",
    "build_name":"virtual-box-jenkins",
    "output_name":"packer-virtual-box",
    "disk_size":"40000",
    "ram":"1024",
    "disk_adapter":"ide"
  },  
  "builders":[
        {   
          "name": "{{user `build_name`}}",
          "type": "virtualbox-iso",
          "guest_os_type": "Other_64",
          "iso_url": "rhelis74_1710051533.iso",
          "iso_checksum": "",
          "iso_checksum_type": "none",
          "hard_drive_interface":"{{user `disk_adapter`}}",
          "ssh_username": "root",
          "ssh_password": "Secret1.0",
          "shutdown_command": "shutdown -P now",
          "guest_additions_mode":"disable",
          "boot_wait": "3s",
          "boot_command": [ "auto<enter>"],
          "ssh_timeout": "40m",
          "headless":
          "true",
          "vm_name": "{{user `output_name`}}",
                    "disk_size": "{{user `disk_size`}}",
          "output_directory":"{{user `build_base`}}/output-{{build_name}}",
          "format": "ovf",
          "vrdp_bind_address": "0.0.0.0",
          "vboxmanage": [
            ["modifyvm", "{{.Name}}","--nictype1","virtio"],
            ["modifyvm", "{{.Name}}","--memory","{{ user `ram`}}"]
          ],
          "skip_export":true,
          "keep_registered": true
        }   
  ],  
  "provisioners": [
    {
      "type":"shell",
      "inline": ["ls"]

    }
  ]

}

Upvotes: 0

Views: 6615

Answers (1)

KargWare
KargWare

Reputation: 2193

When you don't need the SSH connection during the provisioning process you can switch it off. See the packer documentation about communicator, there you see the option none to switch of the communication between host and guest.

{
  "builders": [
    {
      "type": "virtualbox-iso",
      "communicator": "none"
    }
  ]
}

Packer Builders DOCU virtualbox-iso

Upvotes: 1

Related Questions