Commit Graph

195 Commits

Author SHA1 Message Date
Matthew Hooker 262c8dc24a
WIP fix #4670 2017-03-16 14:18:41 -07:00
Matthew Hooker 22d1322bd9
always check for an error first when walking a path 2017-01-26 16:32:21 -08:00
Matthew Hooker 56115ee270 Merge pull request #4398 from mitchellh/portinclusive
step_http_server: make port range inclusive
2017-01-19 13:38:27 -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
Chris Bednarski ee2d636840 Improve delay between key events
- Can now tune delay using PACKER_KEY_INTERVAL
- Added implementation to all of VMware and QEMU
- Removed double delay for QEMU
- Default key delay of 100ms (as before)
- Added docs to QEMU and VMware pages
2017-01-14 17:56:04 -08:00
Matthew Hooker 36b436b2b7
make port range inclusive 2017-01-13 14:22:25 -08:00
Taliesin Sisson 3824ea157d Merge pull request #4317 from Tadas/fix-ps-noprofile
Add -NoProfile switch for PowerShell execution
2017-01-12 22:47:49 +00:00
Tadas Medisauskas 088d3d1ac8 Add -NoProfile switch 2016-12-22 14:50:17 +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 45d4cf8b36
move powershell module to common 2016-12-12 18:34:15 -08:00
Taliesin Sisson e5510873bb Added file with correct line endings
When dealing with windows the file url format is file:///c:/
On windows a lot of git clients will convert LF to CRLF. This would be a problem where file contents are compared exactly
2016-12-12 22:44:51 +00:00
Vasiliy Tolstov 7f391a94aa unbreak glob pattern in floppy_files
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-11-21 16:29:14 +03:00
Matthew Hooker d920b3fbf4 run gofmt 2016-11-01 14:08:04 -07:00
Matthew Hooker 97688a96ba Merge pull request #4004 from mitchellh/parseCheckSumFilePanic
fix parseCheckSumFile panic
2016-10-14 15:50:07 -07:00
Ali Rizvi-Santiago 1347b11f06 Fixed a bug due to some missing filepath.ToSlash calls in StepCreateFloppy.Add.
If backslashes were in a filename (such as when running from Windows),
    this would cause the backslashes to be included in the filenames in the
    created floppy disk which caused havoc when Windows tried to parse it.

Fixed a bug in fsDirectoryCache when using path.Clean() to normalize the
    input directory properly. This would cause an error where a new directory
    "." would be created instead of it correctly returning the root directory.

