Megan Marsh
ee336e6d12
decode data interface into generatedData
2019-12-11 15:43:38 -08:00
Megan Marsh
f4c3501af5
pass struct of generated data into provision() call
2019-12-11 15:43:38 -08:00
Lars Lehtonen
a3ca0bc2aa
packer/rpc: remove unused cancelCalled field from testBuild{}
2019-11-04 12:59:55 -08:00
Lars Lehtonen
699614b500
packer/rpc: fix dropped error
2019-11-04 12:58:16 -08:00
Lars Lehtonen
67afbe6fb7
packer: remove bool constant comparisons
2019-11-04 12:54:52 -08:00
Lars Lehtonen
703f071b4a
packer: remove unused test variable
2019-11-04 12:53:16 -08:00
Lars Lehtonen
a709867dee
packer: remove unused testComponentFinder()
2019-11-04 12:50:58 -08:00
Adrien Delorme
819329228a
Change back to make sure all durations are a time.Duration
...
It is simply the best/simplest solution and trying to prevent users from passing and integer here would be like opening a can of worms. Because:
* we cannot make mapstructure validate our duration string ( with an UnmarshalJSON func etc.)
* we cannot make mapstructure spit a string instead of a duration and packer will decode-encode-decode config.
* the hcl2 generated code asks for a string, so this will be enforced by default.
2019-10-31 16:12:07 +01:00
Adrien Delorme
bf3d9841c6
Force durations to be passed a strings
...
Before this commit it was possible to set a duration using an integer or a float. Go's time.Duration is an int64 internally an mapstructure will take advantage of this and load the number as a int64 but `1` means one ns which is unexpected/confusing. To avoid confusion and enforce readability this forces users to pass a string with a unit for a duration; ex "56s".
2019-10-31 11:47:19 +01:00
Adrien Delorme
a8b2918d0e
remote duplicate gob.Register(new(map[string]interface{}))
...
otherwise this panics
2019-10-15 12:56:42 +02:00
Megan Marsh
0683bc409b
add test for error-cleanup provisioner, and fix tests by fixing null builder to use an actual none communicator instead of skipping communicator generation altogether
2019-09-25 13:39:09 -07:00
Megan Marsh
5bd8fee708
Creates a final "cleanup" provisioner to run if an error occurs during a provisioning step, allowing users to perform any custom cleanup tasks that must happen on the VM before the VM is shut down and destroyed.
2019-09-24 16:08:15 -07:00
Adrien Delorme
3b8f3c5a8b
remove any reference to Push
2019-09-16 16:38:17 +02:00
Lars Lehtonen
f62bc25f18
packer/rpc: Fix tests that swallowed errors in goroutines
2019-09-11 05:22:01 -07:00
Megan Marsh
a82a3ccaa6
need to scrub sensitive variables first, to make sure we don't fail for comma-containing sensitive info
2019-08-15 16:16:11 -07:00
Megan Marsh
ce0f11a651
Merge pull request #7912 from hashicorp/set_config_dir
...
Set config dir
2019-08-13 16:33:00 -07:00
Megan Marsh
5d4d5a21bf
check env for a PACKER_CONFIG_DIR before defaulting to homedir for config
2019-07-25 13:06:41 -07:00
Christian Muehlhaeuser
216afbaa8b
Fixed various typos
...
Just a bunch of nit-picky typo fixes.
2019-07-25 06:49:51 +02:00
Megan Marsh
e54b1cedd9
text/template turns out to swallow custom error types.
2019-07-08 15:39:46 -07:00
Megan Marsh
2bbc3d50d7
better error handling when using interpolate funcs; don't swallow func errors
2019-07-08 13:49:14 -07:00
Adrien Delorme
c9a22b6380
Merge pull request #7745 from hashicorp/investigate_crash
...
small cleanups
2019-06-14 10:09:32 +02:00
Megan Marsh
88e5a21170
make sure machine readable logs print what's come through the UI into the logs
2019-06-13 10:51:44 -07:00
Megan Marsh
a907adb4ab
Merge pull request #7743 from hashicorp/fix_7728
...
filter machine readable UI
2019-06-12 13:00:26 -07:00
Megan Marsh
df977926ba
filter machine readable UI
2019-06-12 09:50:27 -07:00
Adrien Delorme
f097deab3b
Merge pull request #7739 from hashicorp/fix_7728
...
apply logSecretFilter to output from ui.Say
2019-06-12 11:01:25 +02:00
Adrien Delorme
2eef6a1492
Merge pull request #7726 from hashicorp/packer-interpolate
...
Packer console
2019-06-12 11:00:11 +02:00
Megan Marsh
1e5866bd2a
apply logSecretFilter to output from ui.Say
2019-06-11 14:04:36 -07:00
Adrien Delorme
ddb4d77dc8
Update packer/core.go
...
remove commented log line
2019-06-11 11:09:22 +02:00
Megan Marsh
ca99cbd2d2
remove loglines
2019-06-10 11:34:57 -07:00
Megan Marsh
1a9adc29b3
fixing interpolation
...
fix sensitive_vars test which never worked but somehow was passing before this change.
2019-06-10 11:30:52 -07:00
Megan Marsh
b8ac1a800d
implement a packer console analogous to the terraform console
2019-06-05 16:35:22 -07:00
Adrien Delorme
ce15617d05
TestPausedProvisionerProvision_waits: don't fail when we spend too much time.
2019-05-24 18:21:53 +02:00
Adrien Delorme
dc631530d2
stop using goroutines in TestPausedProvisionerProvision_waits
...
to render the test less flaky.
this should fix #7684
2019-05-24 17:56:27 +02:00
Paul Meyer
ec14ab4875
Add unit test to find issue #7655
2019-05-17 22:27:19 +00:00
Megan Marsh
70c223045e
fix race condition in hooks
2019-05-10 10:25:54 -07:00
Adrien Delorme
5f076d4328
allow building packer on solaris by removing progress bar and tty imports
...
fix #7586
2019-05-07 15:58:49 +02:00
Adrien Delorme
051f39e21d
Merge pull request #7583 from hashicorp/update_custom_plugin_docs
...
update docs defining Builders and PostProcessors
2019-04-30 11:58:53 +02:00
Megan Marsh
2e0f9223c8
remove all the extra debug lines
2019-04-29 10:33:41 -07:00
Adrien Delorme
1be337b383
update docs for definig Builders and PostProcessors
2019-04-29 13:16:46 +02:00
Megan Marsh
b84b665ba3
fix race
2019-04-26 16:05:14 -07:00
Adrien Delorme
63f5bbbc73
use our own copy of iochan.LineReader
2019-04-11 14:25:24 +02:00
Adrien Delorme
8565a30c69
TimeoutProvisioner: also display an error log when the context times out
2019-04-09 17:46:38 +02:00
Adrien Delorme
eadb40da91
Update communicator_test.go
...
fix tess
2019-04-08 20:09:21 +02:00
Adrien Delorme
2a90ce6178
packer communicator: use iochan.LineReader instead of iochan.LineReader(in)
...
* as it's the recommended way
2019-04-08 20:09:21 +02:00
Adrien Delorme
d8d5631dc2
allow to set provisioner timeout from buildfile
2019-04-08 20:09:21 +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
f7cd2b9334
add a 5 seconds timeout to provisioner hook
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
1f7150e2ee
Merge pull request #7463 from hashicorp/default_keep_input_artifact
...
Default keep input artifact
2019-04-05 08:10:40 -07:00
Megan Marsh
96c94d2fa0
clean up code comments
2019-04-03 14:04:03 -07:00