Adrien Delorme
f555e7a9f2
allow a provisioner to timeout
...
* I had to contextualise Communicator.Start and RemoteCmd.StartWithUi
NOTE: Communicator.Start starts a RemoteCmd but RemoteCmd.StartWithUi will run the cmd and wait for a return, so I renamed StartWithUi to RunWithUi so that the intent is clearer.
Ideally in the future RunWithUi will be named back to StartWithUi and the exit status or wait funcs of the command will allow to wait for a return. If you do so please read carrefully https://golang.org/pkg/os/exec/#Cmd.Stdout to avoid a deadlock
* cmd.ExitStatus to cmd.ExitStatus() is now blocking to avoid race conditions
* also had to simplify StartWithUi
2019-04-08 20:09:21 +02:00
Adrien Delorme
a81abd297b
Merge remote-tracking branch 'origin/master' into context_provisioner
2019-04-08 20:09:01 +02:00
Megan Marsh
3e72e65a6c
Merge pull request #7456 from hashicorp/do_5770
...
introduce the clean_resource_name to clean image/var names
2019-04-05 09:12:20 -07:00
Megan Marsh
217a93fc30
fix build_test.go on windows. This code needs to not be run in parallel, or else there can be race conditions with the post-processors all trying to access the same file at once. Additionally, I changed the test template itself so that it is valid code on either bash or cmd. Finally, I found and fixed a small bug in naming the file extensions in shell local inline scripts.
2019-04-04 14:57:56 -07:00
Adrien Delorme
c4f3dccc14
rename interpolation context from ctx to ictx and contexts to ctx to avoid conflicts
2019-04-03 15:56:15 +02:00
Adrien Delorme
82c4b76639
[Builder|Build|PostProcessor|Provisioner|Hook]Server: context cancel using a RPC cancel method
2019-04-03 15:55:55 +02:00
Adrien Delorme
14048b1e11
Revert "WIP: go towards context cancelled rpc pkg"
...
This reverts commit e4609b4a6a4ba2ec76a45ad67d50d180f1a914f9.
2019-04-03 15:55:55 +02:00
Adrien Delorme
9e3a179c0d
WIP: go towards context cancelled rpc pkg
2019-04-03 15:55:55 +02:00
Adrien Delorme
829851fc8a
change hooks to be passed a context for cancellation
...
we have to as it is what calls our provisioners
2019-04-03 15:55:54 +02:00
Adrien Delorme
9836dad0c9
introduce the clean_resource_name to clean image names and deprecate the old ones
2019-04-03 11:25:51 +02:00
Adrien Delorme
91cc7e1091
net.ListenRangeConfig.Listen: don't swap ports if max < min
2019-03-26 10:53:52 +01:00
Adrien Delorme
a4a83be2b9
net.ListenRangeConfig.Listen: allow to have a port rage of zero
2019-03-26 10:52:07 +01:00
Adrien Delorme
cd39aa9988
net.ListenRangeConfig.Listen: log tried ports a bit earlier in the process
...
so we know tried ports every time
2019-03-26 10:45:32 +01:00
Adrien Delorme
5a6dffde9a
use port as ints
2019-03-19 15:01:12 +01:00
Adrien Delorme
c214f6735b
make everything a uint
2019-03-19 12:54:15 +01:00
Adrien Delorme
51294287fa
StepHTTPServer: display error if we could not connect
2019-03-19 12:54:15 +01:00
Adrien Delorme
6df4128517
StepHTTPServer: use the common/net pkg
2019-03-19 12:54:12 +01:00
Adrien Delorme
1685a1c4c0
add common/net package that can listen on a random port in a range
2019-03-19 12:53:56 +01:00
Adrien Delorme
6ab28ba89c
Update common/shell/shell.go
...
be more descriptive
2019-03-15 12:21:27 +01:00
Adrien Delorme
b4ec6e2ed2
Create exit_code_test.go
2019-03-14 13:32:46 +01:00
Adrien Delorme
eedf5e4387
Update shell.go
...
remove typo
2019-03-14 12:50:19 +01:00
Adrien Delorme
f0a23bb81d
common shell provisioner: define a ValidExitCode func
2019-03-14 12:46:32 +01:00
Adrien Delorme
30a65c858a
regroup shell provisioner params into a common struct
2019-03-14 11:57:54 +01:00
Adrien Delorme
9f82b75e57
Use the hashicorp/go-getter to download files
...
* removed packer.Cache and references since packer.Cache is never used except in the download step. The download step now uses the new func packer.CachePath(targetPath) for this, the behavior is the same.
* removed download code from packer that was reimplemented into the go-getter library: progress bar, http download restart, checksuming from file, skip already downloaded files, symlinking, make a download cancellable by context.
* on windows if packer is running without symlinking rights and we are getting a local file, the file will be copied instead to avoid errors.
* added unit tests for step_download that are now CI tested on windows, mac & linux.
* files are now downloaded under cache dir `sha1(filename + "?checksum=" + checksum) + file_extension`
* since the output dir is based on the source url and the checksum, when the checksum fails, the file is auto deleted.
* a download file is protected and locked by a file lock,
* updated docs
* updated go modules and vendors
2019-03-13 12:11:58 +01:00
Vadym Haidamaka
f736e2aba5
Print VerifyChecksum log for the download as ui.Message output
2019-03-11 22:33:46 +02:00
Megan Marsh
3dc1dafe58
Merge pull request #7287 from stephen-fox/ephemeral-ssh-key-pair-issue-7225
...
virtualbox: create ephemeral SSH key pair for build process
2019-03-04 14:25:04 -08:00
Stephen Fox
56c17941fe
Added comment to authorized_keys 'sed' calls per review.
2019-02-28 10:54:14 -05:00
Megan Marsh
2a9f49a5c6
make sure we don't try to load an iso into memory because of a user mistake
2019-02-13 16:21:55 -08:00
xinau
36c1e8d838
moved adapter to common package
2019-02-12 07:10:57 +00:00
Stephen Fox
354fcc5cc6
Merge branch 'master' into 'ephemeral-ssh-key-pair-issue-7225'.
2019-02-05 16:16:51 -05:00
Stephen Fox
e40aa515f2
Added TODO about public key removal logic.
2019-02-05 12:00:01 -05:00
Megan Marsh
2d3f84abf0
Merge pull request #7271 from hashicorp/make_generate
...
make generate
2019-02-04 13:11:24 -08:00
Stephen Fox
4c2851013e
Fixed 'sed' regex to remove public key by magic string.
2019-02-04 12:10:17 -05:00
Adrien Delorme
8621949e01
make generate
2019-02-04 15:16:38 +01:00
Megan Marsh
482ba644a8
quote variables in powershell script to account for spaces
2019-02-01 13:23:17 -08:00
Megan Marsh
3602180b45
re-add missing import
2019-01-25 12:33:25 -08:00
Megan Marsh
c63b54a1e7
move http with proxy call into a helper function
2019-01-25 12:32:52 -08:00
Tom Parker-Shemilt
d72fb9bcb3
If checksums for a download don't match, display the checksum that was found
2019-01-17 20:26:16 +00:00
Megan Marsh
97a791389a
deduplicate step_output_dir and move to common folder
2019-01-11 15:06:36 -08:00
Adrien Delorme
9f2a3bdfbc
Merge pull request #7181 from hashicorp/python_shell_docs
...
add python example to shell-local docs
2019-01-10 10:43:55 +01:00
Megan Marsh
a2c3de9396
remove outdated logline
2019-01-09 11:16:48 -08:00
Adrien Delorme
9f7b4ffc17
Merge branch 'master' into pr/6950
2019-01-09 10:11:18 +01:00
Adrien Delorme
19cbb9cb24
Merge pull request #7136 from hashicorp/fix_5984
...
Add "version" option to hyperv calls
2019-01-09 10:06:49 +01:00
Megan Marsh
93053e0488
update comments
2019-01-08 15:15:00 -08:00
Megan Marsh
9557f3eea7
use script options struct rather than passing all the variables around an extra time
2019-01-08 11:29:38 -08:00
Megan Marsh
a1b3b63cb9
use golang templating logic
2019-01-08 11:17:19 -08:00
Ladar Levison
e6de727c25
Fix the Hyper-V gen 1 guest boot order.
2018-12-25 16:54:26 -06:00
Megan Marsh
f26051a7da
code comments yo
2018-12-20 13:09:32 -08:00
Megan Marsh
24d2cc34e5
tests
2018-12-20 12:03:14 -08:00
Megan Marsh
427a35fc7e
tests
2018-12-20 12:03:00 -08:00