Commit Graph

240 Commits

Author SHA1 Message Date
Mitchell Hashimoto da1cac623d providers/aws: implement basic fast-path for not being in EC2 for creds 2015-06-28 23:06:49 -07:00
Mitchell Hashimoto 93cedc7ec1 providers/aws: style nitpick 2015-06-28 22:46:49 -07:00
Mitchell Hashimoto 2a5ed6c847 Merge pull request #1841 from josharian/aws-external-creds
providers/aws: detect credentials more robustly
2015-06-28 22:43:56 -07:00
Clint 079e4505a8 Merge pull request #2276 from SamClinckspoor/resource-aws-elasticache-parameter-group
provider/aws elasticache parameter group
2015-06-26 14:01:19 -05:00
Radek Simko 5cf5451d28 Merge pull request #1999 from TimeIncOSS/r53-delegation-set
provider/aws: Add Route 53 delegation set resource
2015-06-23 22:51:47 +01:00
Clint Shryock cc43ae8c4b Merge branch 'master' into f-aws-flow-logs
* master:
  Update CHANGELOG.md
  Update CHANGELOG.md
  Added affinity group resource.
  update link to actually work
  provider/azure: Fix SQL client name to match upstream
  add warning message to explain scenario of conflicting rules
  typo
  remove debugging
  Update CHANGELOG.md
  provider/aws: Add docs for autoscaling_policy + cloudwatch_metric_alarm
  provider/aws: Add autoscaling_policy
  provider/aws: Add cloudwatch_metric_alarm
  rename method, update docs
  clean up some conflicts with
  clean up old, incompatible test
  update tests with another example
  update test
  remove meta usage, stub test
  fix existing tests
  Consider security groups with source security groups when hashing
2015-06-22 09:33:42 -05:00
Radek Simko bfd8226b89 provider/aws: Add route53_delegation_set 2015-06-17 23:24:41 +01:00
Alex Pilon 05f4b9bfd9 provider/aws: Add autoscaling_policy 2015-06-17 23:10:23 +01:00
Alex Pilon ceeb94e157 provider/aws: Add cloudwatch_metric_alarm 2015-06-17 23:10:23 +01:00
Clint Shryock 1a6aef0ed7 Log Group Name is required/forcenew 2015-06-17 16:33:24 -05:00
Clint Shryock bfdf11c477 provider/aws: Implement AWS Flow Logs 2015-06-17 16:31:21 -05:00
Clint b132dd284e Merge pull request #2121 from johnewart/dynamodb
DynamoDB Support
2015-06-17 09:47:13 -05:00
Patrick Gray 73e8191983 add to provider 2015-06-16 16:10:45 -04:00
Paul Hinze 924278c33f Merge pull request #2226 from Banno/add-aws-route53-health-checks-squashed
provider/aws: add aws_route53_health_check (rebase,squash+docs)
2015-06-15 11:06:03 -05:00
Chris Bednarski f01154366a Merge with changes from master 2015-06-09 12:12:47 -07:00
Clint 05e06d4afd Merge pull request #2273 from hashicorp/f-aws-iam-group-membership
provider/aws: Add IAMGroupMembership resource
2015-06-09 09:42:33 -05:00
Sam Clinckspoor 7f9c4e45ea added test 2015-06-08 22:43:39 +02:00
Clint Shryock f31891fa5e provider/aws: Add IAMGroupMembership resource
bare bones implementation of a Group Membership resource
2015-06-08 11:26:47 -05:00
Paul Hinze 112724fc39 provider/aws: spot_instance_request
This is an iteration on the great work done by @dalehamel in PRs #2095
and #2109.

The core team went back and forth on how to best model Spot Instance
Requests, requesting and then rejecting a separate-resource
implementation in #2109.

After more internal discussion, we landed once again on a separate
resource to model Spot Instance Requests. Out of respect for
@dalehamel's already-significant donated time, with this I'm attempting
to pick up the work to take this across the finish line.

Important architectural decisions represented here:

 * Spot Instance Requests are always of type "persistent", to properly
   match Terraform's declarative model.
 * The spot_instance_request resource exports several attributes that
   are expected to be constantly changing as the spot market changes:
   spot_bid_status, spot_request_state, and instance_id. Creating
   additional resource dependencies based on these attributes is not
   recommended, as Terraform diffs will be continually generated to keep
   up with the live changes.
 * When a Spot Instance Request is deleted/canceled, an attempt is made
   to terminate the last-known attached spot instance. Race conditions
   dictate that this attempt cannot guarantee that the associated spot
   instance is terminated immediately.

