Mitchell Hashimoto
8643c70e35
builder/digitalocean: proper timeouts so poweroff retries
2013-09-04 22:26:05 -07:00
Mitchell Hashimoto
aedd1555d3
builder/digitalocean: properly cleanup goroutines for status checking
2013-09-04 22:21:59 -07:00
Mitchell Hashimoto
4af230a4dc
builder/digitalocean: actually, we want to try hard on shutdown
2013-09-04 22:14:30 -07:00
Mitchell Hashimoto
39f7a5a617
builder/digitalocean: break loop if we reach off state
...
Otherwise we get stuck in a long loop. Whoops.
2013-09-04 22:07:19 -07:00
Mitchell Hashimoto
82b46816d3
builder/digitalocean: retry power off a number of times
...
See comment.
2013-09-04 21:59:58 -07:00
Mitchell Hashimoto
306ebcf042
builder/digitalocean: looser pending event string matching.
...
Most APIs return "has a pending event" but power off seems to return
"already a pending event". WTF. Also, just wtf at the DigitalOcean API.
I can't wait until they change their english and this breaks. Because
it is definitely going to happen, and it's going to be such a fun time.
2013-09-04 21:29:07 -07:00
Mitchell Hashimoto
302871113a
builder/digitalocean: retry on any pending event errors
...
/cc @pearkes - I hate this thing.
2013-09-04 21:20:41 -07:00
Mitchell Hashimoto
d8b048662f
builder/digitalocean: retry destroy a few times
2013-08-31 21:32:35 -07:00
Mitchell Hashimoto
94b76036fc
builder/digitalocean: new multistep API
2013-08-31 12:25:08 -07:00
Jack Pearkes
315d4ce5f5
builder/digitalocean: send a "shutdown" before snapshotting
...
Instead of pulling the plug on a droplet with the "poweroff" command,
we first send a soft shutdown to the API, then we poweroff to allow
the snapshot to properly complete.
Sending just a shutdown and then snapshotting wasn't as reliable as
sending the poweroff manually, for reasons unknown to me.
This fixes #332 .
2013-08-24 13:04:51 +02:00
Mitchell Hashimoto
45f3ca13cb
builder/digitalocean: use HTTP proxy if in env
2013-08-18 20:29:54 -06:00
Jack Pearkes
0dce7086dc
builder/digitalocean: better handling of url params in api requests
2013-08-16 19:47:22 +02:00
Mitchell Hashimoto
64d87bfaf3
*: switch to packer ConfigTemplate
2013-08-15 19:17:23 -07:00
Mitchell Hashimoto
332bdf6edc
builder/*, provisioner/*: set user vars
2013-08-09 15:57:08 -07:00
Mitchell Hashimoto
0a31fac749
builder/digitalocean: use new template processing
2013-08-08 17:25:25 -07:00
Mitchell Hashimoto
5b7d8fbc74
rename builder/common to common since it is generally useful
2013-08-01 12:11:54 -07:00
Mitchell Hashimoto
56c3cbfb2a
builder/common: common config struct for Packer configs
2013-07-23 22:48:31 -05:00
Mitchell Hashimoto
16d102d055
builder/*: switch to MultiErrorAppend
2013-07-19 19:08:25 -04:00
Mitchell Hashimoto
42059f9b07
builder/*: extract to common the config decoding
2013-07-19 15:00:32 -04:00
Mitchell Hashimoto
8e1e40c096
builder/*: convert to common StepProvision
2013-07-16 15:44:41 +09:00
Mitchell Hashimoto
3bf49d1c66
builder/digitalocean: use common connect ssh
2013-07-15 14:14:23 +09:00
Mitchell Hashimoto
05acb7b461
builder/digitalocean: unexport calcaulted settings
2013-07-14 21:20:29 +09:00
Mitchell Hashimoto
a0f1667df1
communicator/ssh: tweakable timeout on retry connection
2013-07-14 21:05:22 +09:00
Mitchell Hashimoto
9718a4656c
communicator/ssh: have a Connection func so we can re-establish
...
[GH-152]
2013-07-14 20:22:57 +09:00
Mitchell Hashimoto
3b4ef72e47
Unused keys are invalid in templates [GH-104]
2013-07-14 09:28:56 +09:00
Jack Pearkes
490279c6b9
builder/digitalocean: add tests for credentials via env vars
2013-07-12 09:47:45 +02:00
Jack Pearkes
d701adb3e0
builder/digitalocean: use detected env variables for credentials
2013-07-11 11:31:09 +02:00
Jack Pearkes
e11fbcdad2
builder/digitalocean: display friendler API error messages
...
Fixes #85
2013-07-01 09:29:45 +02:00
Mitchell Hashimoto
8a609b67c1
builder/*: Fail if provisioning fails [GH-33]
2013-06-26 17:54:57 -07:00
Mitchell Hashimoto
fd44adf2aa
builder/digitalocean: Make tests pass again
2013-06-24 09:25:00 -07:00
Jack Pearkes
76c2fcee87
website: update digitalocean state_timeout default
2013-06-24 09:07:33 +02:00
Jack Pearkes
513c8bc4bb
builder/digitalocean: raised state_timeout default to 6 minutes [GH-26]
2013-06-24 09:03:25 +02:00
Jack Pearkes
ba8fbc8621
builder/digitalocean: add configurable state_timeout
...
The state_timeout config allows you to determine the timeout
for "waiting for droplet to become [active, off, etc.]".
This still defaults to 3 minutes.
2013-06-23 12:51:51 +02:00
Mitchell Hashimoto
1da55ab4b6
builder/digitalocean: Reattempt SSH handshake a few times
...
I ran into a few cases where the droplet was active and a TCP connection
could be made, but SSH wasn't running yet and the handshake failed. A
race condition with the machine boot. This will retry the SSH handshake
a few times.
/cc @pearkes
2013-06-21 23:02:13 -07:00
Mitchell Hashimoto
da4dfbcd12
builder/digitalocean: Properly return errors
2013-06-19 21:00:51 -07:00
Mitchell Hashimoto
867e9d1c8f
builder/digitalocean: timeout TCP connections to SSH
2013-06-19 13:26:08 -07:00
Mitchell Hashimoto
b78fd17a0a
builder/digitalocean: compile with scrub changes
2013-06-19 13:26:03 -07:00
Mitchell Hashimoto
a775c97907
builder/digitalocean: Scrub sensitive information out of logs
...
/cc @pearkes
2013-06-19 13:18:53 -07:00
Mitchell Hashimoto
70fa3fbaac
builder/digitalocean: fmt
2013-06-18 22:02:09 -07:00
Mitchell Hashimoto
264e59d75d
builder/digitalocean: Implement Artifact destroy
...
/cc @pearkes
2013-06-18 21:54:15 -07:00
Mitchell Hashimoto
b9fb065d27
packer: Add Destroy method to artifact
...
[GH-18]
2013-06-18 16:01:14 -07:00
Jack Pearkes
4236ffc8eb
builder/digitalocean: only execute the snapshotname template if parsed
2013-06-18 00:06:59 +02:00
Jack Pearkes
e62bcefcb8
builder/digitalocean: check for err parsing template for snapshot name
2013-06-17 23:54:28 +02:00
Jack Pearkes
6eb0568f07
builder/digitalocean: print bad status code as string
2013-06-17 14:54:24 +02:00
Jack Pearkes
341cfb2c2d
builder/digitalocean: improve error messages from DO api
2013-06-17 14:54:18 +02:00
Jack Pearkes
477ac8cd31
builder/digitalocean: use text/template for the snapshot name
2013-06-17 14:21:15 +02:00
Jack Pearkes
1e17e90acd
builder/digitalocean: add configurable "event_delay" for sleeps
2013-06-17 13:28:21 +02:00
Jack Pearkes
c12e9ff9a8
builder/digitalocean: implement artifacts with the snapshot name
2013-06-17 13:01:42 +02:00
Jack Pearkes
25d5874042
builder/digitalocean: generate temp rsa keypairs for ssh communication
2013-06-15 22:43:18 +02:00
Mitchell Hashimoto
d8cdc88cbe
builder/digitalocean: Make tests pass
...
/cc @pearkes
2013-06-15 11:11:03 -07:00
Mitchell Hashimoto
f289ddce60
builder/digitalocean: Add support for -debug mode
...
/cc @pearkes
2013-06-15 11:09:26 -07:00
Mitchell Hashimoto
03d7a7f6b5
builder/digitalocean: Adhere to new interface, make default in Packer
...
@pearkes: I added "digital-ocean" to the default config since it will
be shipping with Packer. :)
2013-06-15 11:06:39 -07:00
Jack Pearkes
8ba8932552
builder/digitalocean: No need for destroy steps, builder works!
2013-06-14 15:26:03 +02:00
Jack Pearkes
a774e2b444
builder/digitalocean: completed initial pass at all steps.
2013-06-13 19:56:34 +02:00
Jack Pearkes
dd6e4e4933
builder/digitalocean: connect_ssh, create_droplet, droplet_info
2013-06-13 18:48:19 +02:00
Jack Pearkes
4e6993909c
builder/digitalocean: builder config tests and create_ssh_key step
2013-06-13 17:58:06 +02:00
Jack Pearkes
787a3178b3
builder/digitalocean: WIP commit of api interface and initial config
2013-06-13 16:03:10 +02:00