Commit Graph

193 Commits

Author SHA1 Message Date
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 a46c071143
fix regex. need to account of XXhYYm etc 2016-12-08 15:12:48 -08:00
Matthew Hooker 1e96aa845b
fix wait boot_command regex.
Resolves #4268
2016-12-08 15:12:40 -08:00
Rickard von Essen 96e9a8e6e9 Removed default value for ssh_username 2016-11-17 22:30:34 +01:00
febc.yamamoto 6088c1887c Fix keycodes for ctrl,shift and alt key when sending over VNC 2016-11-04 19:26:14 +09: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
Rickard von Essen 3ad7f067ab Merge pull request #2784 from orivej/fix-ssh-port-max
Make ssh_host_port_max an inclusive bound to agree with documentation
2016-10-02 00:12:37 +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
Rickard von Essen c95aab5e0e Merge pull request #3888 from yoctocloud/qemu
builder/qemu: specify disk format to avoid errors
2016-09-22 08:43:40 +02:00
Rickard von Essen 06e3539ffa Merge pull request #3767 from taliesins/ExtendScanCodes
Add support for ctrl, shift and alt keys and using them as key modifier.
2016-09-20 21:36:46 +02:00
Rickard von Essen 13c9db5dd5 Merge pull request #3885 from orivej/on-error
Add -on-error command line argument to allow preserving artifacts on builder errors
2016-09-20 12:28:14 +02:00
Matthew Hooker 7cbb98f2d5 QemuArggs -> QemuArgs
Avast ye, resolves #3901
2016-09-19 14:34:13 -07: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
Vasiliy Tolstov 4986ef39b2 builder/qemu: specify disk format to avoid errors
Image format was not specified for XXX and probing
guessed raw.
Automatically detecting the format is dangerous for raw images, write
operations on block 0 will be restricted.
Specify the 'raw' format explicitly to remove the restrictions.

Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-09-15 17:59:05 +03: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
Taliesin Sisson 1155c6d4d6 Use the correct fmt verb for log output 2016-07-31 19:46:38 +01:00
Taliesin Sisson a87ad05866 Add support for ctrl, shift and alt keys.
Add support for using ctrl, shift and alt as key modifiers. So you can now achieve ctrl+c by using "<leftCtrlOn>c<leftCtrlOff>".

