Commit Graph

447 Commits

Author SHA1 Message Date
Ali Rizvi-Santiago 0f019407d6 Updated things related to the general hw config in the virtualbox builders to correspond to @azr's suggestions. 2018-11-22 20:48:00 -06:00
Ali Rizvi-Santiago eca26f43f2 Renamed both `cpu_count` and `memory_size` to `cpus` and `memory` (respective). 2018-11-17 06:34:22 -06:00
Ali Rizvi-Santiago 51948daf92 Added options for the cpu count, memory, audio, and usb to the virtualbox builder. 2018-11-17 06:19:54 -06:00
Adrien Delorme 410bee0666 make TestStepShutdown_shutdownDelay less strict on schedule 2018-10-17 12:49:38 +02:00
Adrien Delorme 0237956e66 builder/virtualbox/common/step_shutdown_test.go: compare durations instead of floats & ouput duration 2018-10-17 11:19:57 +02:00
Megan Marsh 38cc525ec7 new option allowing user to clean up the ephemeral ssh key from the authorized_keys file 2018-09-14 11:06:38 -07:00
Adrien Delorme 51d2aac9f6 SSHPrivateKey => SSHPrivateKeyFile 2018-08-29 14:40:32 +02:00
Megan Marsh 340363a649
Merge pull request #6613 from hashicorp/merge_ssh_config_funcs
Merge ssh config funcs from builders
2018-08-23 16:03:36 -07:00
Megan Marsh 31d4f8af45 use a time.Duration instead of a hardcoded ms 2018-08-23 13:16:01 -07:00
Megan Marsh 918db58604 added new template variables to replace PACKER_KEY_INTERVAL with tunable key and keygroup intervals depending on driver used 2018-08-22 11:37:56 -07:00
Adrien Delorme 41f6e0334d refactor all copy pasted sshConfig with into communicator.Config.SSHConfigFunc
* still need to append the auth methods into an array for gracefullness
2018-08-22 17:02:23 +02:00
Adrien Delorme 6b3844a64f
Revert "allow to use ISO images in-place v.s. copying them" 2018-08-20 10:48:06 +02:00
Adrien Delorme 17f2949e36 remove stuttering; ISOConfig.InplaceISO -> Inplace 2018-08-15 15:51:25 +02:00
Adrien Delorme 82e480a285 allow to use ISO images inplace v.s. copying them 2018-08-15 14:37:38 +02:00
M. Marsh c67d59515c
Merge pull request #6370 from arizvisa/patch-1
Allow StepAttachIso in the VirtualBox builder to resolve symbolic links when processing the IsoPath.
2018-06-27 10:30:30 -07:00
Alexander Georgievskiy ec8747a042 They finally added https on download.virtualbox.org
Because downloading SHA256SUMS via http is a fun joke
2018-06-22 00:45:20 +03:00
Ali Rizvi-Santiago 47a3315fde
Added a missing reference to the "path/filepath" module.
Lol. Dammit.
2018-06-11 18:07:43 -05:00
Ali Rizvi-Santiago 963932699e
Remove a stray tab that resulted from poor usage of Github's file editor.
That's what I get for not making a proper branch...
2018-06-11 18:02:52 -05:00
Ali Rizvi-Santiago 9b30c9aed0
Allow StepAttachIso in the VirtualBox builder to resolve symbolic links when processing the IsoPath.
This just closes out a really old issue (#3437) by using `filepath.EvalSymLinks` to resolve the symbolic link that the user specifies for the IsoPath.
2018-06-11 17:53:54 -05:00
DanHam 13b7078cb0
Remove tmp directories created by builder/virtualbox/common tests 2018-04-30 20:38:03 +01:00
Matthew Hooker a0c9ddb9ae
implement boot config struct for virtualbox 2018-04-19 14:26:31 -07:00
Matthew Hooker c6299972b9
s/boot_command/bootcommand/ 2018-04-19 14:26:31 -07:00
Matthew Hooker 94129b7fe3
we're using PC-XT (set1) not PC-AT 2018-04-19 14:26:30 -07:00
Matthew Hooker a46a7afa20
Remove old tests. 2018-04-19 14:26:29 -07:00
Matthew Hooker 81d127768c
Add key press interval to virtualbox. 2018-04-19 14:26:29 -07:00
Matthew Hooker 59376294ef
Maximize scancode throughput.
Let's cache the scancodes and flush them at the end. Also make sure to
send only as many as the driver can send correctly. It's important here
to chunk the scancodes correctly, so that we don't accidentally split them
over successive calls to the driver
2018-04-19 14:26:29 -07:00
Matthew Hooker 9b7704c714
Implement new parser for Parallels boot command 2018-04-19 14:26:29 -07:00
Matthew Hooker 99d61920d0
Abstract vbox driver into PC-AT driver. 2018-04-19 14:26:29 -07:00
Matthew Hooker e4af71858f
Implement new parser for Virtualbox boot command
Remove boot wait for virtualbox run step
2018-04-19 14:26:29 -07:00
Matthew Hooker 673245afcf
Replace boot command parser with PEG parser. 2018-04-19 14:26:28 -07:00
Andrew Pennebaker fdc6ac631a fix vbox scancodes and support critical key combinations during boot-time operations 2018-03-26 18:35:45 -05:00
Matthew Hooker 49958391b3
better error when source_path doesn't exist. 2018-03-19 09:58:39 -07:00
Megan Marsh 414dd80e61
Merge pull request #6013 from jsoref/spelling
Spelling
2018-03-14 09:50:27 -07:00
Josh Soref 964d5dd55e spelling: mapstructure 2018-03-13 08:09:41 +00:00
Josh Soref 57c0e9e4a7 spelling: illegal 2018-03-13 08:02:43 +00:00
Josh Soref 041a115f65 spelling: existent 2018-03-13 08:15:56 +00:00
Megan Marsh 5055fa66aa
Merge pull request #5987 from mcandre/multibyte-scancodes
send multibyte scancodes accurately to virtualbox
2018-03-12 16:23:41 -07:00
Megan Marsh 2a88672cd9 add test for modifyer keypress commands 2018-03-12 15:08:30 -07:00
Andrew Pennebaker 1d48812b34 fix later commands overwriting earlier commands 2018-03-09 20:17:43 -06:00
Andrew Pennebaker f305a2f4c2 send multibyte scancodes accurately to virtualbox 2018-03-07 10:59:02 -06:00
SwampDragons 7d5d62d748
Merge pull request #2906 from arizvisa/GH-2377
Improved support for downloading and validating a uri containing a Windows UNC path or a relative file:// scheme
2018-02-05 09:53:47 -08:00
Matthew Hooker 8cd403425e
test fixes WIP 2018-01-24 17:09:17 -08:00
Matthew Hooker 5d48d658b4
Wire context through misc steps
Some steps actually need to pass the context around, so let's create
a ctx variable and pass it.
2018-01-24 17:09:17 -08: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 ebe995c0ff
run goimports 2018-01-22 17:21:10 -08:00
Ali Rizvi-Santiago c17f827e1d Split up DownloadableURL() into it's individual components: SupportedURL(), DownloadableURL(), and ValidatedURL(). Updated all instances of DownloadableURL() to point to ValidatedURL(). Reverted the tests that are based on un-supported protocols. 2018-01-16 13:37:32 -06:00
Ali Rizvi-Santiago 3cf448f6ec Reverted previously removed additions of tests that check for ftp:// or nonexistent-protocol:// using DownloadableURL. DownloadableURL's responsibility is not to have inherent knowledge of protocols that are available, but to format an invalid url/path to a valid url/path. 2018-01-16 13:37:32 -06:00
Ali Rizvi-Santiago 5d97b105a8 Removed implementation of the ftp protocol and the usage of cheggaaa's progress-bar as suggested by @SwampDragons. Replaced some of the old smoke-tests that were based on the ftp-protocol non-existing with a "non-existent://" protocol that's guaranteed to not exist. 2018-01-16 13:37:31 -06:00
Ali Rizvi-Santiago e940dc7e42 Fixed a config_test that should've failed but didn't because ftp:// uris work now. HeH! 2018-01-16 13:37:31 -06:00
SwampDragons fb730cf521
Merge pull request #5761 from hashicorp/fix_5713
fix nasty edge case where we can't find guest additions on windows if they are on a different drive
2018-01-11 11:48:26 -08:00
Megan Marsh 3ace5bb91b simplify FileExistsLocally 2018-01-10 16:11:17 -08:00
Megan Marsh 216c44b153 fix FileExistsLocally 2018-01-09 15:47:07 -08:00
Megan Marsh e164621bfe log line to help prevent confusion when guest_additions_url is set from env variable that is empty 2018-01-05 09:19:38 -08:00
Megan Marsh 4f3b470804 add helper function to manage validation of filepaths created using DownloadableURL 2018-01-03 16:53:47 -08:00
Ali Rizvi-Santiago 4fcd542d0c Fixed an issue where the VirtualBox builder was checking for whether guest_additions_url was empty or not before it actually interpolated any variables. 2018-01-02 21:09:41 -06:00
Megan Marsh 6756df9510 use url library instead of parsing string naiively 2017-11-13 12:57:53 -08:00
Megan Marsh 771349e58c fix error message 2017-11-13 12:52:47 -08:00
Megan Marsh 764be03876 didn't mean for this error message to get changed 2017-11-13 12:42:57 -08:00
Megan Marsh 0d18de2942 do validation in vmx config stage 2017-11-13 12:42:57 -08:00
Matthew Hooker fb098d045d
builder/virtualbox-ovf retry removing VM.
moves behavior from builder/virtualbox-iso into the driver
so it is automatically available to callers.
2017-10-25 10:27:33 -07:00
SLAZ666 f6bb79784f Add option keep_registered to virtualbox-ovf builder 2017-09-13 15:37:26 +02:00
Matthew Hooker 94d7a4ce8d
post-processor/vagrant-cloud: try upload once
* fixes multiple uploads mentioned in #4973
* removed unused token code
2017-06-12 17:34:32 -07:00
Matthew Hooker ab81b3ef7d Merge pull request #4699 from BenPhegan/virtualbox_sata_port_count
Add configuration to virtualbox-iso to allow sata port count configuration
2017-06-05 15:21:12 -07:00
Matthew Hooker 0c116981ab Merge pull request #4960 from rickard-von-essen/issue-4959
virtualbox: Don't add portforwarding if comm = none
2017-06-02 13:15:43 -07:00
Rickard von Essen 31b93a3026 virtualbox: Don't add portforwarding if comm = none
Closes: #4959
2017-06-02 21:58:34 +02:00
JD Friedrikson a0052fdb68
Specify InsecureIgnoreHostKey for HostKeyCallback
[A recent breaking change upstream in Golang's crypto
library](e4e2799dd7)
has broken SSH connectivity for a few builders:

```
==> qemu: Waiting for SSH to become available...
2017/05/20 16:23:58 ui: ==> qemu: Waiting for SSH to become available...
2017/05/20 16:23:58 packer: 2017/05/20 16:23:58 [INFO] Attempting SSH connection...
2017/05/20 16:23:58 packer: 2017/05/20 16:23:58 reconnecting to TCP connection for SSH
2017/05/20 16:23:58 packer: 2017/05/20 16:23:58 handshaking with SSH
2017/05/20 16:23:58 packer: 2017/05/20 16:23:58 handshake error: ssh: must specify HostKeyCallback
2017/05/20 16:23:58 packer: 2017/05/20 16:23:58 [DEBUG] SSH handshake err: ssh: must specify HostKeyCallback
2017/05/20 16:24:05 packer: 2017/05/20 16:24:05 [INFO] Attempting SSH connection...
2017/05/20 16:24:05 packer: 2017/05/20 16:24:05 reconnecting to TCP connection for SSH
2017/05/20 16:24:05 packer: 2017/05/20 16:24:05 handshaking with SSH
2017/05/20 16:24:05 packer: 2017/05/20 16:24:05 handshake error: ssh: must specify HostKeyCallback
2017/05/20 16:24:05 packer: 2017/05/20 16:24:05 [DEBUG] SSH handshake err: ssh: must specify HostKeyCallback
```

Specifying HostKeyCallback as insecure should make things work again
and would make sense for packer's use case.
2017-05-20 16:17:04 -04:00
Ben Phegan c4b8e8e5df Merge branch 'master' into virtualbox_sata_port_count 2017-05-01 09:23:05 +10:00
Matthew Hooker 81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
Matthew Hooker 4fcbf75da9
s/non existent/nonexistent/ 2017-03-29 12:38:33 -07:00
Matthew Hooker 35578d9ed1
remove unnecessary type conversions 2017-03-28 20:36:21 -07:00
Matthew Hooker 79287d7e47
simplify some code 2017-03-28 20:36:20 -07:00
Matthew Hooker 230079f73a
spell fixes 2017-03-28 20:36:19 -07:00
Matthew Hooker 35480e21b2
fix typo 2017-03-24 11:56:49 -07:00
Matthew Hooker 0ad6b169bc
builder/virtualbox: retry removing floppy controller 2017-03-23 23:58:23 -07:00
Ben Phegan 0c777a1d63 Fix for DriverMock not implementing Driver 2017-03-23 12:11:19 +11:00
Ben Phegan 67eb600c08 Add sata_port_count so that a SATA controller can be created with more than 1 port. The default of prevents additional drives being added. Default preserved if not overridden. 2017-03-22 23:09:25 +11:00
Matthew Hooker 68e2b150cd
builder/virtualbox: allow skipping upload of version file 2017-03-16 18:14:11 -07:00
Matthew Hooker 84fc62f6b2 Merge pull request #4496 from mitchellh/vmrmguest2
builder/virtualbox: remove guest additions
2017-02-03 23:14:35 -08:00
Matthew Hooker 70af3d8148 Merge pull request #4497 from mitchellh/f-clickable-links
Make rdp and vnc links clickable by adding the protocol
2017-02-02 12:41:59 -08:00
Chris Bednarski facf27ceeb Make rdp and vnc links clickable by adding the protocol 2017-02-02 01:55:28 -08:00
Matthew Hooker e9e3215c38
builder/virtualbox: remove guest additions 2017-02-02 00:47:56 -08:00
Matthew Hooker 228bc9cfd3
use driver delete method 2017-02-01 23:57:45 -08:00
Matthew Hooker 22d1322bd9
always check for an error first when walking a path 2017-01-26 16:32:21 -08:00
Matthew Hooker d2e59e4e92
set PACKER_HTTP_ADDR env var when available.
If using a builder that has an http server set up for file transfer,
expose the connection info to the shell provisioner through the environment
variable PACKER_HTTP_ADDR.

Closes #2869
2017-01-16 23:19:52 -08:00
Matthew Hooker a3da92dc97 Merge pull request #4339 from DanHam/gh-4131
Add option to skip export of installed VM for vbox ISO & OVF builders
2017-01-10 15:08:15 -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 ac769be49a
Pause between each boot command element rather than each char with -debug
Fixes #4332
2016-12-31 11:57:11 +00:00
DanHam 0ac071b6e7
Add option to skip export of installed VM for Virtualbox ISO & OVF builders
Closes #4131
2016-12-29 13:19:59 +00:00
DanHam 686ec1866e
vbox builders now need to explicitly set WinRMPort for StepConnect
Aligns vbox builders with changes to helper/communicator/step_connect.go
introduced by PR #2576

Fixes #4310
2016-12-23 15:55:10 +00:00
Matthew Hooker 2e358ae4a1 Revert "builder/virtualbox: group keyboard codes" 2016-12-21 15:12:17 -08:00
Matthew Hooker ee86dc87fd
fix broken test 2016-12-20 18:10:58 -08:00
Matthew Hooker aa177de54b
add test for #4247 2016-12-20 17:51:47 -08: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
Brian Ruff 038787ed48 Refactored to gather scan codes into groups to be sent to VirtualBox's console. 2016-12-04 11:28:18 -07:00
Arthur Burkart 337856811e Implements OVA downloads w/local checksum support
Presumably, it is convention to store a manifest file with checksums
inside the OVA, so remote checksum support was not implemented.
2016-11-28 15:01:37 -05:00
Rickard von Essen 96e9a8e6e9 Removed default value for ssh_username 2016-11-17 22:30:34 +01:00
Matthew Hooker d920b3fbf4 run gofmt 2016-11-01 14:08:04 -07:00
Arthur Burkart 4a00ffeea2 Closes #3999 - Support VirtualBox Trim/Discard
Adds a couple options to enable/disable the `--nonrotational` and
`--discard` flags during `VBoxManage storageattach` command execution
2016-10-17 08:52:28 -04:00