Commit Graph

470 Commits

Author SHA1 Message Date
Chris Bednarski 24dc798cfb Revert "Prevalidate Hardware Specs on Linux"
This reverts commit eda84cb2d3.
2016-02-02 12:41:43 -08:00
Chris Bednarski 6504f4f777 Revert "Only validate vmware resources on local hosts"
This reverts commit f01578c91e.
2016-02-02 12:41:42 -08:00
Chris Bednarski 7ad2104c7f Revert "Correctly call prepare function in test"
This reverts commit 6e8bfd3ce9.
2016-02-02 12:41:37 -08:00
Chris Bednarski ffb85f6ea5 Merge pull request #3096 from grubernaut/f-resource-limits
Prevalidate Hardware Specs on Linux
2016-01-25 21:06:14 -08:00
Jake Champlin 6e8bfd3ce9 Correctly call prepare function in test 2016-01-25 12:54:15 -05:00
Jake Champlin f01578c91e Only validate vmware resources on local hosts
Disable resource validation when `remote_type` is specified
2016-01-25 12:01:56 -05:00
Jake Champlin eda84cb2d3 Prevalidate Hardware Specs on Linux
Prevalidates hardware resources on Linux platforms for Virtualbox and
VMware builders. This is currently only available on Linux, as enabling
for both Darwin and Windows platforms, relies on cgo bindings that would
prevent effective cross-compilation.

Packer will now fail to build and validate templates if the template is
requesting that the VM to be created would allocate more system
resources than the host system has available.

This _however_ doesn't catch parallel builds that overflow the hosts
resources, will probably still need a better error message for VM's
failing to boot in that case.

Example Outputs:

```
$ $GOPATH/bin/packer build -debug ./vmware-iso.json
Debug mode enabled. Builds will not be parallelized.
vmware-iso output will be in this color.

2 error(s) occurred:

* Unavailable Resources: RAM - Requested - 204800000MB - Available 21721MB
* Unavailable Resources: Disk - Requested - 4000000000MB - Available 76701MB
```

```
$ $GOPATH/bin/packer build -debug ./vbox-iso.json
Debug mode enabled. Builds will not be parallelized.
virtualbox-iso output will be in this color.

2 error(s) occurred:

* Unavailable Resources: RAM - Requested - 10240000MB - Available 21721MB
* Unavailable Resources: Disk - Requested - 1000000000MB - Available 76701MB
```
2016-01-21 18:19:11 -05:00
Chris Bednarski 9358e8c355 Merge branch 'hotfix/rearrange_vmx_cleanup' of https://github.com/israelshirk/packer into b-2709 2016-01-21 13:36:02 -08:00
Anders Quist 077f9621f2 Merge branch 'master' of https://github.com/mitchellh/packer 2016-01-15 08:11:35 +01:00
Chris Bednarski ab721b7cb1 Merge pull request #2898 from markpeek/http-refactor
Refactor http server config into common
2016-01-14 17:10:17 -08:00
Chris Bednarski e6f1ea9ab2 Merge pull request #2911 from jtslear/endless-loop
vmware-iso-builder: Corrects logic checking destroy
2016-01-14 15:00:34 -08:00
Anders Quist 23246c01cf Fix for non consequent if statement (failing ESXi iso builds). 2016-01-10 18:34:21 +01:00
michael 499bd5a362 Add support for SSH Key Authentication with ESX builder 2015-11-03 19:08:35 -08:00
John T Skarbek cf4a19a304 vmware-iso-builder: Corrects logic checking destroy
* I suspect the logic written for checking if the vm has been destroyed is incorrect.  The test will come back from the esx server indicating that the vm is gone as it should, but the logic I believe is reversed so we never hit the break in the if statement
* Feedback is MORE than welcome
2015-11-03 14:49:53 -05:00
Mark Peek 7f149e595d Refactor http server config into common 2015-11-01 14:45:47 -08:00
Yuya Kusakabe 07079a5905 Fix #2892 2015-10-31 19:32:40 +09:00
Mark Peek 581ab9f4f5 Merge pull request #2849 from markpeek/iso-cleanup
Refactor builder ISO options
2015-10-26 21:43:59 -07:00
Mark Peek 0d2fa223f2 builder/vmware-esxi: hide password in ovftool command 2015-10-23 16:51:03 -07:00
Mark Peek 9d0c443ca2 builder/vmware-esxi: Add format validation and step_export tests 2015-10-23 16:50:14 -07:00
Yuya Kusakabe 699c673536 builder/vmware-esxi: Add step_export
If `format` option is configured, packer exports the VM with ovftool.