Implementation notes:

 * This version of aws_spot_instance_request borrows a lot of common
   code from aws_instance.
 * In order to facilitate borrowing, we introduce `awsInstanceOpts`, an
   internal representation of instance details that's meant to be shared
   between resources. The goal here would be to refactor ASG Launch
   Configurations to use the same struct.
 * The new aws_spot_instance_request acc. test is passing.
 * All aws_instance acc. tests remain passing.
2015-06-07 17:33:32 -05:00
Clint e172508788 Merge pull request #2197 from hashicorp/f-aws-asg-notifications
provider/aws: ASG Notifications Resource
2015-06-05 16:04:19 -05:00
Clint Shryock 5e6b0166af provider/aws: Add ASG SNS Notification top level resource
- works with multiple asgs
2015-06-04 16:54:01 -05:00
Trent Johnson 054a40475c provider/aws: add aws_route53_health_check 2015-06-04 05:58:45 -05:00
John Ewart 34e9e31377 Adding DynamoDB resource 2015-06-03 17:05:02 -07:00
Radek Simko ebaa9bde2a provider/aws: Add new resource - aws_ecs_service 2015-06-03 22:48:17 +01:00
Radek Simko 87faf855aa provider/aws: Add new resource - aws_ecs_task_definition 2015-06-03 22:47:32 +01:00
Radek Simko ae5502b744 provider/aws: Add new resource - aws_ecs_cluster 2015-06-03 22:47:05 +01:00
Chris Bednarski 6986121305 AWS Lambda functionality
- Includes documentation
- Includes acceptance tests
2015-06-01 09:33:45 -07:00
Clint 4cd8147340 Merge pull request #2110 from hashicorp/f-aws-kinesis
provider/aws: AWS Kinesis Stream support
2015-05-29 10:37:29 -05:00
Clint Shryock 3f68ea7d0e Merge remote-tracking branch 'upstream/master' into f-aws-volume-attachment
* upstream/master: (21 commits)
  fix typo
  fix typo, use awslabs/aws-sdk-go
  Update CHANGELOG.md
  More internal links in template documentation.
  providers/aws: Requires ttl and records attributes if there isn't an ALIAS block.
  Condense switch fallthroughs into expr lists
  Fix docs for aws_route53_record params
  Update CHANGELOG.md
  provider/aws: Add IAM Server Certificate resource
  aws_db_instance docs updated per #2070
  providers/aws: Adds link to AWS docs about RDS parameters.
  Downgrade middleman to 3.3.12 as 3.3.13 does not exist
  providers/aws: Clarifies db_security_group usage.
  "More more" no more!
  Indentation issue
  Export ARN in SQS queue and SNS topic / subscription; updated tests for new AWS SDK errors; updated documentation.
  Changed Required: false to Optional: true in the SNS topic schema
  Initial SNS support
  correct resource name in example
  added attributes reference section for AWS_EBS_VOLUME
  ...
2015-05-28 10:13:58 -05:00
Clint Shryock 214ed23974 provider/aws: AWS Kinesis Stream support
Adds a Kinesis Stream resource
2015-05-27 15:54:17 -05:00
Clint 13e2a7cf0e Merge pull request #2086 from hashicorp/f-aws-iam-server-cert
provider/aws: Add IAM Server Certificate resource
2015-05-27 08:34:23 -05:00
Clint Shryock be7ece0ce7 provider/aws: Add IAM Server Certificate resource 2015-05-26 16:40:15 -05:00
Michael Austin 9a8625e6a6 added new provider for creating objects in an s3 bucket 2015-05-26 10:46:06 -04:00
John Ewart 68734517f8 Initial SNS support 2015-05-22 20:26:10 -07:00
Clint Shryock 68587eb51e provider/aws: Add resource_aws_volume_attachment 2015-05-22 16:30:40 -05:00
Clint 9f52192a79 Merge pull request #1939 from johnewart/sqs
Initial SQS support
2015-05-15 15:44:52 -05:00
John Ewart 8dd479dbe0 Initial SQS support 2015-05-15 11:37:07 -07:00
Panagiotis Moustafellos 9c8748d2dc providers/aws: resource aws_route53_zone_association 2015-05-14 16:03:51 -05:00
Josh Bleecher Snyder ed67f8f588 providers/aws: detect credentials more robustly
aws hides its credentials in many places:
multiple env vars, config files,
ec2 metadata.

Terraform currently recognizes only the env vars;
to use the other options, you had to put in a
dummy empty value for access_key and secret_key.

Rather than duplicate all aws checks, ask the
aws sdk to fetch credentials earlier.
2015-05-06 20:02:09 -07:00
Clint Shryock 885efa0837 provider/aws: Add Security Group Rule as a top level resource
- document conflict with sg rules and sg in-line rules
- for this to work, ingress rules need to be computed
2015-05-05 16:56:39 -05:00
Phil Frost b082117e92 Implement AWS IAM resources
- Users
- Groups
- Roles
- Inline policies for the above three
- Instance profiles
- Managed policies
- Access keys