Updated documentation for new key stroke tokens.
2016-07-31 19:05:10 +01: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
Isa 8e86308cb4 don't use invalid -q flag for qemu-img
fix lacking coma
2016-06-23 14:49:56 -07: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
Brian Candler 873760e69e Clarify how to run with logs if qemu fails to start (#3561) 2016-05-20 14:25:52 -07: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
Vasiliy Tolstov e5276b31a3 fix assign to driveArgs
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-03-01 21:15:51 +00:00
Chris Bednarski fee00baf6a Revert "close #3192"
This reverts commit 3b8f0023e5.
2016-02-29 13:51:47 -08:00
Vasiliy Tolstov 3b8f0023e5 close #3192
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-02-26 14:05:43 +00: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
Dan Sedlacek 279555b8e1 Added ability to see what SSH Port packer generated in template data 2016-02-12 11:39:08 -08:00
Vasiliy Tolstov 2104fcec69 builder/qemu: allow to specify time.Duration in special <wait> command
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-02-02 09:13:37 +00: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
Chris Bednarski db0e098800 Merge pull request #2750 from rickard-von-essen/issue-2743
Fixes #2743: Change log messages for step_forward_ssh
2016-01-21 13:28:44 -08:00
Mark Peek 7f149e595d Refactor http server config into common 2015-11-01 14:45:47 -08:00
Mark Peek 31dd989e2e Add qcow2 shrink/compress tests for #2748 2015-10-31 18:15:19 -07: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
Mark Peek c48548b3bb go fmt 2015-10-18 11:13:09 -07:00
Orivej Desh 46d687d5ad Make ssh_host_port_max an inclusive bound to agree with documentation 2015-09-29 03:09:38 +00:00
Rickard von Essen e4dc543cae Fixes #2743: Change log messages for step_forward_ssh
Changed the log messages and changed the m name of the
VirtualBox builder NAT rule name from packerssh to
packercomm.
2015-09-17 13:43:08 +02:00
Vasiliy Tolstov 48f8612b72 add virtio-scsi
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-09-15 10:59:29 +00:00
Vasiliy Tolstov 3fae902bc3 enable discards only on qemu >= 2
older qemu versions does not have discard option, so not enable it

Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-09-08 10:40:23 +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
Chris Bednarski c8d1c650f0 Revert "Updated test for qemu VMName. Previously (0.7.5) a file extension was automatically added to the VMname but this logic is not exposed for testing."
This reverts commit d13647ee0f.
2015-08-21 16:45:47 -07:00
Chris Bednarski d13647ee0f Updated test for qemu VMName. Previously (0.7.5) a file extension was automatically added to the VMname but this logic is not exposed for testing. 2015-08-20 14:03:16 -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
Olivier Tremblay 661552dfd5 Merge branch 'master' into custom-targetpath 2015-08-20 07:26:22 -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
Chris Bednarski cabbe007dd Merge pull request #2415 from DrewDahl/fix-qemu-vnc-missed-keys
Add 1/10th second delay between key events to VNC for QEMU
2015-08-03 15:57:52 -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
Andrew Dahl 1f6137e636 Add 1/10th second delay between key events to VNC for QEMU 2015-07-08 16:55:25 -05: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 ba2cf18460 Merge branch 'master' of https://github.com/ldx/packer into ldx-master 2015-06-18 10:18:17 +02:00
Mitchell Hashimoto fd40b714c4 Merge pull request #2118 from vtolstov/image
remove image format from image name in qemu builder
2015-06-18 10:16:51 +02:00
Mitchell Hashimoto b7dab2689a fmt 2015-06-18 05:23:04 +02:00
Bob Kuo b77fcd90f3 Force qemu to use a VNC port by setting vnc_min_port == vnc_max_port
Similar to Issue #1288, this prevents a crash when we set the VNC
minimum port equivalent to the VNC maximum port
2015-06-17 16:07:38 -05:00
Mitchell Hashimoto 523a3342b8 builder/qemu: fix tests 2015-06-15 10:15:08 -07:00
Mitchell Hashimoto c76bed37ec Merge pull request #2236 from mitchellh/b-qemu-ssh
builder/qemu: use proper ssh port [GH-2074]
2015-06-15 09:41:28 -07:00
Mitchell Hashimoto ea86cb4c7e builder/qemu: use proper ssh port [GH-2074] 2015-06-13 19:30:16 -04: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 23a48d6619 go fmt 2015-06-08 21:34:20 -07:00
Vasiliy Tolstov 3d94462e37 remove image format from image name
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-06-08 14:44:26 +03: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 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
Vilmos Nebehaj 956b9ded0a Try another ssh port if the current one is taken. 2015-04-10 17:55:51 -07:00
Emil Hessman cceb4b2868 builder/qemu: fix incorrect printf verb type
Fixes the following vet report:

builder/qemu/builder_test.go:163: arg b.config.DiskSize for printf verb %s of wrong type: uint
2015-02-25 05:43:17 +01: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 2126615b3d disk_filename is used for artifacts, but it missed in case of disk_image = true
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-11-06 23:47:00 +03: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
Kent Holloway 9e2d0af5ab Reverting previous change, including M on memory line to be explicit about what we are requesting 2014-10-06 10:11:39 -05: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 6b5a505384 -redir is deprecated and missing on some versions of QEMU, using -netdev instead which is recommended. Removing M letter from Memory flag as QEMU now assumes this value is always in MB and errors out if you pass the M as a part of the command 2014-10-03 10:39:57 -05: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
Kent Holloway 2cf7e694bc Fix for panic when ssh min and max port is the same for qemu builder. Taken directly from a previous patch by mitchellh 8f50d2dd9a 2014-10-03 10:14:02 -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
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
Mitchell Hashimoto 76a8221636 builder/*: extract key path to ssh.Signer 2014-09-03 20:23:39 -07:00
Mitchell Hashimoto 6bbf64c5ab builder/qemu: use 512M for -m [GH-1444] 2014-09-02 11:19:12 -07:00
Mitchell Hashimoto 752162c234 fmt 2014-09-02 09:55:06 -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