website: Document about OVF Tool and `format` option.

post-processor/vsphere: Enable to use `mitchellh.vmware-esx` artifact type and OVF and OVA formats, fixes #1457.
2015-10-23 09:00:53 +09:00
Mark Peek cdcffecc2d Refactor builder ISO options
The ISO builders (parallels, qemu, virtualbox, and vmware) had too
much common code which needed to be maintained separately. This change
moves that code to a common ISO configuration.
2015-10-20 16:27:47 -07:00
Brian Dwyer a563944b58 Fix #2695: Prevent duplicate ISO download for multi-builder builds
Add extension to VMware ISO builder to bring in sync with
Virtualbox ISO builder
2015-10-20 12:54:04 -07:00
Mark Peek e9657e6a9f Merge pull request #2642 from oliviertremblay/master
Make TargetPath customizable
2015-10-20 12:11:13 -07:00
Mark Peek e5a713ff01 Alternative fix for #2641: make random script name actually random 2015-10-11 13:31:09 -07:00
Israel Shirk c81a486f34 Rearranges vmware builders to put compaction before VMX finalization to avoid stomping VMX changes 2015-09-18 07:51:46 -06:00
Olivier Tremblay f301a6454d Added documentation, renamed config param to iso_target_path 2015-08-20 07:37:24 -04:00
Olivier Tremblay 661552dfd5 Merge branch 'master' into custom-targetpath 2015-08-20 07:26:22 -04:00
Chris Bednarski 313fcaf0ff Revert backwards-compatibility break in VMX option casing
PR #2309 introduced case-sensitive options in VMX files. This is to support a case-sensitive option called `virtualSSD`. The change made all options case-sensitive, which causes problems with external VMX options provided in user templates. To prevent breakage, this change is being reverted.