Fixes issue #3977.
2016-10-14 14:17:49 -07:00
Matthew Hooker 54651e0005 fix parseCheckSumFile panic
resolves #3516
2016-10-14 00:56:05 -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
Matthew Hooker a9abe43325 builder/amazon: add retry login when creating tags.
also move Retry from builder/googlecompute/common to common/retry
2016-09-28 18:22:31 -07: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 4fe86244a5 Improve -on-error descriptions 2016-09-18 03:00:36 +00:00
Orivej Desh 639bf356aa Fail on unknown values of -on-error 2016-09-17 14:42:21 +00:00
Orivej Desh 389603cc0f Allow upper case input to -on-error=ask 2016-09-16 12:15:00 +00:00
Orivej Desh 115cb5080f Document NewRunner 2016-09-16 12:15:00 +00: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
Ali Rizvi-Santiago fbe305cf4e Renamed floppy_contents to floppy_dirs as requested by rickard.von.essen@gmail.com 2016-09-12 12:07:35 -05:00
Ali Rizvi-Santiago 915b7f371a Added missing argument to step_create_floppy_test.go 2016-09-12 11:57:51 -05: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
Ali Rizvi-Santiago 7d360d4e67 Added support for recursively including subdirectories in common/step_create_floppy.go
Shuffled the s.FilesAdded counter around so that unit-tests for common/step_create_floppy.go work without having to implement the fix properly.
2016-09-12 11:22:50 -05:00
Ricard Clau acededfc6e tests actually test the floppies 2016-07-27 21:59:21 +01:00
Chris Bednarski 1d31d2d8d4 Merge pull request #3674 from yoctocloud/file_scheme
common/download.go: allow to specify relative path for file scheme
2016-07-06 11:16:55 -07:00
Vasiliy Tolstov 4392f6df1c common/download.go: allow to specify relative path for file scheme
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-07-06 13:03:39 +03:00
Vasiliy Tolstov 82c63bd723 iso_checksum: fix parsing with absent newline
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-07-03 12:06:31 +03:00
Rickard von Essen abb2d92c7e Removed ftp/ftps schemas since they don't work. 2016-02-09 13:02:42 +01:00
Rickard von Essen bbade5d8ae Added "iso_checksum_url" and keep the functionality of "iso_checksum"
Added support for file shema in "iso_checksum_url".
Added some unit tests and updated the docs accordingly.
2016-02-08 19:35:50 +01:00
Vasiliy Tolstov 00fcc3dfdc allow to specify checksum via url
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-02-08 19:35:50 +01:00
Chris Bednarski 24dc798cfb Revert "Prevalidate Hardware Specs on Linux"
This reverts commit eda84cb2d3.
2016-02-02 12:41:43 -08: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
Mark Peek 7f149e595d Refactor http server config into common 2015-11-01 14:45:47 -08: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
Chris Bednarski 1764238c0b Added [DEBUG] prefix to log messages 2015-08-19 13:15:23 -07:00
Chris Bednarski 6e8c6a15ad Implement fix, add comments so it's more apparent why we're doing special logic 2015-08-14 17:49:08 -07:00
Chris Bednarski 7ecfb057ff Added test case to catch deleting local source file when checksum doesn't match 2015-08-14 17:37:57 -07:00
Chris Bednarski 424ee65866 Added a log message when we use a local file instead of downloading one 2015-08-14 17:34:39 -07:00
Chris Bednarski 70af28be47 Added cake fixture for testing file:/// downloads 2015-08-14 17:34:04 -07:00
Mitchell Hashimoto 0416939c08 common: always reset progress to 0 for downloads 2015-06-22 14:59:38 -07:00
Mitchell Hashimoto 117579808f common: add the current progress to the total size 2015-06-22 14:58:27 -07:00
Mitchell Hashimoto 944b4bf46c common: delete file if checksum fails 2015-06-22 12:17:29 -07:00
Mitchell Hashimoto 2f530534d2 common/download: resume test 2015-06-22 12:14:35 -07:00
Mitchell Hashimoto aa7d3b7841 Merge pull request #2245 from vtolstov/iso
resume download after fail
2015-06-22 12:03:47 -07:00
Mitchell Hashimoto bf456f35f9 common: download client tests
/cc @cbednarski
2015-06-22 12:02:38 -07:00
Mitchell Hashimoto 897888fde3 common: fix potential panic case 2015-06-21 19:58:18 -07:00
Vasiliy Tolstov d98de209cb fallback to not ranged request if server lacks HEAD
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-06-16 01:04:48 +03:00
Mitchell Hashimoto 2d13db300c packer: HookProvision errors if no communicator 2015-06-15 10:26:46 -07:00
Vasiliy Tolstov 382fa01e6f resume download after fail
close #2106

Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2015-06-15 09:53:16 +03:00
Mitchell Hashimoto a1ceb5a7ef common: remove StepConnectSSH 2015-06-13 18:10:37 -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 1e853f9f1f common: revert some changes from #2121 for Windows 2015-06-13 10:21:09 -04:00
Clint Shryock 04e174fae8 builder/amazon: Properly return error code on ssh errors 2015-06-11 16:21:29 -05:00
Mitchell Hashimoto f6f9cca7ce Merge pull request #2189 from mitchellh/b-download-extension
common: StepDownload can force an extension
2015-06-09 20:56:43 -07:00
Mitchell Hashimoto 23a48d6619 go fmt 2015-06-08 21:34:20 -07:00
Mitchell Hashimoto e65e2d104a common: StepDownload can force an extension 2015-06-08 20:41:39 -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 44008c321b Merge pull request #2121 from josharian/no-scrub-empty
common: two minor fixes
2015-05-27 20:17:51 -07:00
Mitchell Hashimoto adb6b43dd8 common: remove unused config methods 2015-05-27 14:58:09 -07:00
Mitchell Hashimoto dd0a775500 common/command: delete 2015-05-26 09:51:47 -07:00
Josh Bleecher Snyder 2fe785ed35 common: remove dead code
The referenced bug was fixed in Go 1.2,
and Packer requires Go 1.2+.
2015-05-18 15:13:36 -07:00
Josh Bleecher Snyder 76c8cfd498 common: don't scrub ""
If the access_key or secret_key were loaded from
somewhere other than the packer file then
ScrubConfig can get called to scrub "" and "".

This results in very long output:

<Filtered><<Filtered>F<Filtered>i...

Don't do that.
2015-05-18 15:13:01 -07:00
Grégoire Pineau 97c56347a1 Better error reporting when a config key in template is Unknown
This patch will allow to fix the following bug much faster:

```
1 error(s) occurred:

* Unknown configuration key: output_directory
```

Related configuration:

```
"output_directory ": "build/sl_base/",
```

After the patch, the error reporting will be:

