35 Commits

Author SHA1 Message Date
Ali Rizvi-Santiago
673d4579e4 Ack! Forgot to include the template variable in the definition for vmxTemplateData for commit 0e519d79e06909f30b16858e4fd38180ddc9f949. Now it's added.. 2018-04-26 14:22:37 -05:00
Ali Rizvi-Santiago
0e519d79e0 Modified iso/step_create_vmx.go in the vmware-iso builder to also specify the "bios.hddOrder" field depending on the hdd device that was specified. This might close issue #6197 2018-04-26 14:16:50 -05:00
Ali Rizvi-Santiago
5d8b476a7f Fixed the regex in common/step_clean_vmx.go for the VMware builder to also support removal of sata-based cdrom devices. Also added a comment in iso/step_create_vmx.go that links both pieces of related code. 2018-04-26 14:01:58 -05:00
Megan Marsh
ef4f3f143b
Merge pull request #5985 from AndiDog/f-5979-vmware-fusion-guestip-lookup-multiple-devices
Handle multiple devices per VMware network type
2018-03-21 17:12:36 -07:00
Josh Soref
fa36e1d961 spelling: processing 2018-03-14 02:17:22 +00:00
Andreas Sommer
ff92fb883d Handle multiple devices per VMware network type
Fixes #5979
2018-03-07 10:59:55 +01:00
Ali Rizvi-Santiago
df6cdcc7f7 Disable the usage of the XHCI bus for USB on the vmware-iso builder.
Some platforms with incomplete XHCI implementations (i.e. FreeBSD)
will poll the bus despite there being no usb devices available.
This disables XHCI by default and documents how to enable it using
the vmx_data option.

This closes issue #5961.
2018-03-05 20:58:43 -06:00
Megan Marsh
33acdbf3bf move comments so indentation is more logical 2018-02-21 14:57:58 -08:00
Ali Rizvi-Santiago
ac2ddbcbf5 Fixes the assumption that all the VMware builder's drivers will implement a network mapper for mapping a network name to it's corresponding device.
The ESX5 driver doesn't have a way of mapping the network name to its device name because a .vmx template uses different field names for it and so packer let's ESX handle filling this in. This patch will check to see if the driver that packer determines is missing a NetworkMapper implementation (by checking for nil). If it is, then fall back to using "nat" despite ESX not using the network type at all. This is what packer did prior to exposing the network type to the user back in version 1.1.3.