- Fixes #2574
- Reverts #2542
- Reverts #2309
2015-08-10 14:52:34 -07:00
Chris Bednarski 263641c537 Fix case for ethernet.generatedAddress property lookup in VMX 2015-08-01 15:09:59 -07:00
Chris Bednarski f8cfd0a1cb Merge pull request #2309 from marc-ta/casesensitivevmxkeys
Updated how vmx entries are handled
2015-07-30 14:31:54 -07:00
Bob Kuo 585638d063 Do not require exclusive VNC access while buildling
An additional client can be connected during build time for inspection.
We can manually connect and set our VNC clients to ignore all input or
we can connect with vnc2flv to record the build session for later
verification.
2015-07-29 10:00:09 -05:00
Olivier Tremblay 223e35fc65 Makes StepDownload's TargetPath customizable.
I exposed TargetPath as a config file option "target_path". I don't like
the name, but it follows the naming convention. The purpose of TargetPath
stands unmodified, and it enables a fair amount of customization.
2015-07-28 07:45:02 -04:00
Marc Siegfriedt e9ef2b987e fixed the test as well 2015-07-01 15:11:40 -07:00
Marc Siegfriedt df1be999dc Fixed case sensitive issue with VMX entries not being overwritten 2015-07-01 15:11:40 -07:00
Marc Siegfriedt 1d7d490c01 updated how vmx entries are handled 2015-07-01 15:11:40 -07:00
Mitchell Hashimoto 4a60e469e9 update CHANGELOG 2015-06-29 09:33:20 -07:00
Israel Shirk 88fac0b49c Have nonesum run stat rather than nonesum because nonesum sums none. k. 2015-06-25 19:03:00 -06:00
Mitchell Hashimoto 9bc0dfa389 builder/vmware: disable VNC before packaging 2015-06-22 14:50:25 -07:00
Mitchell Hashimoto 84189f7a28 builder/*: properly save interpolation context 2015-06-22 09:22:42 -07:00
Mitchell Hashimoto b7dab2689a fmt 2015-06-18 05:23:04 +02:00
Alexander Golovko 15f40a3d00 fix disabling vmware tools for ESX 2015-06-15 15:08:56 -07:00
Marc Siegfriedt 667c53942b use template for additional disks 2015-06-15 12:40:34 -07:00
Mitchell Hashimoto 70af21615e Merge pull request #2233 from mitchellh/b-output-dir
builder/virtualbox,vmware: validate output dir in step
2015-06-15 09:40:36 -07:00
Mitchell Hashimoto 115d583cff helper/communicator: make host more generic 2015-06-13 19:23:33 -04:00
Mitchell Hashimoto b61ed3adfc builder/vmware: convert to helper/comm 2015-06-13 18:52:44 -04:00
Mitchell Hashimoto d851898131 builder/vmware: mirror virtualbox output dir changes 2015-06-13 17:00:14 -04:00
Mitchell Hashimoto 71d8c6610a Merge pull request #1968 from bhcleek/master
do not request a pty
2015-06-13 16:23:31 -04:00
Mitchell Hashimoto 9da9ce6046 vmware/iso: disk_additional_size 2015-06-10 12:41:17 -07:00
Mitchell Hashimoto 3ba9d70b22 Merge pull request #1382 from sneal/AdditionalDisksForVMwareISO
Additional disks for vmware iso
2015-06-10 12:39:50 -07:00
Mitchell Hashimoto 1d653efe90 Merge pull request #2174 from brandonheller/master
vmware/iso: support hierarchical output directories
2015-06-10 11:33:59 -07:00
Mitchell Hashimoto fafdfc962f vmware/common: detect Vmware 'unknown error' and show better message 2015-06-10 11:31:36 -07:00
Mitchell Hashimoto 23a48d6619 go fmt 2015-06-08 21:34:20 -07:00
Mitchell Hashimoto fa2bcb8bc5 update CHANGELOG 2015-06-08 21:33:53 -07:00
Mitchell Hashimoto 2373640881 Merge pull request #1663 from beezly/fix-vnc-missed-keys
Add 1/10th second delay between key events to VNC
2015-06-08 21:31:55 -07:00
Mitchell Hashimoto 9f0b8b71db virtualbox,vmware: http server should listen on IPv4 2015-06-08 20:47:47 -07:00
Shawn Neal e9a491ae45 New interpolation for additional vmware disks 2015-06-04 11:44:07 -07:00
Eric Richardson 5f183026b3 Fix vmware compact_disk step when there are no additional disks 2015-06-04 08:22:50 -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
Brandon Heller a7eeb6a6a7 vmware/iso: support hierarchical output directories
When providing a hierarchical output_directory value like
'transient/jenkins-slave', the VM would fail to build in the CreateDisk
step.  The properly created output directory would not match the location
provided to CreateDisk, since datastorePath() did not properly split such
paths.  Now this case works; tested hierarchical and singular
output_directory values.
2015-06-04 02:49:58 -07:00
Mitchell Hashimoto 3f636ef7f3 vmware/vmx: clarify messaging for source path required error 2015-05-29 17:04:11 -07:00
Mitchell Hashimoto 7e74a38ff8 Merge pull request #2000 from cyberhouse/ifconfig-regex
Make the Vmware build extract the host IP properly from ifconfig stdout
2015-05-28 09:39:32 -07:00
Mitchell Hashimoto 7bd618b56b Merge pull request #1989 from marcomorain/upper-case-mac-address
Fix for VMWare on OSX – MAC address can be upper or lower case
2015-05-28 09:38:23 -07:00
jszwedko b1497b951c code.google.com/p/go.crypto/ssh -> golang.org/x/crypto/ssh
code.google.com/p/go.crypto/ssh is now at golang.org/x/crypto/ssh as of
https://code.google.com/p/go/source/detail?spec=svn.crypto.69e2a90ed92d03812364aeb947b7068dc42e561e&repo=crypto&r=8fec09c61d5d66f460d227fd1df3473d7e015bc6

Using the code.google.com import redirects properly, but runs into
issues if you try to use a subpackage of `ssh`, e.g. `agent` which
refers to golang.org/x/crypto/ssh causing conflicts if your types expect
code.google.com/p/go.crypto/ssh.

This is a precursor to a PR for #1066.
2015-05-28 08:17:49 -07:00
Mitchell Hashimoto 4bb16ac223 fix failing tests 2015-05-27 14:30:59 -07:00
Mitchell Hashimoto c3b75f4b86 vmware/vmx: interpolation 2015-05-27 14:21:15 -07:00
Mitchell Hashimoto f5945eeb1b vmware/iso: new interpolation 2015-05-27 14:16:28 -07:00
Georg Großberger 8c0169b1c4 Make the Vmware build extract the host IP properly from ifconfig stdout 2015-03-25 14:45:15 +01:00
Marc O'Morain 9b2d219cab MAC address can be upper or lower case 2015-03-18 16:40:05 +00:00
Andrew Beresford a81c8905fb Add 1/10th second delay between key events to VNC 2015-03-09 13:58:46 +00:00
Emil Hessman 57468b3d1a builder/vmware/iso: fix incorrect printf verb type in test
Fixes the following vet report:

builder/vmware/iso/builder_test.go:178: arg b.config.DiskSize for printf verb %s of wrong type: uint
2015-02-25 05:43:18 +01:00
Emil Hessman fdb64f6f25 builder/vmware/common: fix missing format argument for Fatalf call in test
Fixes the following vet report:

builder/vmware/common/step_shutdown_test.go:130: missing argument for Fatalf("%s"): format reads arg 1, have only 0 args
2015-02-25 05:43:17 +01:00
Billie H. Cleek 2184892f8a do not request a pty
Change the default behavior from requesting a PTY when executing a
command with the ssh communicator to requesting a PTY only when
configured to do so.

Update the vmware builders to be fully backward compatible with the new
behavior.
2015-02-12 20:18:54 -08:00
Sebastian Röder 555b89567f s/VirtualBox/VMware in comment 2015-01-13 22:43:24 +01:00
Christian Groschupp e9246ec490 builder/vmware/iso: Upload VMX to ESX5 after editing [GH-1422,GH-1083] 2014-11-16 19:48:02 +01:00
Mitchell Hashimoto 0db6cd3533 Merge pull request #1330 from qur/qemu-vagrant
Qemu vagrant
2014-10-28 08:42:17 -07:00
Mitchell Hashimoto cdc0a53f92 builder/vmware: fix compilation issues 2014-10-28 08:37:12 -07:00
Mitchell Hashimoto 6c44d72112 Merge pull request #1403 from notogawa/issue-1334
Fixes #1334, Add power on retry to ESXi Driver.
2014-10-28 08:35:42 -07:00
Mitchell Hashimoto e422a45449 fmt 2014-10-28 08:35:21 -07:00
Mitchell Hashimoto 00543fe582 Merge pull request #1479 from jasonberanek/esxi-remote-cache
buidler/vmware-esxi: Add configuration options for the remote location to cache ISO and floppy files
2014-10-28 08:28:15 -07:00
Mitchell Hashimoto 7ad8f33ddb Merge pull request #1530 from Quintok/master
#1191 - Add VMWare virtualhw.version configuration option under 'version'
2014-10-28 08:27:22 -07:00
Mitchell Hashimoto 51daea504e Merge pull request #1630 from routelastresort/master
builder/vmware: accept SATA drives on root VMX
2014-10-28 08:27:08 -07:00
Mitchell Hashimoto fc5db2604e builder/vmware: FUSION_APP_PATH to specify path [GH-1552] 2014-10-28 08:21:39 -07:00
John Deatherage 68fbf5c21a builder/vmware: accept SATA drives on root VMX 2014-10-28 00:58:46 -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 145056185c builder/vmware: accept SATA drives on root VMX 2014-10-27 16:53:25 -07:00
Joseph Chilcote d46187da4b updated step_clone_vmx.go to work with vmx files using sata 2014-10-20 20:58:12 -07:00
Mitchell Hashimoto d89fd906a4 Merge pull request #1504 from sneal/always-remove-vmx-floppy-entries
Clean VMX step should always remove floppy.
2014-10-14 16:09:28 -07:00
Shawn Neal 5fd9651982 GH 1508 - Ensure Packer VMX is updated and saved
We need to ensure the VMWare process has exited before attempting to run VMX file cleanup steps, otherwise VMWare may overwrite our changes. While Packer does its best to ensure VMWare has exited, there's still a race condition on some OSs between VMWare flushing the VMX and Packer updating it. The workaround is to artifically wait 5 seconds.

When using the VMX builder its possible for the source machine to have a floppy and/or CD-ROM mounted which gets cloned to the new VM Packer spins up, but have no Packer configuration for those devices. With this change we always attempt to remove the mounted devices regardless of the Packer configuration.
2014-09-24 09:42:10 -07:00
Julian Phillips 90a57c411f Expand Artifact API to expose build state
In order that something consuming an artifact can have access to extra
builder specific data add the State method which allows the caller to
ask for arbitary values by name.
2014-09-22 11:15:47 +01:00
Jason A. Beranek 8689301d68 builder/vmware-esxi: Ignore localhost for VNC lookup [GH-1480]
Adds logic to ESXi driver VNC Address function to ignore listen
  addresses that bind to localhost (127.0.0.1), this allows certain
  default ports to be available on ESXi for VNC connections
2014-09-16 22:00:52 -05:00
Shawn Neal 7d9c252b3a Clean VMX step should always remove floppy.
When using the VMX builder its possible for the source machine to have a floppy configured which gets cloned to the new VM Packer spins up. When the new VM's Packer config doesn't have a floppy_files config entry, the Packer clean VMX step fails to remove the floppy disk from the new VM. This can cause build failures, for example with the vsphere post processor; generating errors like:

* Post-processor failed: Failed: exit status 1
Error: File (/home/teamcity/tmp/buildTmp/packer941120499) could not be found.

Opening the cloned VM's VMX file you can clearly see it has a floppy entry from the source machine's VMX file (exact same path) even though the Packer config contains no floppy_files entry.
2014-09-16 18:27:00 -07:00
John Deatherage e571a133b0 fixed vmware-vmx step order 2014-09-14 04:28:55 -07:00
Ross Smith II a7aa20c8c7 Add support for VMware Fusion 7 Pro [GH-1478] 2014-09-10 10:14:50 -07:00
Jason A. Beranek b6eb3eba1d builder/vmware-esxi: Add configuration options for remote cache path
Add configuration option to explicitly control where Packer uploads
  ISO and floppy files to on ESXi hosts. The `remote_cache_datastore`
  defaults to the `remote_datastore` value. The 'remote_cache_directory'
  defaults to 'packer_cache', similar to the local caching capabilities.

  Addresses issues with [GH-1218] and [GH-1221] where paths for uploaded
  ISO and floppy files are not written to a valid location in the
  datastore.
2014-09-10 00:10:06 -05:00
Mitchell Hashimoto 75395af12d Merge branch '1064-fix-upload-file-permissions' of github.com:rasa/packer into rasa-1064-fix-upload-file-permissions
Conflicts:
	builder/parallels/common/step_upload_parallels_tools.go
	builder/vmware/common/step_upload_tools.go
	provisioner/chef-client/provisioner.go
	provisioner/chef-solo/provisioner.go
2014-09-08 13:20:46 -07:00
Mitchell Hashimoto 812ba35479 fmt 2014-09-08 10:28:21 -07:00
Mitchell Hashimoto 1a45b96674 builder/vmware: add VNC to vmx 2014-09-05 12:10:40 -07:00
Mitchell Hashimoto b72605c2f6 builder/vmware: style 2014-09-05 12:01:07 -07:00
Mitchell Hashimoto 759c46487c builder/vmware-vmx: support http files 2014-09-05 11:59:46 -07:00