This is most of the data types provided by IAM. There are a few things
missing, but the functionality here is probably sufficient for 95% of
the cases. Makes a dent in #28.
2015-05-05 12:47:20 -04:00
Mitchell Hashimoto 9ed909c8fe Merge pull request #1749 from nabeken/aws-proxy-protocol-policy
provider/aws: Add proxy protocol support in ELB
2015-05-04 14:04:53 -07:00
Mitchell Hashimoto c8c0b02790 Merge pull request #1787 from koendc/f-aws-max-retries
aws: make MaxRetries for API calls configurable
2015-05-04 14:00:37 -07:00
Mitchell Hashimoto 2c90d3a637 Merge pull request #1793 from ctiwald/ct/add-vpn-connection-route
provider/aws: add support for VPN connection routes
2015-05-04 13:58:17 -07:00
Christopher Tiwald e7f8883929 aws: Add support for VPN connection routes. 2015-05-04 12:20:42 -04:00
Koen De Causmaecker 398c22adcd aws: make MaxRetries for API calls configurable
- Make it configurable in the AWS provider by add an option
  'max_retries'.
- Set the default from 3 to 11 retries.
2015-05-03 15:35:51 +02:00
Koen De Causmaecker c8f32a2711 aws: re-introduce support for AWS_SECURITY_TOKEN 2015-05-03 10:26:58 +02:00
Paul Hinze fb37b3515d Merge pull request #1712 from hashicorp/f-rename-elasticache-cluster
providers/aws: add _cluster to aws_elasticache
2015-05-01 20:07:19 -05:00
Christopher Tiwald 814403f45c aws: Add support for AWS VPN connections 2015-05-01 12:23:08 -04:00
Camilo Aguilar 338ae601bc providers/aws: Implements DHCP Options Set support. 2015-04-30 17:52:04 -04:00
Paul Hinze 15b9bde1fe providers/aws: add _cluster to aws_elasticache
This AWS calls the actual resources "Cache Clusters" so it seems like
this name makes more sense.

Verified all Elasticache acc tests pass.
2015-04-30 16:12:08 -05:00
TANABE Ken-ichi 5c1dabdb69 provider/aws: Add ProxyProtocol support via aws_proxy_protocol_policy 2015-04-30 17:56:46 +09:00
Christopher Tiwald 2794a1c5ab aws: Add support for aws_customer_gateway 2015-04-29 21:32:51 -04:00
Mitchell Hashimoto d66012969a Merge pull request #1658 from bitglue/ebs
provider/aws: Implement aws_ebs_volume
2015-04-28 20:37:26 -07:00
Mitchell Hashimoto d354cae524 Merge pull request #1685 from ctiwald/master
provider/aws: Implement support for various AWS ELB cookie stickiness policies
2015-04-28 20:24:11 -07:00
Phil Frost dcebff7108 Implement aws_ebs_volume
This resource allows the management of EBS volumes not associated with
any EC2 instance.
2015-04-28 12:54:02 -04:00
Christopher Tiwald 0533d60195 aws: Add support for aws_app_cookie_stickiness_policy.
This resource represents a session stickiness policy in AWS, and can be
applied to an ELB's client-facing listeners.
2015-04-26 18:56:07 -04:00
Christopher Tiwald 0120899f2a aws: Add support for aws_lb_cookie_stickiness_policy.
This resource represents a session stickiness policy in AWS, and can be
applied to an ELB's client-facing listeners.
2015-04-26 18:05:37 -04:00
Tomotaka Sakuma f3d9a287e1 support aws resource ElastiCache 2015-04-26 10:53:21 +09:00
Mitchell Hashimoto 3176e5b44a Merge pull request #1595 from TimeIncOSS/aws-account-protection
aws: Allow defining blacklist/whitelist of account IDs
2015-04-22 08:08:01 +02:00
Phil Frost d4c8c528e0 Support session token in AWS credentials
Session tokens are necessary to utilize temporary credentials.
http://docs.aws.amazon.com/STS/latest/UsingSTS/Welcome.html
2015-04-20 15:09:04 -04:00
Radek Simko 150fd00932 AWS account ID protection added 2015-04-20 12:07:39 +01:00
Clint bb4dd8ae77 Merge pull request #1137 from deverton/aws-go-vpn
provider/aws: Add Support For AWS VPN Gateways using aws-sdk-go
2015-03-19 16:12:17 -05:00
Peter Beams 810860ec37 fixing indentation 2015-03-06 16:39:00 +00:00
Dan Everton 4706ee7ffc Add acceptance test for aws_vpn_gateway resource. 2015-03-06 08:41:22 +10:00
Peter Beams 590a912cc9 first steps to add network interface 2015-03-03 01:33:42 +00:00
jba 101f801846 add aws_vpc_peering_connection 2015-02-12 10:45:29 +01:00
Paul Hinze 92335b742a provider/aws: aws_main_route_table_association
This resource allows an existing Route Table to be assigned as the
"main" Route Table of a VPC. This means that the Route Table will be
used for any subnets within the VPC without an explicit Route Table
assigned [1].

