Commit Graph

295 Commits

Author SHA1 Message Date
Mitchell Hashimoto 781332b297 builder/vmware: fix local output dir exists check 2013-11-08 11:48:04 -08:00
Mitchell Hashimoto 52fb77a883 builder/vmware: case-insensitive VMX creation [GH-608] 2013-11-07 22:06:30 -08:00
Mitchell Hashimoto 47ac6897de builder/vmware: start/stop ESXi5 VMX with proper path 2013-11-07 21:22:12 -08:00
Mitchell Hashimoto ba8a0dbec0 builder/vmware: only unregister if registration success 2013-11-07 21:19:24 -08:00
Mitchell Hashimoto e5ae542142 builder/vmware: register the VMX to the proper path on esx 2013-11-07 21:18:25 -08:00
Mitchell Hashimoto 2ccc5e80c7 builder/vmware: log when writing a VMX 2013-11-07 21:03:15 -08:00
Mitchell Hashimoto b228723903 builder/vmware: for remote builds, put VMX in temp dir 2013-11-07 21:02:12 -08:00
Mitchell Hashimoto a4b54f1cf3 builder/vmware: set proper default disk type for esx 2013-11-07 20:57:05 -08:00
Mitchell Hashimoto 148d7c06ab builder/vmware: make upload dst,src like normal go 2013-11-07 20:47:15 -08:00
Mitchell Hashimoto 2c8843b4de builder/vmware: esx file check works properly 2013-11-07 20:46:34 -08:00
Mitchell Hashimoto 8a8ac430d1 builder/vmware: upload the ISO to the ESXi machine 2013-11-07 12:28:41 -08:00
Mitchell Hashimoto 483cda18c1 builder/vmware: make things more Go-like
This commit currently breaks the builder though, since the ISo is now
uploaded back into ESX.
2013-11-07 12:01:18 -08:00
Doug MacEachern a828a9a064 builder/vmware: new driver to support building images directly on ESX
This driver talks directly to ESX over ssh, using vim-cmd, esxcli and sh;
no vCenter or VIM api required.

Remote* config properties added to support a remote driver

RemoteDriver interface extends Driver:
* SSHAddress - esx flavor uses esxcli to find the VM's ip address
* Download - esx flavor downloads iso files to a vmfs datastore

