Commit Graph

288 Commits

Author SHA1 Message Date
Josh Graham 5a2c4fe8a0 builder/amazon: Extend timeout and allow user override [GH-1533]
- help resolve https://github.com/mitchellh/packer/issues/1533
  (although timeouts are always ultimately useless in a distributed
  system!)
- makes packer no more idempotent or janitorial than before
- derive maximum number of ticks from timeout
- default timeout to 300s (5m) to cater for global AMI copying
- allow user to override with AWS_TIMEOUT_SECONDS environment variable
2014-10-27 10:38:44 +11:00
Mitchell Hashimoto 010cdb2057 amazon/common: style 2014-10-14 15:39:13 -07:00
Matt Page 6fb2586fb2 fix: Ignore transient network errors when fetching AWS state.
Given that state fetching is an idempotent operation, a transient
network error should not cause the entire build to fail. Instead,
retry when such errors are encountered.
2014-10-13 10:02:46 -07: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
Mitchell Hashimoto db90c16118 builder/amazon: support auto spot price discovery [GH-1465] 2014-09-06 10:44:12 -07:00
Mitchell Hashimoto 7d1db44ca4 builder/amazon: clean up UI output for spot instances a bit 2014-09-05 16:58:17 -07:00
Mitchell Hashimoto 2e5f3da5c1 builder/amazon: fix {{uuid}} default not being replaced 2014-09-05 16:38:05 -07:00
Mitchell Hashimoto 3a69b8c1b8 Merge branch 'add-spot-instance-support' of github.com:henrysher/packer into henrysher-add-spot-instance-support
Conflicts:
	builder/amazon/common/run_config.go
	builder/amazon/ebs/builder.go
	builder/amazon/instance/builder.go
