Commit Graph

141 Commits

Author SHA1 Message Date
Adam Robinson 29b89e63b8 add support for hvf accelerator to qemu builder 2018-04-27 10:11:20 -04:00
Matthew Hooker 024fac4b4f
Merge pull request #6129 from hashicorp/bc_replace
Replace boot command parser with PEG parser.
2018-04-20 12:21:20 -07:00
Evgeni Golov 5a10e5a038
fix invalid disc_discard setting error message 2018-04-20 13:17:40 +02:00
Matthew Hooker c8e76ce298
implement config struct for qemu 2018-04-19 14:26:31 -07:00
Matthew Hooker bf0a320125
Implement new parser for qemu boot command 2018-04-19 14:26:29 -07:00
Matthew Hooker baf8d30ad2
Merge pull request #5738 from testworksau/intel-haxm-support
Add Intel HAXM support to QEMU builder
2018-01-31 12:41:15 -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
Glenn McDonald 7250c4f7f0 Add Intel HAXM support to QEMU builder 2017-12-29 11:51:57 +11:00
Ammar Ansari b8bd66d10d Align virtual disk size for qemu builder
When booting from a disk image, the Qemu builder resizes the disk to 40000
which is not a multiple of 1kB. This causes problems while booting from the image.
Updating the default disk size to 40960 fixes this issue
2017-11-15 15:00:13 -05:00
Matthew Hooker 81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
Matthew Hooker 22d1322bd9
always check for an error first when walking a path 2017-01-26 16:32:21 -08:00
Rickard von Essen 85cf00069f Merge pull request #4294 from legal90/iso-target-extension
Add "iso_target_extension" option for all local *-iso builders
2017-01-04 13:48:28 +01:00
DanHam 13bb4d153a
qemu builder now needs to explicitly set WinRMPort for StepConnect
Same as vbox builders, aligns qemu with changes to
helper/communicator/step_connect.go introduced by PR #2576
2016-12-23 23:15:51 +00:00
Mikhail Zholobov 57d07f227a
Add "iso_target_extension" option for all local *-iso builders
This option allows to set the extension of the ISO file after download.
Defaults to "iso". It makes sense for building Mac OS X guests, where the
bootable image is actually a DMG, not an ISO.
In particular, it is important for "parallels-iso" builder to set the right extension.
2016-12-17 12:50:30 +02:00
Matthew Hooker 0339fcc442
builder/qemu: add use_default_display option
If set, won't set `-display dsl` as a default argument. Useful for osx
compatibility.
2016-12-16 17:44:54 -08:00
Matthew Hooker d920b3fbf4 run gofmt 2016-11-01 14:08:04 -07:00
Rickard von Essen 3c8dabba9e Fixed formatting 2016-10-11 23:43:50 +02:00
Rickard von Essen 5e96709ee9 Merge pull request #2919 from arizvisa/floppy-recurse
Added an option for copying entire subdirectories via floppy_dirs (supplants floppy_files)
2016-10-08 16:51:16 +02:00
Ali Rizvi-Santiago 86c00490e9 Renamed any and all instances of the word "FloppyContents" to "FloppyDirectories".
Ensure that all builders include FloppyDirectories in the StepCreateFloppy options.
Changed the way the unit-tests in common/step_create_floppy_test work to use the static test-fixtures directory instead of creating the paths dynamically.
Removed a duplicate line of documentation from parallels-pvm.html.md that occurred during rebasing.
2016-09-27 23:31:42 -05:00
Orivej Desh 6762965696 Add -on-error command line argument to allow preserving artifacts on builder errors
Resolves #409
2016-09-16 12:15:00 +00:00
Rickard von Essen 3ab49595e6 Merge pull request #3681 from yoctocloud/communicator
builder/qemu: dont fail on communicator set to none
2016-09-13 22:45:12 +02:00
Ali Rizvi-Santiago a3f0308e92 Re-implemented the support for the floppy_files keyword in order to remain backwards-compatible with templates using the old syntax.
Moved the support for recursive paths from the floppy_files keyword to the new floppy_contents keyword.
Shifted some of the code around to add better logging of what's actually being copied.
Added a couple of unit-tests for the new floppy_contents implementation.
Ensured that all files that were being added were also being included in state.FilesAdded so that the older unit-tests will work.
2016-09-12 11:56:25 -05:00
Ricard Clau acededfc6e tests actually test the floppies 2016-07-27 21:59:21 +01:00
Vasiliy Tolstov 83f175cac7 builder/qemu: dont fail on communicator - none
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-07-07 00:49:23 +03:00
Ian Duffy fa273f3bea Allow configurable VNC bind IP for QEMU
This commit allows for a user configurable VNC bind IP to be used for
QEMU.