Driver can optionally implement the following interfaces:
* VNCAddressFinder - esx flavor needs to check remote ports
* OutputDir - esx driver needs a local and remote OutputDir
* Inventory - esx driver needs to register/unregister VMs
* HostIPFinder - esx flavor needs an address on the same network as esx itself
2013-11-07 12:01:18 -08:00
Mitchell Hashimoto 7aab3381f1 builder/vmware: check for ifconfig in /sbin [GH-591] 2013-11-04 14:34:51 -08:00
Mitchell Hashimoto cf0ac15ecc builder/vmware: force LANG=C for ifconfig [GH-592] 2013-11-04 14:26:18 -08:00
Mitchell Hashimoto 9acaa97a32 builder/virtualbox,vmware: warning if shutdown_command is not specified 2013-11-02 23:17:21 -05:00
Mitchell Hashimoto a6150e6596 builder/all: update to warnings 2013-11-02 23:03:59 -05:00
Mitchell Hashimoto 5e3c8c4fe6 builder/virtualbox,vmware: support user templates in SSH key path
[GH-539]
2013-10-20 15:58:39 -07:00
Mitchell Hashimoto acd9f3c9a3 builder/vmware: always set msg.AutoAnswer 2013-09-05 13:44:57 -07:00
Mitchell Hashimoto 3fc00a2dfa builder/vmware: auto-answer dialogs [GH-393] 2013-09-05 13:43:01 -07:00
Greg Karékinian 2378b652ca Fix typo
s/Detatching/Detaching/
2013-09-02 12:46:47 +02:00
Mitchell Hashimoto f74ff91166 builder/vmware: new multistep API 2013-08-31 12:50:25 -07:00
Mitchell Hashimoto d54b0bd629 builder/vmware: support key based SSH auth [GH-70] 2013-08-27 22:57:42 -07:00
Mitchell Hashimoto 1566b4d858 builder/vmware: support vmx_template_path [GH-270] 2013-08-27 17:23:28 -07:00
Mitchell Hashimoto c753946c84 builder/vmware: ability to not request a PTY for SSH [GH-270] 2013-08-27 16:51:05 -07:00
Justin Bronn c6d1c8e9d5 Make it possible to customize the VMware virtual disk type id. 2013-08-22 11:40:56 -07:00
Mitchell Hashimoto 3fc069c48b builder/vmware: interrupts work during VNC type on VMware 2013-08-16 09:07:27 -07:00
Mitchell Hashimoto 64d87bfaf3 *: switch to packer ConfigTemplate 2013-08-15 19:17:23 -07:00
Mitchell Hashimoto 334cf37fbb builder/vmware: support iso_urls for multiple URLs [GH-110] 2013-08-15 17:46:41 -07:00
Mitchell Hashimoto b872448758 builder/vmware: switch to common download step 2013-08-15 17:46:41 -07:00
Mitchell Hashimoto 71664cb34e common: return -1 download percent if download hasn't started [GH-288] 2013-08-14 11:15:47 -04:00
Mitchell Hashimoto b879b17b1c builder/vmware: create driver in Run method 2013-08-13 08:54:12 -07:00
Mitchell Hashimoto 1b2d9c4044 builder/vmware: find files if they exist [GH-279] 2013-08-12 16:13:06 -07:00
Mitchell Hashimoto c2506e9410 builder/vmware: fix windows builds 2013-08-12 14:01:50 -07:00
Mitchell Hashimoto 060ae56b2d builder/vmware: nitpick some styles
/cc @rasa - I changed up quite a bit here. I tried to reduce function
count if possible, renamed some functions, etc. Overall the
functionality was all spot on, but I felt the functions were too
specialized. Thanks!
2013-08-09 17:31:43 -07:00
Ross Smith II 1e18249da9 fixed typo in vmware path on Windows XP, fixes #237/#238 2013-08-09 17:10:05 -07:00
Ross Smith II d4c45b412e Add support for VMWare Workstation on Windows XP, fixes #237 2013-08-09 17:09:55 -07:00
Mitchell Hashimoto 332bdf6edc builder/*, provisioner/*: set user vars 2013-08-09 15:57:08 -07:00
Mitchell Hashimoto c023588614 builder/vmware: error checking on upload path template 2013-08-08 17:25:25 -07:00
Mitchell Hashimoto 8bb5d40537 builder/vmware: use new template stuff 2013-08-08 17:25:25 -07:00
Mitchell Hashimoto 5b7d8fbc74 rename builder/common to common since it is generally useful 2013-08-01 12:11:54 -07:00
Mitchell Hashimoto 6b2c2db77e builder/vmware: slightly nicer error messages 2013-07-31 22:52:36 -07:00
Mitchell Hashimoto 69d6d8f1b6 builder/vmware: error message tweaking for Player driver 2013-07-31 22:15:13 -07:00
Julian Phillips df180d6146 builder/vmware: We only need one runAndLog function
We shouldn't need a different one for each driver ...

Conflicts:
	builder/vmware/driver_workstation9.go
2013-07-31 22:11:07 -07:00
Julian Phillips 7b65daad37 builder/vmware: Add Support for VMware Player 5 (Linux)
We have two choices for VMware on Linux.  We already support
Workstation, add support for Player too.

VMware Player doesn't come with vmware-vdiskmanager, so fall back to
using qemu-img if we can find that.

Conflicts:
	builder/vmware/driver.go
2013-07-31 22:09:38 -07:00
Mitchell Hashimoto 54adabfd39 builder/vmware: sleep before cleaning files on Windows 2013-07-31 15:36:22 -07:00
Mitchell Hashimoto 558027465a builder/virtualbox,vmware: retry removing output dir if fails 2013-07-31 15:16:39 -07:00
Mitchell Hashimoto 8ac03e4898 builder/vmware: compile host_ip on every platform 2013-07-31 15:10:28 -07:00
Mitchell Hashimoto 1286f735be builder/vmware: redo host IP stuff for Windows 2013-07-31 14:46:12 -07:00
Mitchell Hashimoto f4adb35b9a builder/vmware: more logs for Workstation 2013-07-31 14:02:00 -07:00
Mitchell Hashimoto 6aacf20167 builder/vmware: convert line endings in workstation to Unix-style 2013-07-31 13:58:57 -07:00
Mitchell Hashimoto 8ac86e49d0 builder/vmware: improved logging for various workstation steps 2013-07-31 13:50:49 -07:00
Mitchell Hashimoto d1e0e955ab builder/vmware: verify various paths exist for Workstation 2013-07-31 12:39:49 -07:00
Mitchell Hashimoto 422f25749e builder/vmware: refactor the platform-specific stuff out
/cc @rasa - This is more idiomatic Go: to share the platform-independent
stuff and make the platform-specific stuff unexported functions
2013-07-31 12:36:17 -07:00
Mitchell Hashimoto fc89919347 Merge branch 'master' of https://github.com/rasa/packer into rasa-master 2013-07-31 11:52:20 -07:00
Mitchell Hashimoto 0363a1cdc2 builder/virtualbox,vmware: use DownloadableURL 2013-07-29 00:13:30 -07:00
Ross Smith II cf46148300 added missing fallthru in case statement for linux option, fixes #221, #222 2013-07-28 20:41:09 -07:00
Ross Smith II 56c383cf68 gofmt fixes, improved/added log messages, fixes #221/#222 2013-07-27 14:59:23 -07:00
Ross Smith II 071a6099c8 fixes #221 Add support for VMWare Workstation in Windows 2013-07-27 13:00:21 -07:00
Mitchell Hashimoto 56c3cbfb2a builder/common: common config struct for Packer configs 2013-07-23 22:48:31 -05:00
Mitchell Hashimoto 665b03a342 fmt 2013-07-23 22:36:09 -05:00
Mitchell Hashimoto f6854ae07e builder/vmware: more flexible ISO removing
/cc @timsutton - This is a bit more flexible.
2013-07-20 19:08:20 -07:00
Mitchell Hashimoto e05e83f9c8 Merge pull request #203 from timsutton/vmware-eject-isos
builder/vmware: Remove ISO from ide1 in stepCleanVMX
2013-07-20 16:59:55 -07:00
Mitchell Hashimoto 91c1bf0b8a Merge pull request #204 from sit/builder-output-directory-error
builder/v*: Include path to output dir in error
2013-07-20 16:58:39 -07:00
Mitchell Hashimoto e84811e2f8 Update changelog 2013-07-20 16:37:48 -07:00
JD Harrington dbd45dfd58 Add special keys for backspace, delete and F1-F12 2013-07-20 15:37:01 -04:00
Emil Sit 329266e86e builder/v*: Include path to output dir in error 2013-07-20 00:36:59 -04:00
Timothy Sutton 0c7efde103 Remove ISO from ide1 in stepCleanVMX 2013-07-19 20:46:26 -04:00
Mitchell Hashimoto 16d102d055 builder/*: switch to MultiErrorAppend 2013-07-19 19:08:25 -04:00
Mitchell Hashimoto 42059f9b07 builder/*: extract to common the config decoding 2013-07-19 15:00:32 -04:00
Doug MacEachern e531af96e1 fix Fusion DhcpLeasesPath 2013-07-17 13:03:05 -07:00
Mitchell Hashimoto 9d31a49fad builder/vmware: look for license for WS9 2013-07-16 14:58:16 -07:00
Mitchell Hashimoto d126c45d77 builder/vmware: workstation 9 show stderr if command fails 2013-07-16 14:46:34 -07:00
Mitchell Hashimoto a9252959ba builder/vmware: wording 2013-07-16 14:23:52 -07:00
Mitchell Hashimoto 05e081e07f builder/vmware: split drivers out into individual files 2013-07-16 14:23:01 -07:00
Julian Phillips 4846d252a3 builder/vmware: Add support for Workstation 9 (Linux).
Now the VMware builder should automatically pick between Fusion 5 and
Workstation 9, based on which one is installed.
2013-07-16 14:11:59 -07:00
Mitchell Hashimoto 29279415d0 builder/vmware: error if guest IP is blank [GH-189] 2013-07-16 11:05:47 -07:00
Mitchell Hashimoto 8e1e40c096 builder/*: convert to common StepProvision 2013-07-16 15:44:41 +09:00
Mitchell Hashimoto fd58b33b38 builder/vmware: convert to cmmon ssh step 2013-07-15 14:22:13 +09:00
Mitchell Hashimoto 9387ba0fd4 packer: Make builder type available in configs [GH-154] 2013-07-15 09:58:32 +09:00
Mitchell Hashimoto 6b6beae3b8 builder/vmware: unexport calculted config fields 2013-07-14 21:23:46 +09:00
Mitchell Hashimoto a0f1667df1 communicator/ssh: tweakable timeout on retry connection 2013-07-14 21:05:22 +09:00
Mitchell Hashimoto 2fff555e7f fmt 2013-07-14 20:55:27 +09:00
Mitchell Hashimoto 9718a4656c communicator/ssh: have a Connection func so we can re-establish
[GH-152]
2013-07-14 20:22:57 +09:00
Mitchell Hashimoto 569ec0a2bb builder/vmware: generic checksum types [GH-175] 2013-07-14 15:58:56 +09:00
Mitchell Hashimoto 3b4ef72e47 Unused keys are invalid in templates [GH-104] 2013-07-14 09:28:56 +09:00
Mitchell Hashimoto 245deaf599 buidler/virtualbox,vmware: only stat if not force
/cc @jasonberanek - Swapped this because why even bother doing a stat
if we're forcing anyways.
2013-07-13 14:47:08 +09:00
Jason A. Beranek 9c31c69a7b Remove output directory in a step when "-force" flag step [GH-178] 2013-07-12 21:23:00 -05:00
Mitchell Hashimoto 2981da4eef fmt 2013-07-13 10:01:27 +09:00
Jason A. Beranek 13c733a3db Add support for -force flag on builds [GH-119] 2013-07-11 23:43:23 -05:00
Mitchell Hashimoto e52f8e0486 fmt 2013-07-12 07:01:30 +09:00
Mitchell Hashimoto 0fdf9b09c9 builder/vmware: error if shutdown command failed 2013-07-09 14:39:02 -07:00
Mitchell Hashimoto 9ec94fc6a1 builder/vmware: support floppy_files for mounting a floppy disk 2013-07-09 12:41:36 -07:00
Mitchell Hashimoto 50095283ef builder/virtualbox, builder/vmware: keyboard-interactive [GH-121] 2013-07-02 22:02:58 -07:00
Steven Merrill 58daa1d84e Add a 'skip_compaction' step. 2013-07-02 20:22:11 -04:00
Mitchell Hashimoto 874b4acf1c builder/vmware: output VNC info if headless
/cc @smerrill
2013-07-02 12:23:19 -07:00
Mitchell Hashimoto 67920da4ec Merge pull request #108 from smerrill/headless-mode
builder/vmware, builder/virtualbox: Headless mode
2013-07-02 12:16:40 -07:00
Mitchell Hashimoto c7c22bee3c Merge pull request #115 from bdon/wait
builder/virtualbox, builder/vmware: wait5 and wait10 timers
2013-07-02 12:14:17 -07:00
Brandon Liu 471f33d02e Add wait5 and wait10 special keys for boot command. 2013-07-02 10:31:22 -07:00
Mitchell Hashimoto 4d5edcaac0 builder/vmware: Improve check for VMware cleanup 2013-07-02 09:30:24 -07:00
Mitchell Hashimoto 529f72c084 builder/vmware: No redundant errors 2013-07-02 09:10:44 -07:00
Mitchell Hashimoto 32490fb57c builder/vmware: Style nitpick
/cc @smerrill: I prefer to do state changes at the end. :)
2013-07-02 09:09:55 -07:00
Mitchell Hashimoto c23cd4310b Merge pull request #107 from smerrill/compact-disk
builder/vmware: Compact disk at end of the run
2013-07-02 09:09:15 -07:00
Mitchell Hashimoto e0881a133b builder/vmware: wait for shutdown to avoid corrupt disk files [GH-111] 2013-07-02 09:05:17 -07:00
Steven Merrill ba14170f8f Small fix to be sure "full_disk_path" is put into state. 2013-07-02 01:32:50 -04:00
Steven Merrill 0dd6fcfa47 Small doc fixes. 2013-07-02 01:15:03 -04:00
Steven Merrill bade17edef Integrate code review comments. 2013-07-02 01:12:57 -04:00
Steven Merrill c4c43b1252 Add VMWare headless mode. 2013-07-02 00:13:13 -04:00
Steven Merrill c072a56b40 Finish initial compaction feature. 2013-07-01 22:45:46 -04:00
Steven Merrill 3b49f7bd20 First try at a compaction step. 2013-07-01 22:25:33 -04:00
Steven Merrill c9d0de593e Add a computed FullDiskPath config option. 2013-07-01 22:22:00 -04:00
Mitchell Hashimoto bac976332f builder/virtualbox, builder/vmware: output and VM name based on build
[GH-91]
2013-07-01 11:11:51 -07:00
Mitchell Hashimoto f82aa7c974 builder/vmware: tools_upload_flavor and path
/cc @smerrill
2013-07-01 10:45:50 -07:00
Mitchell Hashimoto a3f47462f5 fmt 2013-07-01 09:39:34 -07:00
Steven Merrill fc06324ca0 Incorporate code review feedback. 2013-06-30 11:10:26 -04:00
Steven Merrill dbad9a4058 Add a method to get the VMware Tools ISO path. 2013-06-29 23:20:38 -04:00
Steven Merrill da3b0f54c7 Upload the linux.iso to /tmp/linux.iso. 2013-06-29 23:08:27 -04:00
Mitchell Hashimoto 9dadd1ce8a builder/vmware: delete unnecessary files from artifact 2013-06-29 13:28:08 -07:00
Mitchell Hashimoto b9fb40b8a5 builder/vmware: populate files properly in artifact [GH-63] 2013-06-29 13:00:34 -07:00
Mitchell Hashimoto e7747b3ef4 builder/vmware: default boot_wait 2013-06-28 22:40:55 -04:00
Mitchell Hashimoto 8aaadf354a builder/virtualbox,vmware: work if port range for HTTP is 0 [GH-53] 2013-06-28 22:00:01 -04:00
Mitchell Hashimoto fb4b940c53 builder/vmware: properly test file URLs 2013-06-28 09:43:49 -04:00
Mitchell Hashimoto 98b4761ef1 builder/virtualbox, vmware: delete output dir if cancelled 2013-06-27 22:23:40 -04:00
Mitchell Hashimoto 0486a90738 builder/vmware: error if output directory exists 2013-06-27 22:15:24 -04:00
Mitchell Hashimoto 8a609b67c1 builder/*: Fail if provisioning fails [GH-33] 2013-06-26 17:54:57 -07:00
Mitchell Hashimoto 53b7b3965f fmt 2013-06-23 20:43:50 -07:00
Mitchell Hashimoto a3c5fed267 builder/vmware, builder/virtualbox: Don't continue if ISO error 2013-06-23 18:23:00 -07:00
Mitchell Hashimoto 39eb9b7497 builder/vmware: Try SSH handshake multiple times 2013-06-23 18:17:38 -07:00
Mitchell Hashimoto 1a8395baab builder/vmware: support the <tab> special in boot commands 2013-06-23 16:09:12 -07:00
Mitchell Hashimoto 24f852f699 builder/vmware: configurable disk size (default 40 GB) 2013-06-23 15:07:19 -07:00
Mitchell Hashimoto 43085e472b builder/vmware: Ability to specify the SSH port with "ssh_port" 2013-06-23 14:30:52 -07:00
Mitchell Hashimoto 6b04876e35 builder/vmware: Log the output of various commands 2013-06-20 12:33:01 -07:00
Mitchell Hashimoto 6d3b09c542 builder/vmware: properly handle errors 2013-06-19 21:20:48 -07:00
Mitchell Hashimoto b9fb065d27 packer: Add Destroy method to artifact
[GH-18]
2013-06-18 16:01:14 -07:00
Mitchell Hashimoto 21b6d2a435 builder/common: multistep debug fn gracefully exits during an interrupt 2013-06-14 15:47:06 -07:00
Mitchell Hashimoto ac029d9ed0 builder/vmware: Use proper pausefn 2013-06-14 15:24:53 -07:00
Mitchell Hashimoto cbd3f59578 builder/vmware: Enable the debug runner 2013-06-14 15:07:34 -07:00
Mitchell Hashimoto a6194467ac builder/*: Adhere to the new interface 2013-06-14 12:29:48 -07:00
Mitchell Hashimoto a0a78b68e8 builder/common: Create a downloader 2013-06-12 17:41:44 -07:00
Mitchell Hashimoto 521b59a6fa Make everything support the new builder interface 2013-06-12 16:06:56 -07:00
Mitchell Hashimoto cbbc8de8b2 builder/vmware: Properly check MD5 2013-06-09 23:12:37 -07:00
Mitchell Hashimoto 520a2706ea builder/vmware: Validate MD5 2013-06-09 23:00:07 -07:00
Mitchell Hashimoto 4b46181f69 builder/vmware: require an MD5 for ISO 2013-06-09 22:47:58 -07:00
Mitchell Hashimoto 896c727097 builder/vmware: Basic support for downloading an ISO 2013-06-09 22:44:35 -07:00
Mitchell Hashimoto 657c3fd87d builder/vmware: better tests around iso_url, test files 2013-06-09 22:08:53 -07:00
Mitchell Hashimoto 62309cb6de Build/Builder take a Cache object now 2013-06-09 22:00:47 -07:00
Mitchell Hashimoto a23500e0a4 builder/vmware: downloadIso step, although not functional yet 2013-06-09 21:50:15 -07:00
Mitchell Hashimoto e39965e32a builder/vmware: validate iso_url more strictly 2013-06-09 21:44:18 -07:00
Mitchell Hashimoto c29d754fa8 builder/vmware: break out the proper loop 2013-06-08 19:26:07 -07:00
Mitchell Hashimoto ccfb4664cf builder/vmware: Make vmx path absolute when checking if running 2013-06-08 19:03:51 -07:00