Commit Graph

513 Commits

Author SHA1 Message Date
Rickard von Essen d16d5d9686 Merge pull request #3817 from ChrisLundquist/dynamic-source-ami
Dynamic source ami
2016-10-25 21:24:41 +02:00
James Nugent 395d88941c amazon: Allow SSH Agent auth for existing key pair
This commit allows SSH Agent authentication to be used with an existing
key pair defined in AWS.
2016-10-23 22:26:14 -05:00
James Nugent 7425fef2c7 builder/amazon: Allow use of local SSH Agent
This commit adds an option to use the local SSH Agent to authenticate
connections to source instances started by the the EBS and Instance
Store builders.

This is of use when the source AMI _already_ has configuration for
authorized SSH keys - for example if one uses an SSH certificate
authority.

A further extension (not implemented in this commit) is to allow SSH
agent use with a pre-defined key pair, in order to allow keys with
passphrases to be used without giving the passphrase to Packer.
2016-10-23 21:43:47 -05:00
Asif R Choudhury 48d94342ba Add us-east-2 (Ohio) AWS region 2016-10-17 21:31:41 -05:00
Rickard von Essen 0be3034e82 Merge pull request #3953 from rickard-von-essen/amz-ssh
builder/amazon: Allow using ssh_private_key_file and ssh_password
2016-10-03 10:22:15 +02:00
Rickard von Essen acc2689b49
builder/amazon: Allow using ssh_private_key_file and ssh_password
This adds support for using amazon-ebs/amazon-instance builder without
a keypair. If a ssh_private_key_file is supplied without a
ssh_keypair_name no temporary ssh keypair is created. If ssh_password is
used no temporary ssh keypair is created and the password is used when
trying to connect.

