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
078ba7c8c3
commit old code generation tool
...
for history
2019-10-15 12:56:42 +02:00
Lars Lehtonen
ad860bf1a8
builder: remove deprecated context usage
2019-09-30 11:33:53 -07:00
Adrien Delorme
4cb7c30987
Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config
2019-08-21 16:44:23 +02:00
hbdgr
6a8f45123a
test for snapshotTimeout option
2019-07-04 16:28:09 +02:00
hbdgr
7d723b7c7b
builder/digitalocean: add snapshotTimeout option
2019-07-04 16:25:42 +02:00
hbdgr
750e4b0f31
builder/digitalocean: increase timeout for waitForActionState
2019-07-04 09:55:13 +02:00
Megan Marsh
c03c3f4410
replace duplicate commHost functions with a single communicator helper that checks for ssh_host and does a statebag lookup for a given key
2019-07-03 13:30:29 -07:00
Megan Marsh
eb8c74bf85
allow ssh_host config option to override host logic for all builders
2019-07-02 13:56:28 -07:00
Adrien Delorme
4399684372
make fmt autogenerated docs
2019-06-06 16:29:25 +02:00
Adrien Delorme
e6cbb013ba
add // go:generate struct-markdown to all previously edited files
2019-06-05 16:42:18 +02:00
Adrien Delorme
f1917edd34
generate the comments for config struct of builders scraping doc website
2019-06-05 16:42:17 +02: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
a4bf94dd3c
change Builder to be passed a context for cancellation
...
we have to to give it to our hook
2019-04-03 15:55:55 +02: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
Andrew Starr-Bochicchio
c0c5c6afac
Add DigitalOcean post-processor.
2018-11-29 21:00:57 -05:00
Adrien Delorme
5389ab1694
pass config as a pointer so that ssh configuration is correctly set
2018-09-18 11:36:21 +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
b83c72fd54
more private keys in config
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
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
Megan Marsh
ff6a039d5b
replace scrubconfig with packer.LogSecretFilter.Set
...
filter winrm password from logs
Add new root-level packer template option, sensitive-variables, to tell us what user variables to mark sensitive.
2018-08-20 15:35:55 -07:00
Rickard von Essen
889c89ec79
Validate tags
2018-08-15 15:27:00 +02:00
Mike Zupan
11271ead59
Change name to tags
2018-07-30 07:55:06 -06:00
Mike Zupan
7081fe990b
Adding in droplet tags on creation
2018-07-30 07:52:40 -06:00
Rickard von Essen
c0ae1b7790
digitalocean: artifact should include build region and fixed docs
...
- Add the build region to the list of regions for the artefact
- Corrected docs: `snapshot_name` doesn't have to be unique.
- Updated example to use Ubuntu 16.04
2018-06-03 16:37:38 +02:00
Josh Soref
3b694feabc
spelling: transfer
2018-03-14 03:25:35 +00: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
Lawrence
5509d0734b
Added ipv6 option for digitalocean builder
...
the ipv6 option is already part of the godo package
Updated documentation to reflect new feature
Closes: https://github.com/hashicorp/packer/issues/5533
2017-11-01 15:41:25 -04:00
Luke Farnell
7c3eb33cda
Fixed spelling mistakes
2017-08-07 13:45:50 -04:00
Matthew Hooker
ee5d13611f
update ssh client usage for new crypto/ssh version
2017-05-18 12:01:44 -07:00
Matthew Hooker
06c7136e30
compare regions against valid regions
2017-05-16 21:00:13 -07:00
Luke Farnell
3afd77a5e4
fixed logic error and fixed suggestion
2017-05-16 21:00:13 -07:00
Luke Farnell
078c139ef1
Fix tests and add more
2017-05-16 21:00:13 -07:00
Luke Farnell
0f354614c0
Region Validation
2017-05-16 21:00:13 -07:00
Luke Farnell
abf2e618b5
Wait for snapshot transfer and change artifact output
2017-05-16 21:00:13 -07:00
Luke Farnell
4f5d3face2
remove duplicates
2017-05-16 21:00:12 -07:00
Luke Farnell
8ed50608b1
add image transfer for DigitalOcean
2017-05-16 21:00:12 -07:00
Rickard von Essen
a3f70b874b
Spelling (context)
2017-04-09 20:38:19 +02:00
Rickard von Essen
5ee212c85f
Inlined ctx
2017-04-09 20:33:05 +02:00
Luke Farnell
5b7ec545c5
Added monitoring and updated godo
2017-04-08 15:52:57 -04:00
Matthew Hooker
81522dced0
move packer to hashicorp
2017-04-04 13:39:01 -07:00
Matthew Hooker
35578d9ed1
remove unnecessary type conversions
2017-03-28 20:36:21 -07: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
Michael Nikitochkin
343c594bb3
Added UserDataFile support for DigitalOcean builder config.
2016-09-28 15:00:57 +02: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
Rickard von Essen
f446c1a1b7
builders/digitalocean: fixes timeout waiting for snapshot #3853
2016-09-08 10:32:43 +02:00
Toby Jaffey
37ef03c41c
Use config StateTimeout for DigitalOcean unlock and off transitions. ( #3444 )
...
Use config StateTimeout for DigitalOcean unlock and off transitions.
When DigitalOcean's API is responding slowly, the hardcoded timeouts are too short.
2016-08-14 21:12:30 +02:00
Andrew Starr-Bochicchio
6d31470757
Look up snapshot ID based by Droplet, not user.
2016-02-09 11:29:06 -05:00
Vasiliy Tolstov
ec4e95493d
builder/digitalocean: add ability to specify api url
...
This is useful in case of using DigitalOcean compatibility api hosting.
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-02-06 14:15:32 +00:00
Chris Bednarski
d6c02f5aeb
Change test to use something that looks like a real region code
2016-01-21 11:29:39 -08:00
Chris Bednarski
7b468af6b8
Merge pull request #2939 from bitrise-io/digitalocean_timeout_increase
...
increased DigitalOcean unlock wait timeouts
2016-01-13 14:11:09 -08:00
Andrew Starr-Bochicchio
2212125f46
Return DigitalOcean image ID in output.
2015-12-15 12:00:04 -05:00
Viktor Benei
eda2c9c605
actually make it 20 mins
2015-11-14 14:14:33 +01:00
Viktor Benei
7e568644a5
increased DigitalOcean unlock wait timeouts
2015-11-14 12:11:44 +01:00
Andy Williams
d36b653d3f
Make DigitalOcean artifact ID match AWS format
...
The Vagrant post processor expects the DO artifact ID to look like an
AWS artifact ID (region_id:snapshot_id). This commit makes the DO
artifact Id() function output this format.
2015-11-08 14:38:56 -05:00
Chris Bednarski
32b714e085
Update code.google.com/gosshold/ssh to point to golang.org/x/crypto/ssh, since this has been moved into core now
...
Fixes #2515
2015-07-30 19:19:59 -07:00
Chris Bednarski
51804e9132
Find a public IP address to provision a digital ocean box
2015-06-29 14:47:28 -07:00
Mitchell Hashimoto
84189f7a28
builder/*: properly save interpolation context
2015-06-22 09:22:42 -07:00
Mitchell Hashimoto
115d583cff
helper/communicator: make host more generic
2015-06-13 19:23:33 -04:00
Mitchell Hashimoto
669f301881
builder/digitalocean: use helper/comm
2015-06-13 18:26:13 -04:00
Mark Peek
16320372d6
Make some builder config usage more consistent with other builders
2015-06-12 14:02:09 -07:00
Mitchell Hashimoto
3933cc3217
Merge pull request #2208 from mitchellh/b-do-user
...
builder/digitalocean: user data support [GH-2113]
2015-06-11 16:57:04 -04:00
Mitchell Hashimoto
dcf140f99f
builder/digitalocean: more robust wait for pending
2015-06-10 19:53:07 -07:00
Mitchell Hashimoto
0e0cd28071
builder/digitalocean: fix failing unit tests
2015-06-10 19:31:48 -07:00
Mitchell Hashimoto
5cfd26a0d3
builder/digitalocean: user data support [GH-2113]
2015-06-10 19:29:48 -07:00
Mitchell Hashimoto
c9c9e2871c
builder/digitalocean: fix build
2015-06-10 18:58:50 -07:00
Mitchell Hashimoto
7dc59677f9
Merge branch 'do_certificate' of https://github.com/ColinHebert/packer into ColinHebert-do_certificate
2015-06-10 18:57:56 -07:00
Mitchell Hashimoto
5da56d2aa6
builder/digitalocean: image, region, etc. required
2015-06-10 18:54:51 -07:00
Mitchell Hashimoto
311c9eb5c2
builder/digitalocean: fix unit tests
2015-06-10 14:28:05 -07:00
Mitchell Hashimoto
9a393a5601
builder/digitalocean: only list user images
2015-06-10 14:18:38 -07:00
Mitchell Hashimoto
486c7e4ae6
builder/digitalocean: remove unused things
2015-06-10 14:07:24 -07:00
Mitchell Hashimoto
d9c48e82fb
builder/digitalocean: switch to new lib
2015-06-10 14:02:06 -07:00
Mitchell Hashimoto
23a48d6619
go fmt
2015-06-08 21:34:20 -07:00
Mitchell Hashimoto
60b60d9f75
Merge pull request #2036 from mojotalantikite/digitalocean_private
...
Fix digitalocean provider for private images [fixes mitchellh/packer#1792 ]
2015-06-08 21:18:33 -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
1d3a4d6aa2
packer: remove ConfigTemplate
2015-05-27 17:56:45 -07:00
Mitchell Hashimoto
7d0f94834e
builder/digitalocean: interpolation change
2015-05-27 12:50:43 -07:00
Mojo Talantikite
d174ffe1fa
Fix digitalocean provider for private images [ fixes mitchellh/packer#1792 ]
2015-03-12 19:01:51 -04:00
Emil Hessman
413b84af6b
builder/digitalocean: fix incorrect printf verb types
...
Fixes the following vet reports:
builder/digitalocean/builder_test.go:267: arg b.config.SSHUsername for printf verb %d of wrong type: string
builder/digitalocean/builder_test.go:300: arg b.config.RawSSHTimeout for printf verb %d of wrong type: string
builder/digitalocean/builder_test.go:341: arg b.config.RawStateTimeout for printf verb %d of wrong type: string
builder/digitalocean/builder_test.go:382: arg b.config.PrivateNetworking for printf verb %s of wrong type: bool
builder/digitalocean/builder_test.go:397: arg b.config.PrivateNetworking for printf verb %s of wrong type: bool
2015-02-25 05:29:53 +01:00
Ryan Uber
78d6dda005
builder/digitalocean: fix response decoding after api changes
2015-01-26 13:19:46 -08:00
Colin Hebert
42d05368ae
Save the generated SSH key as a file in debug mode
2015-01-10 23:52:45 +11:00
Ryan Uber
010c77d05f
builder/digitalocean: default to nyc3
2014-12-10 00:26:56 -08:00
Armon Dadgar
dd5de1e342
Merge pull request #1692 from nitrous-io/digitalocean-image-id
...
Use DigitalOcean image ID for artifact Id()
2014-12-08 11:16:08 -08:00
Cheah Chu Yeow
3d6865fafc
builder/digitalocean: use DigitalOcean image ID for artifact Id().
2014-11-24 08:14:05 +00:00
Vasiliy Tolstov
1e87e796dc
fix using private ip address in digitalocean builder
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-11-12 22:57:29 +03:00
Vasiliy Tolstov
8af85df822
add error code for failed auth
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-11-02 18:47:11 +03:00
Vasiliy Tolstov
a5dc41a730
fix digitalocean v2 api content-type when using json
...
In case of using json we need to set content-type header.
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-11-02 01:47:04 +03:00
Vasiliy Tolstov
e5ea82f920
fix digitalocean v2 api size response
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-30 22:16:21 +03:00
Mitchell Hashimoto
0db6cd3533
Merge pull request #1330 from qur/qemu-vagrant
...
Qemu vagrant
2014-10-28 08:42:17 -07:00
Vasiliy Tolstov
10612b5d89
try to avoid pagination
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-28 16:05:37 +03:00
Vasiliy Tolstov
e614a8c3d5
remove debug output
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-03 01:47:51 +04:00
Vasiliy Tolstov
f4c756a2cb
fix copy/paste error
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-10-03 00:02:46 +04:00
Julian Phillips
90a57c411f
Expand Artifact API to expose build state
...
In order that something consuming an artifact can have access to extra
builder specific data add the State method which allows the caller to
ask for arbitary values by name.
2014-09-22 11:15:47 +01:00
Vasiliy Tolstov
6c6f3c24a5
add v2 api support
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-09-05 18:49:37 +04:00
Mitchell Hashimoto
90d4bcdbe8
builder/digitalocean: region supports vars [GH-1452]
2014-09-02 11:16:39 -07:00
Vasiliy Tolstov
e18f0f7f5b
fix missing parts
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2014-08-28 22:24:31 +04:00