2014-09-05 16:30:22 -07:00
Mitchell Hashimoto 5db91c84bf builder/amazon: string fields on device mappings can use variables 2014-09-05 12:38:19 -07:00
Mitchell Hashimoto 0776d9de34 builder/amazon: ssh_private_ip [GH-1229] 2014-09-04 21:48:14 -07:00
Mitchell Hashimoto bac54a6645 builder/amazon/common: token [GH-1236] 2014-09-04 21:19:20 -07:00
Mitchell Hashimoto 69cd01bbe2 builder/amazon/common: wait for instance ready before tagging [GH-1367] 2014-09-04 18:43:35 -07:00
Mitchell Hashimoto 77bd024079 builder/*: fix flaky tests, get tests passing 2014-09-04 18:11:05 -07:00
Mitchell Hashimoto dc74c2bbdd builder/amazon: tests 2014-09-03 21:27:43 -07:00
Mitchell Hashimoto 2a9cb50b17 builder/amazon: fix broken build 2014-09-02 10:17:52 -07:00
Mitchell Hashimoto 825864a9ea Merge branch 'additional-user-variables' of github.com:nBerg/packer into nBerg-additional-user-variables
Conflicts:
	builder/amazon/common/run_config.go
2014-09-02 09:57:52 -07:00
Mitchell Hashimoto 7439baf75e Merge pull request #1343 from fnoeding/templating
Added support to use templates for more fields in null-builder and amazon-builder
2014-07-19 09:49:49 -07:00
Mitchell Hashimoto 8250755a23 Merge pull request #1228 from jmassara/enhanced_networking
builder/amazon: support for enhanced networking
2014-07-19 09:48:24 -07:00
Florian Noeding e932ec6978 amazon builders now handle templating of user_data and user_data_file 2014-07-17 17:45:25 +02:00
Nina Berg bd1a0d07fb Added some variables to amazon-ebs builder and chef-client provisioner 2014-07-08 13:15:17 -04:00
Ian Delahorne 2d1e1cc83e Sort AMI names in Artifact.String - fixes random test failures
With go tip, the output from Artifact.String will sometimes be output in a
different order than the tests. Sort the AMI strings before outputting.
See https://travis-ci.org/mitchellh/packer/jobs/28748467 for an example of this
failure.
2014-06-30 09:07:36 -05:00
James Massara be27ecc64b Add option to enable enhanced networking (SriovNetSupport) for images. 2014-06-04 14:58:11 -07:00
Henry Huang 3980c7dcfd Save the spot request before waiting for its active state 2014-05-26 23:01:49 +08:00
Henry Huang 1e1fa3de26 Add the cleanup for existing spot request 2014-05-26 23:01:49 +08:00
Henry Huang 5d410bddc9 When unexpected state found in waiting, notify the caller func with a correct error message 2014-05-26 23:01:49 +08:00
Henry Huang 3a74c469e5 Add "spot_price" param into template processing 2014-05-26 23:01:49 +08:00
Henry Huang c33e7cc867 Add the support of launching spot instances in "amazon-ebs" AMI 2014-05-26 23:01:49 +08:00
Greg Burek 3a45712780 Adds support for encrypted EBS volumes 2014-05-22 11:36:22 -07:00
Mitchell Hashimoto 0417ae3059 builder/amazon: alphabetize some things 2014-04-30 15:43:11 -07:00
Mitchell Hashimoto e84e5e4f2c Merge branch 'update-ssh-package' of github.com:higebu/packer into higebu-update-ssh-package
Conflicts:
	builder/amazon/common/ssh.go
	builder/digitalocean/ssh.go
	builder/googlecompute/ssh.go
	builder/openstack/ssh.go
	communicator/ssh/communicator_test.go
	communicator/ssh/keychain.go
	communicator/ssh/keychain_test.go
2014-04-26 11:12:06 -07:00
Ross Smith II e38ff2f84e Merge pull request #1021 from laggyluke/master
builder/amazon: configurable virtualization type
2014-04-21 18:08:32 -07:00
Ross Smith II ef1898083a Merge pull request #971 from fnoeding/amazon-sshkey
optionally use existing ssh key for amazon builders
2014-04-21 08:10:05 -07:00
higebu f087ce16dc Fix the build problem by updating ssh package 2014-04-15 10:17:26 +09:00
Ross Smith II 27491f93f8 use old ssh code until higebu's branch is ready, see #1019 2014-04-11 08:23:12 -07:00
George Miroshnykov fc6e8c0830 builder/amazon: configurable virtualization type 2014-04-10 15:16:31 +03:00
Florian Noeding 6371b70609 optionally use existing ssh key for amazon builders 2014-03-24 12:47:00 +01:00
Nathan Sullivan e44fb1bd2a increase SSH timeouts for Amazon builders, they can take a while to spin up at times 2014-03-04 11:31:14 +10:00
Mitchell Hashimoto 5c7e7daac9 comments 2013-12-28 10:04:15 -07:00
Mitchell Hashimoto 8204944c0e builder/amazon: handle cases when amazon SG isn't available [GH-494] 2013-12-28 10:03:22 -07:00
Mitchell Hashimoto 8aabe01bad builder/amazon/common: run_tags to apply to launch [GH-722] 2013-12-27 20:54:35 -07:00
Mitchell Hashimoto 8e4ce2c591 builder/amazon: alphabetize 2013-12-21 14:22:05 -08:00
Mitchell Hashimoto b95ad0c232 builder/amazon/all: launched instances have a name [GH-642] 2013-12-16 18:11:23 -08:00
Mitchell Hashimoto 1234e61cda builder/amazon/all: get rid of unnecessary field 2013-12-12 21:38:48 -08:00
Mitchell Hashimoto 4677f38882 builder/amazon: parallelize AMI region copies [GH-495] 2013-12-12 12:24:32 -08:00
Nathan Sullivan e711255d95 fix some debugging for PublicIpAddress 2013-11-26 15:03:45 +10:00
Nathan Sullivan 4809186c12 remove excess debugging 2013-11-26 15:02:43 +10:00
Nathan Sullivan 6270d759cd revert whitespace changes - not necessary anymore 2013-11-26 15:01:57 +10:00
Nathan Sullivan 13f55bdec6 working AssociatePublicIpAddress support 2013-11-26 14:45:06 +10:00
Nathan Sullivan 5cbff00afa goamz aspects of AssociatePublicIpAddress working now 2013-11-26 14:14:43 +10:00
Nathan Sullivan 49a131951a reverting testing stuff 2013-11-26 13:46:32 +10:00
Nathan Sullivan 0cfb7564d5 lets try a string instead of a bool for AssociatePublicIpAddress 2013-11-26 13:44:39 +10:00
Nathan Sullivan 5df7bc0acf oops bugfix for work on https://github.com/mitchellh/packer/issues/578 2013-11-26 12:05:37 +10:00
Nathan Sullivan 31bf1f342c https://github.com/mitchellh/packer/issues/578 2013-11-26 11:32:08 +10:00
Mitchell Hashimoto c8e911cdc3 Merge branch 'security-groups' of https://github.com/whiteley/packer into whiteley-security-groups
Conflicts:
	builder/amazon/common/run_config.go
2013-11-05 14:34:12 -08:00
Mitchell Hashimoto b95a56899f builder/amazon: rename availzone to availability zone 2013-10-23 20:44:11 -07:00
Matthew Hooker 1aa551a49c builder/amazon/common: Add AvailZone to StepRunSourceInstance struct
[GH-536]
2013-10-21 08:08:00 -07:00
Matthew Hooker 60428cef60 builder/amazon/ebs: Add config for target AZ.
Fixes [GH-536]
2013-10-21 08:01:34 -07:00
Mitchell Hashimoto 24ad445e2b builder/amazon,builder/openstack: remove more cgl libs 2013-10-16 16:29:53 -10:00
Mitchell Hashimoto 79f7936d66 Remove dependency on identifier package, use time ordered UUID [GH-541] 2013-10-16 16:21:14 -10:00
Patrick Lucas e17984face Fix race condition after launching EC2 instance
It is possible for an instance to not immediately exist after it is
launched. Previously, InstanceStateRefreshFunc would crash if this race
condition were realized.

This change takes the exact same approach of the function above,
AMIStateRefreshFunc, treating 'InvalidInstanceID.NotFound' as if there
were an empty result.
2013-10-11 14:25:18 -07:00
Matt Whiteley 09f4011234 builder/amazon: instances can be launched with a list of security groups 2013-10-04 10:42:45 -07:00
Mitchell Hashimoto cf10fff7fa builder/amazon/common: save access/secret key from env [GH-434] 2013-09-18 13:59:23 -07:00
Mitchell Hashimoto 61320b20a9 builder/amazon/common: error if WaitForState can't find resource
repeatably
2013-09-12 20:37:14 -07:00
Mitchell Hashimoto 1bf91e2845 builder/amazon/common: rename instance.go to state.go, makes more sense 2013-09-12 20:33:58 -07:00
Mitchell Hashimoto 27608a7b0f builder/amazon/*: use WaitForState for AMIs 2013-09-12 20:33:32 -07:00
Mark Peek f941718c3e builder/amazon: add clean_ami_name template function
Add a clean_ami_name template function which will translate illegal
characters in an AMI name to '-'. Example usage would be:
    "ami_name": "Ubuntu 12.04 {{isotime | clean_ami_name}}"
2013-09-07 18:42:50 -07:00
Mitchell Hashimoto 48a53446bf builder/amazon/common: don't need squash here 2013-09-06 11:48:38 -07:00
Mitchell Hashimoto e9d6e83436 builder/amazon/common: support NoDevice [GH-396] 2013-09-06 11:44:57 -07:00
Mitchell Hashimoto 0e2511767e builder/amazon/common: if instance query returns none, ignore 2013-09-05 17:19:23 -07:00
Mitchell Hashimoto f2069c1cd6 Merge pull request #388 from jmassara/ami_region_copy
builder/amazon/all: AMI region copy fixes
2013-09-05 17:14:16 -07:00
Mitchell Hashimoto ed7e0847fd builder/amazon/all: TemporaryKeyPairName
/cc @whostolebenfrog - I actually simplified things quite a bit. I added
a "uuid" global template function so it just uses that now. I renamed it
so that it is clear it is a temporary keypair.
2013-09-05 12:23:08 -07:00
Ben Griffiths f953874448 Allow customization of SSH Key pair pattern
Defined in a template using ssh_keypair_pattern. Defaults to "packer %s"
2013-09-05 13:28:31 +01:00
James Massara 985ce790d0 Also deregister AMI if it was copied to other regions 2013-09-04 17:48:00 -07:00
James Massara 5bca569fa4 builder/amazon: Re-ordered steps for AMI region copying so tags and
launch permissions are also applied to copied AMIs
2013-09-04 16:06:06 -07:00
Mitchell Hashimoto b04cff5a9e builder/amazon/ebs: new multistep API 2013-08-31 13:00:43 -07:00
Mitchell Hashimoto 80ed7eddf4 builder/amazon/chroot: new multistep API 2013-08-31 12:58:55 -07:00
Mitchell Hashimoto 8019cd1839 builder/amazon: don't chmod on windows 2013-08-30 15:04:23 -07:00
Mitchell Hashimoto 4bb320d86f builder/amazon: chmod debug key so it is ssh-ready 2013-08-30 15:03:29 -07:00
Mitchell Hashimoto 9186a7f214 builder/amazon: output DNS name if debug mode 2013-08-30 14:55:56 -07:00
Mitchell Hashimoto 57f185451a builder/amazon: drop private key if debug mode [GH-373] 2013-08-30 14:48:50 -07:00
Mitchell Hashimoto 42beac4516 builder/amazon/common: modify output for AMI copy 2013-08-22 15:32:24 -07:00
Mitchell Hashimoto d03c852ac2 builder/amazon/common: move tags into ami_config 2013-08-22 15:09:21 -07:00
Mitchell Hashimoto ef142ce886 builder/amazon: region copy must go before modify attributes
/cc @jmassara - This has to go before the modify attributes so that
the attributes are properly modified on all resulting AMIs.
2013-08-22 15:03:30 -07:00
Mitchell Hashimoto a4f674f8ed builder/amazon/common: remove duplicates from ami_region
/cc @jmassara
2013-08-22 14:58:21 -07:00
James Massara c9de4c9644 Make sure ami_regions are valid 2013-08-21 18:44:14 -07:00
James Massara 228d0d593a amazon/common: Added AMI CopyImage support 2013-08-21 13:53:07 -07:00
Mitchell Hashimoto c5823be2e0 builder/amazon: fix crash case if SIGINT while waiting for instance 2013-08-17 09:45:23 -06:00
Mitchell Hashimoto b49fe4971a builder/amazon: modifying more than one AMI attribute type works 2013-08-15 20:28:35 -07:00
Mitchell Hashimoto 64d87bfaf3 *: switch to packer ConfigTemplate 2013-08-15 19:17:23 -07:00
Mark Peek 91670cea07 builder/amazon: add block device mappings [GH-90] 2013-08-15 14:05:08 -07:00
Mitchell Hashimoto 7cc9aa36ff builder/amazon/common: correct logic in deleting secutiry group 2013-08-12 13:43:52 -07:00
Mitchell Hashimoto 48b9da2feb builder/amazon/common: retry deleting security group [GH-278] 2013-08-12 13:34:55 -07:00
Mitchell Hashimoto 3ff3746969 builder/amazon/common: support user_data_file 2013-08-12 11:52:43 -07:00
Mitchell Hashimoto f69b365f39 Merge pull request #253 from phobos182/master
builder/amazon/common: added passing UserData to goamz.
2013-08-12 11:36:15 -07:00
Jeremy Carroll 6599f5a255 Log error messages from goamz. 2013-08-09 11:55:34 -07:00
Mitchell Hashimoto fd6dbc42d1 builder/amazon/common: rename StepModifyAttributes to
StepModifyAMIAttributes
2013-08-08 22:51:48 -07:00
Mitchell Hashimoto bfc2ac1eaa builder/amazon/common: AMIConfig common config
/cc @jmassara - I pulled out the AMI stuff into a common config
struct and also added in the new template stuff (that didn't exist
when you made the pull, so not your fault! :))
2013-08-08 22:50:37 -07:00
Mitchell Hashimoto 96a91e9555 builder/amazon/common: on modify AMI attributes, skip if no work
/cc @jmassara
2013-08-08 22:46:50 -07:00
Mitchell Hashimoto dcfbef4fc0 builder/amazon/common: use new API for goamz to set AMI attributes
/cc @jmassara
2013-08-08 22:43:29 -07:00
James Massara 2ba59617fc builder/amazon/all: Added support for setting attributes on the AMI 2013-08-08 22:35:21 -07:00
Mitchell Hashimoto e6b7a47841 builder/amazon/common: RunConfig to template processing 2013-08-08 17:25:25 -07:00
Mitchell Hashimoto 96cc8a4aee builder/amazon/common: access config uses template processing 2013-08-08 17:25:25 -07:00
Mark Peek 9638a30d35 builder/amazon/all: address feedback for ami tag refactoring change
Use explicit name for Tag field and note tags added in the ui.
2013-08-07 19:37:41 -07:00
Jeremy Carroll 746ac9dee4 Convert string to byte array 2013-08-07 15:20:49 -07:00
Jeremy Carroll 4f02c506e9 Testing adding user-data support to Packer 2013-08-07 14:33:20 -07:00
Mark Peek 8a636519f8 builder/amazon/all: refactor ami tags [GH-233]
Refactor the EBS ami tag into a common step and add support
for instance-store ami tags.
/cc @jmassara
2013-08-06 15:05:03 -07:00
Andrei Serdeliuc fbe648d9e1 fix check for vpcid
check for VpcId was incorrectly checking if VPC is empty, instead of not empty.
2013-08-05 16:19:05 +01:00
Mitchell Hashimoto 8286536180 builder/amazon/common: sleep between API calls for SSHAddr 2013-08-03 16:38:21 -07:00
Mitchell Hashimoto 4acdeb2832 builder/amazon/common: be more gentle on AWS API while getting SSHAddr 2013-08-03 16:37:34 -07:00
Mitchell Hashimoto a21997db7f builder/amazon/common: refresh instance while connecting to SSH [GH-243] 2013-08-03 16:23:32 -07:00
Mitchell Hashimoto d76b7e8c36 fmt 2013-07-31 15:29:03 -07:00
Mark Peek 1aec0d6a50 Handle missing source AMI error
Specifying a non-existent source AMI will result in an empty array of
images in the response which would cause an "index out of range" panic.
This change handles this case more gracefully with an error message.
2013-07-31 14:20:25 -07:00
Mitchell Hashimoto 92ba998150 fmt 2013-07-31 11:41:07 -07:00
James Massara 13fb00b2c6 Added IAM Instance Profile support
Conflicts:
	builder/amazon/common/run_config.go
2013-07-31 11:40:59 -07:00
Mitchell Hashimoto 006f0440a7 builder/amazon/common: wait for terminated state 2013-07-31 09:37:43 -07:00
Mitchell Hashimoto a2481f2300 builder/amazon/common: prefer public DNS if possible for SSH 2013-07-31 09:30:52 -07:00
Mitchell Hashimoto 668631bd87 builder/amazon/common: correct the log statement 2013-07-30 17:32:41 -07:00
Mitchell Hashimoto 12e7042c5b builder/amazon/chroot: wait for volume to beecome ready 2013-07-30 16:07:49 -07:00
Mitchell Hashimoto c7b88d654e builder/amazon/common: generic wait for state to wait for any state 2013-07-30 16:07:48 -07:00
Mitchell Hashimoto b645586d58 builder/amazon/chroot: boilerplate 2013-07-30 16:07:48 -07:00
Mitchell Hashimoto 83aca618d8 builder/amazon/common: wait for AMI to be available [GH-207] 2013-07-26 09:38:16 -07:00
Mitchell Hashimoto 1d0adbf2c2 builder/amazon/*: sigint while waiting for state change works 2013-07-25 20:49:15 -05:00
Mitchell Hashimoto d46741e4f7 builder/amazon/*: wait for AMI to be ready in common, use it instance 2013-07-25 00:56:37 -05:00
Mitchell Hashimoto 110fd0e17f builder/amazon/common: SSH into private IP if in VPC 2013-07-23 22:48:33 -05:00
Mitchell Hashimoto dd1c4d4d2a fmt 2013-07-23 22:48:33 -05:00
Mitchell Hashimoto c710323f04 builder/amazon/*: Fix failing tests from rebase of VPC 2013-07-23 22:48:33 -05:00
Mitchell Hashimoto 992a9bfb22 builder/amazon/common: extract Artifact 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 0a76d07363 builder/amazon: provision on instance 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 2f9840a4cf builder/amazon: extract SSH connect funcs 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 64ced7ff2c builder/amazon: extract StepRunSourceInstance 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 30ab70388b builder/amazon/common: panic if SSHPot is 0 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 4f568f4998 builder/amazon: extract StepSecurityGroup 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 45096d0768 builder/amazon: extract StepKeyPair for both 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto b3edb2fba5 fmt 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 1750b34f70 builder/amazon/*: clean up tests 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto 60ed71b2ff builder/amazon/common: tests for runconfig 2013-07-23 22:48:32 -05:00
Mitchell Hashimoto e5e306049c builder/amazon/common: RunConfig for launch info 2013-07-23 22:48:31 -05:00
Mitchell Hashimoto 5aced3f339 builder/amazon/common: AccessConfig for standard access config 2013-07-23 22:48:31 -05:00