This is particularly useful in getting an Internet Gateway in place as
the default for a VPC, since the automatically created Main Route Table
does not have one [2].

Note that this resource is an abstraction over an association and does not
map directly to a CRUD-able object in AWS. In order to retain a coherent
"Delete" operation for this resource, we remember the ID of the AWS-created
Route Table and reset the VPC's main Route Table to it when this
resource is deleted.

refs #843, #748

[1] http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html#RouteTableDetails
[2] http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Internet_Gateway.html#Add_IGW_Routing
2015-02-03 13:47:43 -06:00
Seth Vargo 072a1cf353 Read the "standard" AWS environment variables
This is 100% backwards-compatible
2015-01-22 16:09:25 -05:00
Jeff Mitchell f2bd1f45ab Move duplicated envDefaultFunc out of each provider and into Schema. 2015-01-16 17:25:39 +00:00
Pete Hodgson 5b66b9306e add aws_key_pair resource
For now this only supports importing a key pair (by specifying a
public_key) property. In the future it'd be fairly trivial to support
key pair creation, with the private key returned as a computed property.

In real world usage you'd probably want to provide that public_key
property via a variable rather than hard-coding it into a terraform
config that'd end up in source control.
2014-12-18 01:27:06 -08:00
Sneha Somwanshi cebea04cce added provider for aws_network_acl 2014-11-26 19:12:39 +05:30
Sander van Harmelen 0725486e89 Refactored the last two resources 2014-11-24 14:04:48 +01:00
Sander van Harmelen eccd5ad308 Refactored about 90%
Still need to update 2 resources and check the acceptance tests, but
overall we’re nearly there 😃
2014-11-21 17:58:34 +01:00
Armon Dadgar e53bf23c0c provider/aws: Fixing merge conflict 2014-11-19 17:17:18 -08:00
Rob Costanzo de16b10555 Added new aws_db_parameter_group resource for creating RDS DB Parameter Groups.
Added plumbing to allow an optional DBParameterGroupName to be passed when creating an RDS DB instance.
2014-11-05 11:03:06 -08:00
Simon Turvey 31132f1ded Add tag support to AWS subnets 2014-11-02 12:30:33 -08:00
Mitchell Hashimoto b43cfa3bb0 providers/aws: launch configuration in helper/schema 2014-10-10 14:50:23 -07:00
Mitchell Hashimoto caaa9d145a providers/aws: convert autoscaling group to helper/schema 2014-10-10 14:34:40 -07:00
Mitchell Hashimoto 12ff354749 providers/aws: convert most of ELB to schema 2014-10-09 23:58:48 -07:00
Mitchell Hashimoto 699b2efa1c providers/aws: convert aws_vpc to helper/schema 2014-10-08 16:43:13 -07:00
Mitchell Hashimoto a7c321a028 helper/scheam: support UI defaults 2014-09-29 14:00:35 -07:00
Mitchell Hashimoto 99044a1f14 Add descriptions for AWS inputs 2014-09-29 13:30:28 -07:00
Eric Buth 4cd11e4091 AWS DB Subnet Group resource and testing 2014-09-15 14:58:04 -04:00
Mitchell Hashimoto 2317f7ea9b providers/aws: proper DefaultFunc to return nil if no env 2014-09-09 21:46:50 -07:00
Mitchell Hashimoto 6a275d7bd0 providers/aws: convert validation to helper/schema 2014-09-09 21:44:31 -07:00
Mitchell Hashimoto 2fd2470c92 providers/aws: resource_aws_instance partially to schema.Resource 2014-08-21 18:38:43 -07:00
Mitchell Hashimoto 89041c0595 providers/aws: resource_aws_security_group using helper/schema 2014-08-20 10:40:18 -07:00
Mitchell Hashimoto c4d261ac61 providers/aws: resource_aws_eip is in new framework 2014-08-19 16:56:23 -07:00
Mitchell Hashimoto 776bb22e4e providers/aws: create an empty schema.Provider 2014-08-19 15:40:48 -07:00