WilliamB
f1d782e6f4
Correct HTTPIP == FALSE on HyperV builder
2019-07-18 09:39:06 -07:00
Megan Marsh
d6d4eb2087
fix some tests and some config behavior to prevent null dereference errors and incorrect precedence between iso checksum and iso checksum url
2019-06-28 15:29:39 -07:00
Megan Marsh
998ef4053f
parse checksum file so that we can use the checksums inside in the vmware-esxi builder stepuploadiso
2019-06-28 14:35:43 -07:00
Megan Marsh
88d589cc88
enable smb share double backslash pathing too
2019-06-26 13:43:05 -07:00
Megan Marsh
12471a8b06
use file getter for smb shares
2019-06-26 13:21:49 -07:00
Megan Marsh
8d25cc578f
Merge pull request #7746 from hashicorp/fix_7671
...
Abort hyperv build if there's a name collision
2019-06-14 10:58:22 -07:00
Megan Marsh
2e821da84b
check to make sure a vm-name isn't already in use before trying to launch a vm with said name.
2019-06-13 14:09:45 -07:00
Adrien Delorme
ca33f8bc5c
Revert "Backoff.Linear: panic when InitialBackoff > MaxBackoff"
...
This reverts commit 39cfacd5fa
.
2019-06-11 12:53:06 +02:00
Adrien Delorme
39cfacd5fa
Backoff.Linear: panic when InitialBackoff > MaxBackoff
...
this probably means there's a configuration issue.
Since this struct is mainly set manually from code, I think it is okay to panic here.
2019-06-11 12:41:21 +02:00
Adrien Delorme
36e4eaff99
document retry.Backoff better
2019-06-11 12:20:00 +02:00
Radek Simko
8519da6ce9
common/net: Cleanup cache of used port after closing
2019-05-06 22:11:52 +01:00
Adrien Delorme
b329073e54
remove trying port log as retry code will show errors
...
less logs !
2019-05-01 13:04:51 +02:00
Adrien Delorme
38f789eedc
add error types to test for
2019-05-01 13:01:25 +02:00
Adrien Delorme
14f2d1c132
ListenRangeConfig:Listen: use the retry pkg to wait a bit in between opens
2019-05-01 12:27:32 +02:00
Adrien Delorme
e14d1b8b0b
add a timeout trying to open a random port
2019-05-01 12:01:34 +02:00
Adrien Delorme
2fd7adffc4
add tests for ListenRangeConfig.Listen
2019-05-01 11:46:48 +02:00
Adrien Delorme
d9e5145de9
Shadow the flock pkg & add a noop filelock so that at least the solaris binary can be built
...
Without this the following error occurs:
$ GOOS=solaris go build .
# github.com/hashicorp/packer/vendor/github.com/gofrs/flock
vendor/github.com/gofrs/flock/flock_unix.go:28:22: undefined: syscall.LOCK_EX
vendor/github.com/gofrs/flock/flock_unix.go:39:22: undefined: syscall.LOCK_SH
vendor/github.com/gofrs/flock/flock_unix.go:56:12: undefined: syscall.Flock
vendor/github.com/gofrs/flock/flock_unix.go:66:12: undefined: syscall.Flock
vendor/github.com/gofrs/flock/flock_unix.go:96:12: undefined: syscall.Flock
vendor/github.com/gofrs/flock/flock_unix.go:96:42: undefined: syscall.LOCK_UN
vendor/github.com/gofrs/flock/flock_unix.go:118:21: undefined: syscall.LOCK_EX
vendor/github.com/gofrs/flock/flock_unix.go:130:21: undefined: syscall.LOCK_SH
vendor/github.com/gofrs/flock/flock_unix.go:149:9: undefined: syscall.Flock
vendor/github.com/gofrs/flock/flock_unix.go:149:44: undefined: syscall.LOCK_NB
vendor/github.com/gofrs/flock/flock_unix.go:149:44: too many errors
2019-04-30 16:01:23 +02:00
Adrien Delorme
5d9d43c01d
add tests for ListenRangeConfig.Listen
2019-04-30 15:42:59 +02:00
Adrien Delorme
fd63ec9a6c
ListenRangeConfig.Listen: move trying port log after fslock trylock for less logs
2019-04-30 15:35:22 +02:00
Adrien Delorme
79ae62801f
ListenRangeConfig: default network ( protocol ) to tcp
2019-04-30 14:55:38 +02:00
Adrien Delorme
65be2be38b
step_download: force copy of local files only on windows
2019-04-29 09:39:21 +02:00
Adrien Delorme
200e26ea85
Step download: always copy local files
...
instead of symlinking to fix #7534 . The longer term fix for this would be to change the go-getter so that it can leave the source file where it is & tell us where it is.
We will do this when the right time comes.
2019-04-26 10:35:18 +02:00
Adrien Delorme
9f1136db77
retry: encapsulate & return the last seen error in a RetryExhaustedError
2019-04-24 14:19:23 +02:00
Megan Marsh
e69d95eb37
when retries were exhausted in the retry Run, we were returning nil instead of an error.
2019-04-23 13:48:30 -07:00
Adrien Delorme
5f0259fe89
step download: don't fail when checksum_type is not set
2019-04-16 18:09:54 +02:00
Adrien Delorme
4dc12701d3
step_download: display clearer error messages, also when the checksum is not set
...
Usually the builder validation should error when the checksum is empty, but for the virtualbox-ovf builder this is not validated. Which is something I didn't see when refactoring for go-getter incorporation/refactor.
2019-04-15 14:34:09 +02:00
Megan Marsh
78cf1405ab
Merge pull request #7480 from BobSilent/fix-hyperv-multiple-hostadapter-same-switch
...
Fixes "Host IP for the HyperV machine: False" if more than one VMNetworkAdapter is found
2019-04-12 14:06:46 -07:00
Adrien Delorme
9ac8d8aed8
step download: ovf files usually point to a file in the same directory, using them in place is the only way
2019-04-12 16:51:57 +02:00
Adrien Delorme
63f5bbbc73
use our own copy of iochan.LineReader
2019-04-11 14:25:24 +02:00
Adrien Delorme
d72040f4fa
move retry code into the common/retry pkg and make retry context aware
2019-04-09 17:46:38 +02:00
BobSilent
5b289f67fe
Update hyperv.go
...
maybe also a fix for issue #5023
at least I got same error like there, incl. VM response
==> hyperv-iso: Host IP for the HyperV machine: False
although #4947 is marked as duplicate but shows different error output
==> hyperv-iso: Error getting host adapter ip address: PowerShell error: Get-VMNetworkAdapter : No network adapter is found with the given input.
2019-04-09 07:36:52 +02:00
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