```
1 error(s) occurred:

* Unknown configuration key: "output_directory¤"
```
2015-03-05 10:23:21 +01:00
Emil Hessman 952ae5161b common: fix formatting directives in tests
Fixes the following vet reports:

common/step_create_floppy_test.go:79: possible formatting directive in Fatal call
common/step_create_floppy_test.go:89: possible formatting directive in Fatal call
common/step_create_floppy_test.go:180: possible formatting directive in Fatal call
common/step_create_floppy_test.go:190: possible formatting directive in Fatal call
2015-02-25 05:43:18 +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
Seth Vargo 347f02a7f2 Merge pull request #1402 from jasonberanek/858-issue
fix build name ConfigTemplate processing [GH-858]
2014-11-26 16:30:36 -05:00
Mitchell Hashimoto 8dbe0f065c Remove version from "packer" package 2014-10-27 20:51:34 -07:00
Mitchell Hashimoto 42e9e734b9 common: don't wait SSH on first try 2014-09-10 14:04:56 -07:00
Mitchell Hashimoto 01abbc4460 common/ssh: error if encrypted key is used 2014-09-03 20:25:31 -07:00
Mitchell Hashimoto 76a8221636 builder/*: extract key path to ssh.Signer 2014-09-03 20:23:39 -07:00
Jason A. Beranek 56ec6bf7af common/command/template,packer/template: fix build name ConfigTemplate processing [GH-858] 2014-08-09 21:52:33 -05:00
Mitchell Hashimoto 34834057c3 common: add test for empty val 2014-05-06 18:52:02 -07:00
Mitchell Hashimoto 5c5d62733f fmt 2014-05-01 14:24:19 -07:00
Ross Smith II 3d960ccc69 go fmt 2014-04-29 12:29:15 -07:00
Ross Smith II e422d45f92 Allow wildcards and directories for floppy_files parameter 2014-04-29 12:27:34 -07:00
Mitchell Hashimoto 5cd2cfa563 comment so future-mitchell knows what I've done 2014-04-28 16:19:35 -07:00
Mitchell Hashimoto ba05119a75 common: user variable conversion to non-string types works [GH-1079] 2014-04-28 16:18:45 -07:00
Mitchell Hashimoto d5981c69f2 common: config strings to slices [GH-950] 2014-04-27 14:47:16 -07:00
Mitchell Hashimoto 5dec2ddb9c common: weakly decode the PackerConfig 2014-04-26 14:23:22 -07:00
Mitchell Hashimoto fa339fc275 get more proper SSH package usage in 2014-04-26 11:23:26 -07:00
Mitchell Hashimoto 5fac6c79c4 fmt 2014-04-26 11:12:43 -07:00
Mitchell Hashimoto e84e5e4f2c Merge branch 'update-ssh-package' of github.com:higebu/packer into higebu-update-ssh-package
Conflicts:
	builder/amazon/common/ssh.go
	builder/digitalocean/ssh.go
	builder/googlecompute/ssh.go
	builder/openstack/ssh.go
	communicator/ssh/communicator_test.go
	communicator/ssh/keychain.go
	communicator/ssh/keychain_test.go
2014-04-26 11:12:06 -07:00
Mitchell Hashimoto 8395d0e97a common: tests for ChooseSTring 2014-04-21 21:30:49 -07:00
Mitchell Hashimoto 7191c1f250 common: Fix URL parsing issues on Windows 2014-04-21 21:28:47 -07:00
Mitchell Hashimoto 159587daf4 Merge pull request #768 from devcamcar/openstack-env-support
builder/openstack: Add support for standard OpenStack environment variables
2014-04-21 21:11:37 -07:00
Fabian Ruff 2a3393ca84 fix error handeling when creating a floppy 2014-04-17 23:34:55 +02:00
higebu f087ce16dc Fix the build problem by updating ssh package 2014-04-15 10:17:26 +09:00
Ross Smith II 27491f93f8 use old ssh code until higebu's branch is ready, see #1019 2014-04-11 08:23:12 -07:00
Mitchell Hashimoto 1087b5def8 common: clarify debug mode [GH-907] 2014-03-12 21:40:27 -07:00
Devin Carlen bef63846af Add support for standard OpenStack environment variables 2014-02-17 15:30:01 -08:00
Mark Rushakoff 4548495116 StepDownload uses packer version as user agent 2014-01-09 13:20:30 -08:00
Mark Rushakoff 9e5c0f6c6a HTTPDownloader uses UserAgent from DownloadConfig 2014-01-09 08:41:34 -08:00
Mitchell Hashimoto 107e47fe25 update commands to new user var syntax 2013-12-27 09:21:17 -07:00
Mitchell Hashimoto 4c6800f5a3 common: process user variables in non-string config decodes [GH-598] 2013-12-16 17:57:07 -08:00