Closes #2301
Closes #3156
2016-10-02 22:20:36 +02:00
Rickard von Essen cffc8e892c Merge pull request #3382 from ahamidi/encrypted-boot-volume
Create AMI with encrypted boot volume
2016-10-02 01:02:43 +02:00
Chris Lundquist 1b4895c684 Merge remote-tracking branch 'origin/master' into dynamic-source-ami 2016-10-01 22:20:17 +00:00
Matthew Hooker a9abe43325 builder/amazon: add retry login when creating tags.
also move Retry from builder/googlecompute/common to common/retry
2016-09-28 18:22:31 -07:00
Rickard von Essen 3b47893eb8
builder/amazon: reverted wrongly modified ssh_test's. 2016-09-14 20:26:09 +02:00
Rickard von Essen 067155c344
builder/amazon: guard aginst empty/nil PrivateIpAddress and updated tests. 2016-09-14 00:16:09 +02:00
Rickard von Essen 7f4bee737c Merge pull request #3752 from tarrall/issue3751-ssh-privateip-classic
builder/amazon: Honor ssh_private_ip flag in EC2-Classic, not just VPC
2016-09-13 22:54:00 +02:00
Rickard von Essen 120b60ae37 Merge pull request #3865 from dpiddy/amazon-ssh-retry-fix
amazon/common/ssh: fix saving of instance to state
2016-09-12 15:04:35 +02:00
Dan Peterson c7af9a67bc amazon/common/ssh: fix saving of instance to state
Fixes #3496
2016-09-09 10:16:53 -03:00
Jeremy Asher 85ae04bb75 split up BlockDevices in amazon/common
This breaks up the two options provided by BlockDevices into separate
structs to allow only one of them to be used by the amazon-chroot
builder.
2016-09-03 09:58:45 -07:00
Chris Lundquist defdd1ecf3 Merge remote-tracking branch 'origin/master' into dynamic-source-ami 2016-09-02 01:43:03 +00:00
Rickard von Essen ba629922c6 Merge pull request #3662 from ryansb/boost-spot-bid
(AWS Spot) Add 0.5 cents to discovered spot price
2016-08-27 03:18:59 +02:00
Krzysztof Wilczynski d01fb65dcf Fix. Use temporary_key_pair_name when specified. (#3739)
Fix: Use temporary_key_pair_name when specified.

This is to fix an issue where the temporary_key_pair_name configuration option
for amazon-ebs and amazon-instance builders would be ignored and replaced with
an automatically generated value using UUID, even when the option was explicitly
specified.

Remove space from the auto-generated SSH key-pair name.

Resolves #3736
2016-08-25 09:17:57 +02:00
Chris Lundquist 3cc8d35450 [dynamic-source-ami] fix old key name in error message 2016-08-21 00:58:01 +00:00
Chris Lundquist b4d20706ce [dynamic-source-ami] add some very basic tests 2016-08-21 00:29:51 +00:00
Chris Lundquist 57e7a1a3e6 [dynamic-source-ami] fix lint error 2016-08-21 00:07:58 +00:00
Chris Lundquist 95afaa58ca [dynamic-source-ami] rename to source_ami_filter 2016-08-20 23:34:22 +00:00
Chris Lundquist 0e248f1516 [dynamic-source-ami] make most_recent work 2016-08-20 23:08:45 +00:00
Chris Lundquist ec1abb9448 [dynamic-source-ami] proof of concept 2016-08-20 18:58:36 +00:00
Ali Hamidi c6a527dc46 throw error if encrypted ami is shared 2016-07-29 15:01:24 -07:00
Ali Hamidi 53b3867c50 allow packer to create an encrypted copy of the AMI 2016-07-29 15:01:24 -07:00
Robert Tarrall 94bf981d3b Honor ssh_private_ip flag in EC2-Classic, not just VPC
VpcId will be nil in Classic, but we may still wish to ssh to the
instance's private IP address -- if for example we are using security
groups to block SSH access via the public IP.
2016-07-26 08:15:44 -06:00
Chris Bednarski c0b637b0c5 Merge pull request #3733 from envato/no-shutdown-behaviour-instance-backed
No shutdown behaviour instance backed
2016-07-19 01:49:05 -07:00
Ricard Clau 172a1c7a57 add source ami to output 2016-07-07 00:05:59 +01:00
Chris Bednarski ee5c5260a4 Merge pull request #3663 from liv3d/add_ap-south-1
Add support for ap-south-1 in AWS
2016-07-06 14:09:24 -07:00
Chris Bednarski 443ffd68f2 Added explicit error when SG is not working 2016-07-02 15:48:51 -07:00
Dan Offord 4428079a68 Add support for ap-south-1 in AWS
Amazon recently announced support for ap-south-1 in Mumbai, adding this
to the list of known regions to Packer
2016-06-29 15:44:02 +01:00
Ryan S. Brown c68ddef4e9 (AWS Spot) Add 0.5 cents to discovered spot price
Related to #2979 , in volatile spot markets the automatic price can
cause your instances to be evicted if the spot price rises. This change
adds one half a cent to your bid to protect against small amounts of
price volatility.
2016-06-29 07:00:21 -04:00
Mike LoSapio 080806243e Added a hook to query the security groups before launching the instance - seems to catch the AWS eventual consistency nicely 2016-06-27 16:20:53 -04:00
Patrick Robinson 40bd45764c Only set InstanceInititatedShutdownBehavior on ebs instances 2016-06-27 10:28:54 +10:00
Chris Bednarski ab9621ab7d Added aws shutdown_behavior to the changelog 2016-06-14 14:34:01 -07:00
Patrick Robinson f361e1d894 Precompile regex 2016-06-14 14:29:10 -07:00
Patrick Robinson a9f914ea97 Add shutdown_behaviour option
This means an instance will terminate upon shutdown.
2016-06-14 14:29:10 -07:00
owjjh 658fadbc53 changing if conditionals to be ! instead of == false 2016-06-07 09:21:43 -04:00
owjjh d489ce9904 make fmt run 2016-06-06 14:37:09 -04:00
owjjh de5b69a8df Adding ability to skip region validation when using AWS 2016-06-06 14:17:12 -04:00
Chris Chalfant 8163e16e02 gofmt code 2016-03-14 13:49:42 -04:00
Chris Chalfant 72a7123a0b Add option to tell packer not to stop the instance
It is sometimes desirable to sysprep a windows machine before creating
an EC2 image. The AWS-approved way to do this is to run
ec2configservice.exe -sysprep and let ec2configservice shut down the instance.
This change adds an option to disable the stop instance call issued by packer
so that the user can control when the machine is stopped.
2016-03-14 12:54:03 -04:00
Chris Bednarski d0ab8658bc Create a session for EC2RoleProvider; prevents crash; fixes #3123 2016-02-19 17:10:05 -08:00
Chris Bednarski 4458de4ea0 Reformat 2016-02-11 23:53:40 -08:00
Chris Bednarski 765ec5cf39 Merge pull request #2962 from dave2/postprocess_amazon_ova
New post-processor: amazon-import
2016-02-11 23:38:15 -08:00
Chris Bednarski 358b5c62e2 Merge pull request #3143 from ThatGerber/iam-roles
IAM CLI Profile/Assume Role Support
2016-02-04 16:47:09 -08:00
Christopher Gerber e7711c31ea Wrong function to convert int to string. 2016-02-04 16:18:57 -06:00
Christopher Gerber b75d561c56 Fixes more windows testing errors.
"constant 9999999999 overflows int" running test on CI server. Replaced with timestamp to unixnano
2016-02-04 16:12:18 -06:00
Christopher Gerber d25ba245f4 Fixes bytes to string issues in Windows build. 2016-02-04 16:05:49 -06:00
Christopher Gerber a6aefa859f Fixes issue in build where multiple processes were trying to access the same file. 2016-02-04 15:39:54 -06:00
Christopher Gerber 6c3e0daf24 Added tests. Updated CLIConfig to pass tests. 2016-02-04 14:56:22 -06:00
Chris Bednarski e6b6f0b020 Merge pull request #2539 from fnoeding/amazon-ebs-fix-ec-user-data-encoding
amazon builder: always base64 encode ec2 user data
2016-02-03 16:47:01 -08:00
Christopher Gerber f1ae2a2b5a Moved assume credentials to CLIConfig. Added new functions and methods to CLIConfig. Ran gofmt. 2016-02-03 15:53:01 -06:00
Christopher Gerber 4cf9e36085 Changes credential/config file opener to use homedir instead of HOME environmental variable. 2016-02-03 10:43:48 -06:00
Christopher Gerber 7975c5e336 Move CLIConfig instantiation inside of ProfileName check. 2016-02-02 08:36:36 -06:00
Christopher Gerber 883acb18fa IAM Role Switching
Adds initial IAM Role Switching support and support for AWS CLI Credential and Config files.

See: https://github.com/mitchellh/packer/issues/3109
2016-02-01 18:55:59 -06:00
Chris Bednarski 0cad32c696 Move region list into a function so we can re-use it in tests 2016-01-12 19:03:21 -08:00
Chulki Lee 20c0f6b02b fix doc: wrong function name 2016-01-11 13:06:34 -08:00
Chulki Lee 1aa24035fc add ap-northeast-2: Asia Pacific (Seoul) 2016-01-11 13:05:18 -08:00
Chulki Lee 7018517374 one region per line, sorted 2016-01-11 13:04:35 -08:00
Chulki Lee 3f0795b23c sort regions by name 2016-01-11 13:04:00 -08:00
Chulki Lee 7f3f5f4bfa add tests for all ami regions 2016-01-11 13:02:38 -08:00
David Zanetti 418da16991 Track the import task and report AMIs created from it 2015-11-23 15:55:09 +13:00
Luke Amdor 8682dec178 aws: build after upstream breaking change
see 1a69d06935
2015-10-30 13:58:56 -05:00
Mark Peek eb15536041 Merge pull request #2774 from btd/btd-patch-1
Fix AMI creation - replace not allowed character , and add allowed .
2015-10-26 22:00:16 -07:00
Mark Peek 4e1e9b788a Merge pull request #2845 from abridgett/feature/spot_price_zero
spot_price of "0" to mean on demand
2015-10-26 21:51:44 -07:00
Denis Bardadym 25e2ff7b85 Fix not allowed comma, add all allowed special characters 2015-10-19 13:41:30 +03:00
Mark Peek 6f5c64db41 Merge branch 'use-default-volumesize' 2015-10-18 13:04:41 -07:00
Mark Peek fc39f07ecc Add EbsOptimized to RequestSpotInstances (#2806) 2015-10-18 11:39:36 -07:00
Mark Peek edda3de677 Merge pull request #2806 from abridgett/feature/add_ebs_optimized_support
Add ebs_optimized support
2015-10-18 11:31:50 -07:00
Mark Peek f6c7e3740f Don't create EBS block device if VirtualName is specified 2015-10-18 11:05:21 -07:00
Mark Peek 914e78f602 builder/amazon/common: go fmt 2015-10-18 11:00:05 -07:00
Mark Peek 581c3574f6 Merge pull request #2672 from lightpriest/b-aws-ebs-block-device
Fix and refactor block device mapping builder
2015-10-18 10:56:53 -07:00
Mark Peek 45829c30e5 builder/amazon/*: fix go vet 2015-10-11 12:18:23 -07:00
Adrian Bridgett da771c469e spot_price of "0" to mean on demand
this helps avoid duplicating packer templates just to select
spot instances or not
2015-10-06 22:13:17 +01:00
Adrian Bridgett 8349e22df9 Add ebs_optimized support 2015-10-06 21:36:21 +01:00
Or Cohen 2a94b596ce Fix and refactor block device mapping builder
Fix NoDevice not properly configured #2398.
Refactor the mapping builder to match BlockDeviceMapping from AWS SDK:

* If NoDevice is specified, include NoDevice only.
* If VirtualName starts with ephemeral, don't create Ebs (they are mutually
  exclusive anyway)
* Otherwise, assume Ebs and create it with the exact specified attributes by
  the user.

Change/add tests to reflect these changes.
2015-08-25 00:24:05 +03:00
Chris Bednarski 1a775c05d9 Update calls to amazon to match the upstream
- see http://aws.amazon.com/releasenotes/2948141298714307
- run awsmigrate-renamer on each amazon module (chroot, instance, etc.)
2015-08-17 17:44:01 -07:00
Chris Bednarski 4cc443da8e Update use of ec2rolecreds to match upstream 2015-08-10 13:59:56 -07:00
Chris Bednarski abb67fdd79 Fix govet issues 2015-08-05 19:41:29 -07:00
Florian Noeding 62c39888b4 amazon builder: always base64 encode ec2 user data 2015-07-31 16:34:33 +02:00
Florian Noeding 98b9d22b68 amazon builder: only fetch password for winrm 2015-07-31 15:34:25 +02:00
Chris Bednarski a9c299d9c4 Merge pull request #2404 from mitchellh/b-instance-destroy
amazon/common: store instance ID earlier for cleanup
2015-07-28 18:24:37 -07:00
Chris Bednarski 28bf1877c2 Updated AWS SDK calls to match the 0.7.0 release of the AWS SDK 2015-07-28 17:10:21 -07:00
Yo Takezawa 628462b919 Use snapshot size if you don't specify a VolumeSize 2015-07-21 14:07:30 +09:00
Tommy Ulfsparre 241903d0b0 no point in setting iops on a standard volumes 2015-07-15 17:18:03 -07:00
Chris Bednarski c615539929 Reformat long lines 2015-07-15 17:17:59 -07:00
Chris Bednarski 9365a43179 Reformat 2015-07-15 17:07:36 -07:00
Tommy Ulfsparre ae064207d5 Add test for ephemeral block device mapping 2015-07-15 17:05:32 -07:00
Anthony Spring 224bb78175 Make EBS block device mapping optional for ephemeral virtual names. 2015-07-15 17:04:45 -07:00
Mitchell Hashimoto 26aa3dd575 amazon/common: store instance ID earlier for cleanup 2015-07-07 11:07:38 -06:00
Steven Merrill 0869c9fe64 Fix #2830. 2015-07-02 10:23:44 -04:00
Mitchell Hashimoto 0a2e54feaf builder/amazon: output WinRM password for debug mode [GH-2336] 2015-06-29 09:40:15 -07:00
Mitchell Hashimoto 95dd79740f Merge pull request #2324 from tcahill/group-launch-permissions
Fix setting ami_groups
2015-06-29 09:30:51 -07:00
Mitchell Hashimoto 7b64723a11 Merge pull request #2327 from emate/fix-for-spot-requests-cleanup
Fixes spot instance cleanup.
2015-06-29 09:24:01 -07:00
Mitchell Hashimoto aab5ca7059 update CHANGELOG 2015-06-29 09:22:33 -07:00
Marcin Matlaszek 3eaf7f38b0 Fix adding launch permissions for created ami. 2015-06-29 15:39:27 +02:00
Tom Cahill 6644d76982 Use aws.String to obtain string pointers 2015-06-26 12:08:44 -07:00
Tom Cahill 016d916d83 Fix adding groups to AMI launch permissions.
Previously, groups were granted launch permissions by submitting a
ModifyImageAttribute request with the UserGroups parameter set
appropriately. This is no longer valid, as the LaunchPermission
parameter must be set.
2015-06-26 10:52:27 -07:00
Marcin Matlaszek 586cab11ee Fixes spot instance cleanup. 2015-06-26 15:29:46 +02:00
Tommy Ulfsparre 8ae0cfc759 copy and convert to pointer 2015-06-25 20:07:45 +02:00
Clint 7b9d48799e Merge pull request #2316 from jjappi/fix-aws-tagging
Fix failing AMI snapshot tagging when copying to other regions.
2015-06-25 10:17:34 -05:00
Marcin Matlaszek dd97a60c9b Fix for tag creation when creating new ec2 instance. 2015-06-25 17:02:38 +02:00
Jani Jappinen c537623bc6 Fix failing AMI snapshot tagging when copying to other regions. 2015-06-25 17:25:28 +03:00
Clint Shryock 7af5d5419a builder/amazon: Fix issue with sharing AMIs with ami_users 2015-06-24 11:41:58 -05:00
Mitchell Hashimoto 944b4bf46c common: delete file if checksum fails 2015-06-22 12:17:29 -07:00
Clint 6579219013 Merge pull request #2282 from mitchellh/f-amazon-cleanup-volumes
builder/amazon-ebs: Clean up orphan volumes
2015-06-22 12:56:26 -05:00
Clint Shryock c9714ce69e builder/amazon-ebs: Clean up orphan volumes
Fixes #1783
2015-06-19 10:22:39 -05:00
Mitchell Hashimoto 9c0f37b2c9 builder/amazon: fix weird edge cases with key names [GH-2281] 2015-06-19 06:21:20 +02:00
Mitchell Hashimoto b7dab2689a fmt 2015-06-18 05:23:04 +02:00
Mitchell Hashimoto de2004c1c9 Merge branch 'master' of https://github.com/nyetsche/packer into nyetsche-master 2015-06-15 15:21:58 -07:00
Clint Shryock d22c4173d3 fix crash when waiting for an instance that has failed 2015-06-15 11:53:21 -05:00
Clint 2372393f64 Merge pull request #2212 from mitchellh/f-amazon-add-tags-to-snapshots
Add EBS snapshot tags #846 #1219
2015-06-15 10:05:57 -05:00
Clint 8fca582278 Merge pull request #2221 from mitchellh/f-amazon-force-deregister-artifacts
builder/amazon: Add force_deregister option
2015-06-15 10:02:30 -05:00
Mitchell Hashimoto ccf20568a7 Merge pull request #2240 from mitchellh/f-windows
Windows AWS instances
2015-06-14 10:52:10 -07:00
Mitchell Hashimoto b8d5bd3776 Merge pull request #2242 from emate/spot_network_interfaces_fix
Fix network interface spec when requesting spot.
2015-06-14 10:48:59 -07:00
Marcin Matlaszek b51761ca36 Fix network interface spec when requesting spot. 2015-06-14 17:47:45 +02:00
Mitchell Hashimoto e9d916a7bc builder/amazon: don't print windows password 2015-06-13 23:14:48 -07:00
Mitchell Hashimoto 8f6ecfd9e3 builder/amazon: various fixes (minor) to get things going 2015-06-13 23:12:59 -07:00
Mitchell Hashimoto 022a115d19 builder/amazon: improve messaging 2015-06-13 22:42:10 -07:00
Mitchell Hashimoto d23f254b76 builder/amazon: don't get password if platform not set on image 2015-06-13 22:39:19 -07:00
Mitchell Hashimoto fd4e0e9da4 builder/amazon: StepGetPassword 2015-06-13 22:35:45 -07:00
Mitchell Hashimoto 115d583cff helper/communicator: make host more generic 2015-06-13 19:23:33 -04:00
Mitchell Hashimoto e557928119 builder/amazon: use helper/communicator 2015-06-13 18:16:12 -04:00
Clint Shryock bec59b535d builder/amazon: Add force_deregister option, to automatically deregister artifacts with name conflicts 2015-06-12 13:23:47 -05:00
Clint Shryock 1fbf8b7f32 update create_tags for new sdk 2015-06-11 10:43:27 -05:00
Clint Shryock a8155e17aa merge acaire/add-ebs-snapshot-tags 2015-06-11 10:33:55 -05:00
Clint Shryock 2056fda4d3 builder/amazon: Allow spaces in AMI names 2015-06-10 16:19:36 -05:00
Mitchell Hashimoto be4a82dfae amazon/*: fix some merge conflicts 2015-06-10 10:33:01 -07:00
Mitchell Hashimoto 8e1db0d94c Merge branch 'fix_amazon_instance_waits' of https://github.com/renat-sabitov/packer into renat-sabitov-fix_amazon_instance_waits 2015-06-10 10:31:21 -07:00
Jan Schumann 802cfa3871 make sure IOPS is not set for empty VolumeType 2015-06-10 17:21:25 +02:00
Jan Schumann 5d600c70f2 added test to illustrate wrong behavior 2015-06-10 17:20:41 +02:00
Clint Shryock 4da118c64f fix up tests 2015-06-09 11:56:40 -05:00
Clint Shryock 999b0874cc Update AWS EBS builder to fix invalid params 2015-06-09 11:38:53 -05:00
Clint 455d57a87f Merge pull request #2187 from mitchellh/f-aws-add-prevalidate-step
builder/aws: Add pre validate step, to validate things before building.
2015-06-08 22:02:36 -05:00
Clint Shryock 68040f786c show AMI id in error message 2015-06-08 22:00:59 -05:00
Clint Shryock 231f01cd35 builder/aws: Add pre validate step, to validate things before building. 2015-06-08 17:08:39 -05:00
Mitchell Hashimoto 984bbc3a1e amazon/common: wording nit 2015-06-08 09:38:50 -07:00
Mitchell Hashimoto 8aec42e363 update CHANGELOG 2015-06-08 09:25:56 -07:00
Mitchell Hashimoto 9387cc1ea1 Merge pull request #2175 from henrysher/fix-duplicate-ami
check the region before do the ami copy to fix the duplicate ami [GH-2123]
2015-06-08 09:20:02 -07:00
Henry Huang 052b5e6699 "Name" parameter required for copying ami across regions [GH-2172] 2015-06-05 11:15:48 +00:00
Henry Huang a5c476c6fe check the region before do the ami copy to fix [GH-2123] 2015-06-04 06:16:44 -04:00
Seth Vargo 33ca8b7fb5 Migrate to new AWS repo 2015-06-03 17:13:52 -04:00
Mitchell Hashimoto edf3415c6e builder/amazon: delete physical private key for debug mode [GH-1801] 2015-05-29 17:10:14 -07:00
Mitchell Hashimoto 913d6f6996 builder/amazon/common: fix compilation issues with latest libs 2015-05-28 10:20:34 -07:00
Mitchell Hashimoto 07734133a3 builder/amazon: fix test failures 2015-05-28 09:44:33 -07:00
Mitchell Hashimoto 3031886aaf Merge branch 'master' of https://github.com/aocsolutions/packer into aocsolutions-master 2015-05-28 09:35:02 -07:00
Mitchell Hashimoto 11e2fad6d0 Merge pull request #2022 from mefellows/issue/2021
Report error during Temporary Security Group creation in AWS EBS builder
2015-05-28 08:32:55 -07:00
Mitchell Hashimoto b78b119a11 amazon/*: fix merge issues with lib switch 2015-05-28 08:31:22 -07:00
Mitchell Hashimoto 44b980e659 Merge branch 'aws-sdk-go' of https://github.com/jen20/packer into jen20-aws-sdk-go 2015-05-28 08:24:41 -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 c78c4e78ad amazon/common: sleep 3 seconds if instance doesn't exist 2015-05-27 20:15:07 -07:00
Mitchell Hashimoto f78d7eefdc Merge pull request #2129 from lokulin/master
Fixes #2128 Retry the AWS API when looking for a newly created instance
2015-05-27 20:14:14 -07:00
Mitchell Hashimoto 50d7c598e9 amazon/ebs: use new interpolation stuff 2015-05-27 11:35:56 -07:00
lokulin bda4ef7c65 Retry the AWS API when looking for a newly created instance
Sometimes the AWS API responds that it can't find a newly created
instance if you poll it too soon after creation.  Retry a few times
to be sure it really hasn't been created.
2015-05-22 15:08:51 +10:00
James Nugent 65a9347b1e Fix potential nil pointer errors in ported code
This commit adds extra nil checks for some pointers which were not
necessary when using goamz
2015-04-15 12:17:44 -07:00
James Nugent e99cd56b6c Migrate from mitchellh/goamz to awslabs/aws-sdk-go
This commit moves the Amazon builders of Packer away from the Hashicorp
fork of the goamz library to the official AWS SDK for Go, in order that
third party plugins may depend on the more complete official library
more easily.
2015-04-12 21:33:09 -04:00
Matt Fellows a973dce7d3 Report error code during Temporary Security Group creation (#2021) 2015-04-07 12:11:34 +10:00
Nevins Bartolomeo 6686b62347 AWS availability zone could be incorrect when using spot instances with no AZ specified 2015-04-03 20:52:54 -04:00
renat-sabitov-sirca d046e1cc5b Fixing transient AWS errors during EBS builds
Relates to #1539

AWS is eventually consistent and instance can be not visibile for
some time after creation. This fix eliminates describe-instances
call before going to the proper wait loop
2015-03-11 10:34:21 +11:00
Ash Caire 361e859556 Add EBS snapshot tags 2015-03-01 10:27:30 +11:00
Emil Hessman 05c2206684 builder/amazon/common: fix incorrect printf verb type in amiRegionCopy
Fixes the following vet reports:

builder/amazon/common/step_ami_region_copy.go:81: arg target for printf verb %s of wrong type: github.com/mitchellh/goamz/aws.Region
builder/amazon/common/step_ami_region_copy.go:93: arg target for printf verb %s of wrong type: github.com/mitchellh/goamz/aws.Region
2015-02-25 05:29:53 +01:00
Lesko, Matthew (NIH/NLM/NCBI) [C] 43f08b2664 go fmt all the things 2015-01-13 22:58:41 -05:00
Lesko, Matthew (NIH/NLM/NCBI) [C] 62e054c404 simplify output 2015-01-13 21:40:15 -05:00
Lesko, Matthew (NIH/NLM/NCBI) [C] 9d097f9d4e Permit Temp keys and named SSH keypairs
These changes permit the use of pre-created SSH keypairs with AWS. If
so, the configuration for the builder needs to include an
ssh_keypair_name option and a ssh_private_key_file.

If ssh_private_key_file is *not* defined, it'll go through the
rigamarole of creating a temporary keypair. The ssh_keypair_name option
by itself won't make that change, because it doesn't make sense to
specify a keypair but not tell packer where the private key is, but it
does happen that you could have a private key and the public-key is
"baked in", and not part of your EC2 account.
2015-01-13 16:27:33 -05:00
Lesko, Matthew (NIH/NLM/NCBI) [C] 8c87b1cc00 First attempt for re-using a named EC2 keypair
Adds a 'ssh_keypair_name' option to the configuration
for AWS, along with some munging to create the
temporarily keypair if one isn't specific.

NOT YET WORKING.

From a 'make' I get the following errors:

builder/amazon/ebs/builder.go:94: b.config.SSHKeyPairName undefined
(type config has no field or method SSHKeyPairName)

builder/amazon/instance/builder.go:199: b.config.SSHKeyPairName
undefined (type Config has no field or method SSHKeyPairName)
2015-01-13 13:12:04 -05:00
Mitchell Hashimoto 2dfc5d3e71 builder/amazon: inject special metadata for atlas artifacts 2014-12-09 16:14:04 -08:00
Armon Dadgar 20d040dcba Merge pull request #1723 from irgeek/fix-1637
Use an index loop as range loops over copies, not references
2014-12-08 11:43:30 -08:00
James Sinclair 02ebef9031 Use an index loop as range loops over copies, not references
Fixes #1637
2014-12-05 17:27:00 +11:00
Greg Cockburn dbaf865e59 change ordering of ssh connection IP for amazon. fixes #1559 2014-12-01 10:44:52 +11:00
Mitchell Hashimoto 0db6cd3533 Merge pull request #1330 from qur/qemu-vagrant
Qemu vagrant
2014-10-28 08:42:17 -07:00
Mitchell Hashimoto e422a45449 fmt 2014-10-28 08:35:21 -07:00
Mitchell Hashimoto 716d4719dc Merge pull request #1622 from delitescere/GH-1533-aws-timeout
builder/amazon: Extend timeout and allow user override [GH-1533]
2014-10-28 08:15:18 -07:00
Mitchell Hashimoto 4406c20af1 builder/amazon: prefer token in config [GH-1544] 2014-10-27 17:29:40 -07:00
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