This closes issue #5916.
2018-02-20 19:45:55 -06:00
Ali Rizvi-Santiago
aefe41a44a Fixed an issue with the previous commit so that when the user does not specify the cdrom_adapter_type to fallback to the original decision made by the disk adapter type selection. 2018-02-02 19:18:50 -06:00
Ali Rizvi-Santiago
eb0445ca96 Added support for specifying both the network adapter type and cdrom adapter type as requested by @night199uk. Also included the respective documentation for these new options. 2018-02-02 19:18:50 -06:00
Ali Rizvi-Santiago
74946071d2 Added support for specifying the disk adapter type to the vmware builders. This was squashed from the vmware-diskAdapterType branch (#2968) as submitted by Rami Abughazaleh <icnocop@users.noreply.github.com>. This closes #5671 and possibly #4885.
arizvisa: Updated icnocop's documentation to include the possible disk adapter types that one can specify.
arizvisa: Tweaked icnocop's support for the `disk_adapter_type` option to the VMWare builder that caused conflicts due to version skew.
icnocop: Updated links to the Virtual Disk Manager User's Guide PDF to open in a new window and also added the Adobe PDF icon
icnocop: Added support for vmware to specify the disk adapter type, ide or scsi (lsilogic or buslogic)
2018-02-02 19:18:49 -06:00
Ali Rizvi-Santiago
b2fec18b1e Added parser for VMware Fusion's networking file. Replaced VmwareDriver's NetmapConfPath with a NetworkMapperInterface in order to handle the differences between VMware Fusion and the rest of the VMware suite. 2018-02-02 19:18:49 -06:00
Ali Rizvi-Santiago
58ebc5c9a5 When specifying NONE for serial or parallel in the VMware builder, disable the serial and parallel port devices entirely. 2018-02-02 19:18:48 -06:00
Ali Rizvi-Santiago
75fbfa0763 Replaced a hacky type assertion in the VMware builder with a call to Driver.GetVmwareDriver() that returns the driver-specific structure for ip and addressing information. Also implemented the addressing functions for the ESXi driver interface.
This fixes an issue where a driver might not have defined a VmwareDriver by forcing a developer to implement it via the standard Driver interface.
2018-02-02 19:18:48 -06:00
Ali Rizvi-Santiago
898b27c16d Added support for the NONE option to be specified for parallel and serial ports in the vmware iso builder. 2018-02-02 19:18:48 -06:00
Ali Rizvi-Santiago
884af69da1 go fmt on builder/vmware/* 2018-02-02 19:18:48 -06:00
Ali Rizvi-Santiago
0d6cf7fac4 Added support for auto-detection to the serial and parallel port types.
Included the yield option to all the serial port types.
Added the ability for the network type to fallback to a custom network if the
    specified network name is not found in netmap.conf.
Promoted the scope for both Read{Dhcp,Netmap}Config inside vmwcommon.driver.
Updated the documentation for the VMware builder.
2018-02-02 19:14:29 -06:00
Ali Rizvi-Santiago
4225b3568e Fixed bad ORs and a bad fmtstring. 2018-02-02 19:11:41 -06:00
Ali Rizvi-Santiago
75d3ea7cee Added support for sound, serial ports, parallel ports, usb, and specifying a default network to the vmware builder.
builder/vmware/{iso,vmx}:
    Added the specific configuration options that get parsed.
    Normalize paths when pulling them from the json template so that they'll work on Windows too.
    Added some improved error checking when parsing these options.
    Stash the vm's network connection type so that other steps can figure out addressing information
    Modified the esx5 driver to support the new addressing logic.
    Modified the template in step_create_vmx to include the new options.

builder/vmware/common:
    Implemented a parser for vmware's configuration files to the vmware builder.
    Modified the driver's interface to include support for resolving both guest/host hw and ip addresses
    Implemented a base structure with some methods that implement these features.
    Rewrote all ip and mac address dependent code to utilize these new methods.
    Removed host_ip and guest_ip due to their logic being moved directly into a
        base-structure used by each driver. The code was explicitly checking runtime.GOOS
        instead of portably using net.Interfaces() anyways.
    Updated driver_mock to support the new addressing methods
2018-02-02 19:11:41 -06:00
Matthew Hooker
7a189a83a1
fix imports
`find . -type f -name '*.go' -not -path "./vendor/*" -exec goimports -w {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker
a831d522be
change run signatures
Run now takes a context as well as a statebag. We'll assign the context
to the blank identifier to prevent namespace collisions. We'll let the
step authors opt-in to using the context.

`find . -iname "step_*.go" -exec gsed -i'' 's/func \(.*\)Run(/func \1Run(_ context.Context, /' {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker
366dc3da0a
move multistep imports to helper.
gomvpkg -from "github.com/mitchellh/multistep" -to "github.com/hashicorp/packer/helper/multistep"
2018-01-24 17:09:15 -08:00
Matthew Hooker
9f992b8f80
go files are 0644 2017-04-25 12:50:58 -07:00
Matthew Hooker
81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
Matthew Hooker
d920b3fbf4 run gofmt 2016-11-01 14:08:04 -07:00
Marc Siegfriedt
667c53942b use template for additional disks 2015-06-15 12:40:34 -07:00
Shawn Neal
e9a491ae45 New interpolation for additional vmware disks 2015-06-04 11:44:07 -07:00
Eric Richardson
7dfb837ddb Formatting cleanups from go fmt 2015-06-04 08:22:50 -07:00
Eric Richardson
fab9ca9cdb Initial work to implement additional disk support in the vmware-iso builder
* Matches the syntax from mitchellh/packer#703
* Creates disk(s), adds them to the vmx template, and runs compact at the end
2015-06-04 08:22:50 -07:00
Mitchell Hashimoto
f5945eeb1b vmware/iso: new interpolation 2015-05-27 14:16:28 -07:00
Nick Cronin
1aa102dd06 addresses #1191 - Add VMWare virtualhw.version configuration option under 'version' 2014-10-28 11:49:04 +11:00
Mitchell Hashimoto
6d83ef5499 builder/vmware/iso: move VMX methods out to the common 2013-12-23 23:09:47 -07:00
Mitchell Hashimoto
91392feb58 builder/vmware/iso: fix package name 2013-12-23 22:58:41 -07:00
Mitchell Hashimoto
d1e68875a7 builder/vmware: move to iso package 2013-12-23 22:58:13 -07:00