By default this will be 127.0.0.1, alternatively, a user can use
0.0.0.0 which will bind to all interfaces.

This pull request should satisfy concerns of #3570 and #3559. It is
also in-line with the functionality provided by #3566 and #3565

Signed-off-by: Ian Duffy <ian@ianduffy.ie>
2016-05-25 10:10:12 +01:00
Chris Bednarski 24cf28d4b6 Merge branch 'yoctocloud-accelerator' 2016-05-19 22:54:19 -07:00
Chris Bednarski bff939b373 Added comment on why we need to open /dev/kvm before using it 2016-05-19 22:53:53 -07:00
Vasiliy Tolstov 0f638f9111 builder/qemu: add simple kvm/tcg autodetection
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-05-18 15:38:38 +03:00
Sean Chittenden 98bae9c98e
Pause between boot_commands when debugging a QEMU build
When debugging a build (or maintaining an existing packer template), teach `packer build -debug` how to step through individual `boot_command`s in order to triage the packer template.
2016-05-17 17:14:50 -04:00
James Bishopp bd8fb014c4 Removed ssh_key_path
- removed backwards compatibility code
- ensured key usage came from SSHPrivateKey configuration
- changed tests to use private_key
2016-02-12 17:24:42 -08:00
Vasiliy Tolstov d96283e475 qemu: allow to use live iso without cache
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-01-25 10:44:42 +00:00
Mark Peek 7f149e595d Refactor http server config into common 2015-11-01 14:45:47 -08:00
Vasiliy Tolstov 8e1cc16ab5 add convert step for qcow2 image format
https://ext4.wiki.kernel.org/index.php/Ext4_VM_Images does not
recommends to dd zero file and deletes it, but in case of enabling
discards and qcow2 image we can recreate qcow2 file with less used
space.
Also qemu-img able to enable compression for qcow2 files, that
sometimes may be useful because it natively supported by qemu.

Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-10-29 12:27:46 +00:00
Mark Peek c3d77dc5a1 Fix unintended BC issues in ISO option refactoring 2015-10-26 17:39:48 -07: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
Mark Peek e9657e6a9f Merge pull request #2642 from oliviertremblay/master
Make TargetPath customizable
2015-10-20 12:11:13 -07:00
Vasiliy Tolstov 48f8612b72 add virtio-scsi
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-09-15 10:59:29 +00:00
Chris Bednarski bf733b75d5 Revert "By default, Qemu will now have an extension added based on the file format. This is a change to more closely match behavior from 0.7.5."
This reverts commit 55fadd96bc.
2015-08-21 16:46:29 -07:00
Olivier Tremblay 6644f57160 Merge branch 'master' into custom-targetpath 2015-08-20 08:20:55 -04:00
Olivier Tremblay f301a6454d Added documentation, renamed config param to iso_target_path 2015-08-20 07:37:24 -04:00
Chris Bednarski 55fadd96bc By default, Qemu will now have an extension added based on the file format. This is a change to more closely match behavior from 0.7.5. 2015-08-18 17:44:17 -07: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
Mitchell Hashimoto 5852bd7cd7 builder/qemu: default acceleration to tcg on Windows [GH-2284] 2015-06-22 17:56:35 -07:00
Mitchell Hashimoto 84189f7a28 builder/*: properly save interpolation context 2015-06-22 09:22:42 -07:00
Mitchell Hashimoto 115d583cff helper/communicator: make host more generic 2015-06-13 19:23:33 -04:00
Mitchell Hashimoto 89af447c8c builder/qemu: convert to helper/comm 2015-06-13 18:47:59 -04:00
Mitchell Hashimoto 77af5f83f7 Merge pull request #2120 from vtolstov/discard
add discard option to qemu builder
2015-05-27 20:18:11 -07:00
Mitchell Hashimoto 3e76547bff bulder/qemu: convert interpolation 2015-05-27 13:39:43 -07:00
Vasiliy Tolstov 3984f5e6f6 add discard option to qemu builder
Enabling discards for disk can greatly minimize disk size then user
inside vm use fstrim command or trim/discard unneded blocks.

Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-05-17 20:48:58 +03:00
Seth Vargo 96c813684e Merge pull request #1645 from vtolstov/qemu_disk
Allow none checksumtype for qemu builder
2014-11-26 16:28:19 -05:00
Vasiliy Tolstov 16110c6be6 add CD-ROM only if not used disk_image, also boot from it only if CD-ROM present
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-11-06 23:13:09 +03:00
Vasiliy Tolstov 4762075dc3 add missing variable
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-31 16:15:23 +03:00
Vasiliy Tolstov 5631873727 allow none checksumtype for qemu builder (copy/paste from virtualbox)
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-31 16:07:04 +03:00
Mitchell Hashimoto 06144cf287 fmt 2014-10-28 08:43:19 -07:00
Mitchell Hashimoto 0db6cd3533 Merge pull request #1330 from qur/qemu-vagrant
Qemu vagrant
2014-10-28 08:42:17 -07:00
Mitchell Hashimoto 60e2a8b5fc Merge pull request #1342 from iwebhosting/qemu-image-support
Add support for building QEMU images from pre-existing image files
2014-10-28 08:38:51 -07:00
Vasiliy Tolstov e1e3d3c1e1 fix quote in variable name
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-28 17:25:53 +03:00
Mitchell Hashimoto c161f9adc5 Merge pull request #1558 from vtolstov/qemu_cache
builder/qemu: add ability to set cache mode for disk
2014-10-27 16:56:16 -07:00
Vasiliy Tolstov 8efc8ec984 add ability to set cache mode for disk
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-06 01:09:45 +04:00
Kent Holloway 2755ba1751 Changing machinetype default to PC instead of PC-1.0 which seems to be a saner default that works on more platforms. RedHat in particular doesnt have PC-1.0 2014-10-03 10:37:03 -05:00
Julian Phillips 60e608dfdb Add support for vagrant with qemu
Once we have produced a qemu VM, we now have the option of using
the vagrant post-processor to create a .box file that can be used with
the vagrant-libvirt plugin.

This uses the new State method of the Artifact API to get necessary
information from the builder.
2014-09-22 11:15:47 +01:00
Mitchell Hashimoto 76a8221636 builder/*: extract key path to ssh.Signer 2014-09-03 20:23:39 -07:00
Mitchell Hashimoto 78c534227a Merge branch 'master_add_support_for_tcg_accel_in_qemu_builder_' of github.com:mattthias/packer into mattthias-master_add_support_for_tcg_accel_in_qemu_builder_
Conflicts:
	builder/qemu/builder.go
	website/source/docs/builders/qemu.html.markdown
2014-09-02 09:31:53 -07:00
Mitchell Hashimoto 88c186df39 Merge branch 'master' of github.com:matthbak/packer into matthbak-master
Conflicts:
	builder/qemu/step_run.go
2014-09-02 09:24:31 -07:00
Hiroyuki Sato 965d273907 Add machine_type option for qemu builder.
On CentOS7, ``pc-1.0'' qemu-kvm machine type are not supported.

Supported machines are:
none                 empty machine
pc                   RHEL 7.0.0 PC (i440FX + PIIX, 1996) (alias of pc-i440fx-rhel7.0.0)
pc-i440fx-rhel7.0.0  RHEL 7.0.0 PC (i440FX + PIIX, 1996) (default)
rhel6.5.0            RHEL 6.5.0 PC
rhel6.4.0            RHEL 6.4.0 PC
rhel6.3.0            RHEL 6.3.0 PC
rhel6.2.0            RHEL 6.2.0 PC
rhel6.1.0            RHEL 6.1.0 PC
rhel6.0.0            RHEL 6.0.0 PC
q35                  RHEL-7.0.0 PC (Q35 + ICH9, 2009) (alias of pc-q35-rhel7.0.0)
pc-q35-rhel7.0.0     RHEL-7.0.0 PC (Q35 + ICH9, 2009)
2014-08-12 16:02:03 +09:00
Matthew Baker 99d15abfd2 adding allowed values for accelerator 2014-08-07 02:51:24 -07:00
Matthias Schmitz 65f71daf73 Allow 'tcg' as accelerator in builder-qemu
* Using 'tcg' as accelerator for qemu-system allows packer to run in a
  virtual machine as no kvm or xen support is needed.

* Also document the default behavior if no accelerator is given in the
  documentation.
2014-08-05 22:46:47 +02:00
Matthew Baker c87c88fce2 OEL available net device 2014-07-29 07:41:07 -07:00
iweb d7268a11f7 Add support for building QEMU images from pre-existing image files
If the `disk_image` parameter is set to true treat the ISO location
as the source of the disk image, copy it to the destination,
resize and boot it.
2014-07-17 15:05:46 +01:00
higebu f087ce16dc Fix the build problem by updating ssh package 2014-04-15 10:17:26 +09:00
Stefano Zanella 85dcdcfead builder/qemu: support user templates in SSH key path 2014-02-27 18:37:44 +01:00
Mitchell Hashimoto 868a64ebbc fmt 2014-02-21 16:48:30 -08:00
Mitchell Hashimoto 0fd7bdd3f5 builder/qemu: style 2014-02-21 15:22:58 -08:00
Mitchell Hashimoto 1b23af2667 Merge pull request #854 from qur/qemu-config-binary
builder/qemu: binary name to be configured
2014-02-21 15:22:27 -08:00
Mitchell Hashimoto d2fe49d6a2 builder/qemu: document run_once is gone (but keep it around for compat) 2014-02-21 15:18:03 -08:00
mheidenr cfb9b4d65d enable qemu builder to handle reboots in the shell provisioner 2014-01-30 08:46:54 +01:00
Julian Phillips a8993662b5 Allow Qemu binary name to be configured
On some systems the default Qemu binary name of qemu-system-x86_64
isn't appropriate.  So expose the binary name as a configurable item,
allowing the user to set it to something more appropriate if they need
to.
2014-01-24 18:01:42 +00:00
Mitchell Hashimoto 80c2f0fcd0 Merge pull request #690 from TranscendComputing/master
builder/qemu: added template processing for QemuArgs, floppy_files for auto-building f...
2013-12-12 14:46:08 -08:00
Thomas D. Hite 08f5131746 Added template processing for QemuArgs, floppy_files for auto-building floppies which attach to the VM at startup, and run_once flag to trigger just one powerup/powerdown. 2013-12-06 18:20:25 -06:00
Phil Fenstermacher c4ae11589d Changed error message and docs to match code - qemu-img options are qcow2 and raw 2013-12-04 14:05:07 -05:00
Mitchell Hashimoto 170e2459ff builder/qemu: remove constructor, more Go-like 2013-11-05 21:43:20 -08:00
Mitchell Hashimoto 3bc0c4aa25 builder/qemu: simplify driver, make things more Go-like 2013-11-05 21:40:49 -08:00
Mitchell Hashimoto d78787e182 builder/qemu: remove floppy support, not used currently 2013-11-05 18:11:38 -08:00
Mitchell Hashimoto 385a338354 builder/qemu: get rid of unnecessary step 2013-11-05 17:48:16 -08:00
Mitchell Hashimoto e982eb38dc builder/qemu: alphabetize some things 2013-11-05 17:47:22 -08:00
Mitchell Hashimoto e44aea496d builder/qemu: passing tests 2013-11-05 15:44:38 -08:00
Tom Hite 5e9b035031 Fixes #3 via minor documentation fix and setting default properly (in the net_device template value, virtio is incorrect -- must be virtio-net). 2013-10-09 07:11:10 -05:00
Tom Hite 2f8f2d5ad1 Fixes #1 and Fixes #2 by allowing qemuargs to operate and override defaults. 2013-10-07 20:58:08 -05:00
Tom Hite ba1ca4d2fb changed error string referring to 'ova' and 'ovf' to refer to 'qcow2' and 'img' as the former were stray leftovers from the virtualbox code used as a basis for this plugin. 2013-09-03 20:13:45 -05:00
Tom Hite d58a209b73 added network and disk driver options, also a source comment on the kickstart file in the docs (I can't find the original source). 2013-09-03 10:08:04 -05:00
Tom Hite 30d004022e Initial checkin to GitHub -- has extensive changes to conform to the latest API model to match the 0.3.6 (Sept. 2, 2013) release. 2013-09-02 22:23:52 -05:00