Commit Graph

1328 Commits

Author SHA1 Message Date
Clint Shryock 7078753733 Merge branch 'master' into f-aws-upstream-elb
* master:
  Update CHANGELOG.md
  core: avoid diff mismatch on NewRemoved fields during -/+
2015-04-15 09:34:28 -05:00
Paul Hinze 6365b3af89 Merge pull request #1515 from hashicorp/b-diff-mismatch-on-instance-replacement
core: avoid diff mismatch on NewRemoved fields during -/+
2015-04-14 17:44:28 -05:00
Paul Hinze 64f0897c82 core: avoid diff mismatch on NewRemoved fields during -/+
fixes #1508

In a DESTROY/CREATE scenario, the plan diff will be run against the
state of the old instance, while the apply diff will be run against an
empty state (because the state is cleared when the destroy node does its
thing.)

For complex attributes, this can result in keys that seem to disappear
between the two diffs, when in reality everything is working just fine.

Same() needs to take into account this scenario by analyzing NewRemoved
and treating as "Same" a diff that does indeed have that key removed.
2015-04-14 17:23:30 -05:00
Clint Shryock 4186ec18c6 providers/aws: Conver AWS ELB to upstream 2015-04-14 16:41:36 -05:00
Clint Shryock 900dd4e151 provider/aws: Convert VPN Gateway to upstream 2015-04-14 15:45:48 -05:00
Clint Shryock 95026b6266 provider/aws: Convert AWS VPC Peering to upstream 2015-04-14 11:23:26 -05:00
Clint Shryock d4e7c2dedc provider/aws: Conver AWS S3 to upstream sdk 2015-04-14 11:07:05 -05:00
Mitchell Hashimoto 710d1113eb Merge pull request #1490 from jtopjian/openstack-allow-blank-region
provider/openstack: Allow Blank Region
2015-04-14 08:28:03 -07:00
Mitchell Hashimoto 0eb69bcd37 Merge pull request #1518 from hashicorp/b-lc-id
providers/aws: set LC ID after creation
2015-04-14 08:23:31 -07:00
Mitchell Hashimoto 783d912b7c providers/aws: set id outside if/esle 2015-04-14 08:23:16 -07:00
Clint 0eecf070d9 Merge pull request #1489 from hashicorp/f-aws-upstream-route-table
provider/aws: Convert Route table and Route table association to upstream aws-sdk-go
2015-04-14 10:15:24 -05:00
Clint 85c4a134ad Merge pull request #1486 from hashicorp/f-aws-upstream-vpc
provider/aws: Convert AWS VPC to upstream aws-sdk-go
2015-04-14 10:14:56 -05:00
Mitchell Hashimoto f7a2f2a2e7 providers/aws: set ID after creation 2015-04-13 17:03:13 -07:00
Paul Hinze 86d58089d3 Merge pull request #1509 from hashicorp/f-aws-upstream-network-acl
provider/aws: Convert Network ACL and helper library to upstream aws-sdk-go
2015-04-13 16:48:25 -05:00
Clint Shryock 5394d91657 provider/aws: Convert Network ACL and helper library to upstream aws-sdk-go 2015-04-13 11:14:21 -05:00
Sander van Harmelen 41536c0d58 Reverting the behavioural change, while still fixing the logic error 2015-04-13 17:33:22 +02:00
Clint Shryock 53478c96de provider/aws: Convert AWS Main Route Table Association to upstream 2015-04-13 10:01:56 -05:00
Sander van Harmelen 852e7a3554 Merge pull request #1492 from svanharmelen/f-cloudstack-network
Fixing a small logic error
2015-04-11 17:56:09 +02:00
Sander van Harmelen 8c37a95a5e Fixing a small logic error 2015-04-11 17:53:25 +02:00
Sander van Harmelen 0963d556a3 Refactored the template provider to make it fit in nicely
Fixing a few things while add it and added a additional test as well.
2015-04-11 17:50:06 +02:00
Sander van Harmelen 365251f7a3 Merge pull request #1228 from benjvi/cloudstack-template-resource
provider/cloudstack: added template resource for CloudStack
2015-04-11 17:42:13 +02:00
Joe Topjian fe0a7a5ec5 Allow Blank Region
When OS_REGION_NAME is not set, fall back to a blank string. This
will cause gophercloud to use the cloud's only region in
single-region clouds.
2015-04-11 05:10:10 +00:00
Clint Shryock c89470a754 provider/aws: Convert Route table and Route table association to upstream aws-sdk-go 2015-04-10 17:09:36 -05:00
Clint Shryock 74bab7b89d provider/aws: Convert AWS VPC to upstream aws-sdk-go 2015-04-10 16:09:12 -05:00
Sander van Harmelen 56adfce61f Merge pull request #1481 from svanharmelen/f-cloudstack-connection
provider/cloudstack: adding a few lines to set the connection info
2015-04-10 21:36:39 +02:00
Sander van Harmelen b7a6692548 Adding a few lines to set the connection info 2015-04-10 20:39:52 +02:00
Clint 9f56addf0c Merge pull request #1446 from hashicorp/f-aws-upstream-security-group
providers/aws: Convert AWS Security Group to upstream aws-sdk-go
2015-04-10 11:06:55 -05:00
Clint 7c676f8c91 Merge pull request #1470 from hashicorp/b-aws-fix-credential-detection
provider/aws: Detect creds in AWS config
2015-04-10 10:06:08 -05:00
Paul Hinze 8f5ac1d06f Merge pull request #1458 from sparkprime/fix-network-source
Avoid 'source' being undefined in legacy network Read
2015-04-10 09:34:56 -05:00
Clint Shryock c160058baf provider/aws: Detect creds in AWS config 2015-04-09 17:06:22 -05:00
Clint Shryock 6ff9b0c776 provider/aws: Fix type mismatch issue with AWS RDS 2015-04-09 14:27:52 -05:00
Mitchell Hashimoto 6f82137875 provider/aws: fix potential panic on nil db name [GH-1460] 2015-04-09 11:19:33 -07:00
Mitchell Hashimoto 4e92b8c77f provider/aws: fix network ACL test, at some point we added a second rule 2015-04-09 10:45:22 -07:00
Paul Hinze 1118a86798 providers/aws: make acc test name match pattern 2015-04-09 12:33:20 -05:00
Dave Cunningham d149db41d6 Avoid 'source' being undefined in legacy network Read 2015-04-09 13:29:59 -04:00
Mitchell Hashimoto d189457376 provider/aws: clean up VPC peering connection test 2015-04-09 10:18:50 -07:00
Clint 02c81c479d Merge pull request #1430 from hashicorp/b-aws-route53-record-update
provider/aws: Fix issue in updating Route 53 records on refresh/read.
2015-04-09 11:54:27 -05:00
Mitchell Hashimoto db58c7dd33 providers/docker: default cert_path to non-nil so input isn't asked 2015-04-09 09:49:03 -07:00
Paul Hinze 4363ac4970 Merge pull request #1444 from hashicorp/b-launch-config-bugs
providers/aws: fix a few more bugs in launch configs
2015-04-09 10:24:18 -05:00
Paul Hinze bfb3134148 Merge pull request #1445 from hashicorp/b-ebs-perpetual-recreate-without-both-volume-fields
providers/aws: reduce scope of block_device set hashcodes
2015-04-09 10:24:07 -05:00
Clint Shryock ffdd20133a providers/aws: Convert AWS Security Group to upstream aws-sdk-go
Moves structure test lib too, to that `make test` actually runs it
2015-04-09 09:10:04 -05:00
Clint Shryock ef0a763c29 fix pointer references 2015-04-09 09:03:45 -05:00
Paul Hinze 34c7bbcf4d providers/aws: reduce scope of block_device set hashcodes
Fixes #1409

Resource set hash calculation is a bit of a devil's bargain when it
comes to optional, computed attributes.

If you omit the optional, computed attribute from the hash function,
changing it in an existing config is not properly detected.

If you include the optional, computed attribute in the hash and do not
specify a value for it in the config, then you'll end up with a
perpetual, unresolvable diff.

We'll need to think about how to get the best of both worlds, here, but
for now I'm switching us to the latter and documenting the fact that
changing these attributes requires manual `terraform taint` to apply.
2015-04-09 08:53:09 -05:00
Paul Hinze 8fccd9cec4 providers/aws: fix a few more bugs in launch configs
These bugs were found by additional check added in #1443

 * Reversed nil err check meant that block devices were broken :(
 * Fixing the err check revealed a few missed pointer derefs
 * Unlike instances, ephemeral block devices do come back in
   `BlockDeviceMappings` from `DescribeLaunchConfigurations` calls, so
   we need to recognize them and filter them properly. Even though
   they're not set as computed, I'm doing a `d.Set` since it doesn't
   hurt and it gives us the benefit of basic drift detection.
2015-04-09 08:36:18 -05:00
Radek Simko 947761f34f ec2/config: Use provided region instead of hardcoding us-west-2 2015-04-09 12:36:37 +01:00
Clint 5c3ec3ddcc Merge pull request #1411 from hashicorp/f-aws-upstream-network-interface
provider/aws: Convert AWS Network Interface to aws-sdk-go
2015-04-08 15:51:36 -05:00
Clint 8e25dcd4f6 Merge pull request #1408 from hashicorp/f-aws-upstream-eip
provider/aws: Convert EIP to use upstream aws-sdk-go
2015-04-08 15:51:18 -05:00
Clint 0f6ba3eae9 Merge pull request #1407 from hashicorp/f-aws-upstream-internet-gateway
Convert AWS Internet Gateway to use upstream aws-sdk-go
2015-04-08 15:51:10 -05:00
Clint 281825db76 Merge pull request #1398 from hashicorp/f-aws-upstream-subnet
provider/aws: Convert AWS Subnet to mainstream aws-sdk-go
2015-04-08 15:38:05 -05:00
Clint Shryock 3a5a3d8515 update test to pass on Travis 2015-04-08 15:27:48 -05:00
Clint abdfa450b2 Merge pull request #1397 from hashicorp/aws-upstream-keypair
provider/aws: Convert Key Pair to upstream aws-sdk-go
2015-04-08 15:21:58 -05:00
Clint 28f8dab87f Merge pull request #1396 from hashicorp/f-aws-route53record-add-update
provider/aws: Change Route 53 record to allow resource updates
2015-04-08 15:14:46 -05:00
Paul Hinze 650b9d5542 Merge pull request #1427 from dainis/fix_network_interface_interface
Fix #1394, network value for network_interface
2015-04-08 14:24:20 -05:00
Clint Shryock 22e487c5d0 surface error with setting records on Route 53 record 2015-04-08 14:01:00 -05:00
Clint Shryock 29a5d9fc1a Update how we expand/flatten TXT records for Route 53 2015-04-08 13:58:23 -05:00
Clint 9a3bc12cff Merge pull request #1415 from hashicorp/b-fix-route53-recorcd-zone
provider/aws: Fix issue with Route 53 and pre-existing, external Hosted zones
2015-04-08 09:38:59 -05:00
Clint Shryock f2b68c4ca8 provider/aws: Fix issue in updating Route 53 records on refresh/read.
Route 53 records were silently erroring out when saving the records returned
from AWS, because they weren't being presented as an array of strings like we
expected.
2015-04-08 09:06:15 -05:00
Dainis Tillers ab71de8650 Just removing network refresh wont cut it, value from config must be used 2015-04-08 15:38:07 +03:00
Dainis Tillers 8f717c3e60 Fix #1394, network value for network_interface isn't a computed value and there is no need to refresh it each time instance data is read 2015-04-08 15:29:46 +03:00
Clint Shryock 547080002c provider/aws: Fix issue with Route 53 and pre-existing, external Hosted Zones 2015-04-07 15:20:56 -05:00
Paul Hinze ee7ccb7908 providers/aws: fix LCs being invalid in classic
Turns out AssociatePublicIPAddress was always being set, but the AWS
APIs don't like that when you're launching into EC2 Classic and return a
validation error at ASG launch time.

Fixes #1410
2015-04-07 13:08:09 -05:00
Clint Shryock 6376ac2dab provider/aws: Convert AWS Network Interface to aws-sdk-go
Also adds sdk versions of structure, structure test
2015-04-07 12:07:12 -05:00
Clint Shryock a15547b955 provider/aws: Convert EIP to use upstream aws-sdk-go 2015-04-07 10:37:17 -05:00
Clint Shryock 2c1c448031 providers/aws: Convert AWS Internet gateway to upstream aws-sdk-go 2015-04-07 09:44:00 -05:00
Clint Shryock 6feba0bf36 migrate aws keypair test suite 2015-04-06 15:13:29 -05:00
Clint Shryock 0fbbd1195a provider/aws: Convert AWS Subnet to mainstream aws-sdk-go 2015-04-06 15:07:40 -05:00
Clint Shryock eb82f2bf2a provider/aws: Convert Key Pair to upstream aws-sdk-go 2015-04-06 12:22:57 -05:00
Clint 23c0fb7695 Merge pull request #1384 from hashicorp/b-aws-fix-route53-hosted-refresh
provider/aws: Fix refresh issue in Route 53 hosted zone
2015-04-06 11:11:07 -05:00
Clint fa2d41ef55 Merge pull request #1234 from hashicorp/b-fix-aws-subnet-map-public-change
provider/aws: Fix issue when changing map-public-ip in Subnets
2015-04-06 11:03:45 -05:00
Clint 008012b7a6 Merge pull request #1382 from hashicorp/f-aws-rds-updates
provider/aws: Support additional changes to RDS without forcing new
2015-04-06 10:59:57 -05:00
Paul Hinze 6726309947 Fix string typo 2015-04-06 10:51:30 -05:00
Paul Hinze c2b293d047 Fix comment typo 2015-04-06 10:45:02 -05:00
Clint Shryock c5eb16cfb1 provider/aws: Change Route 53 record to allow resource updates
This removes `ForceNew` from `records` and `ttl`, and introduces a
`resourceAwsRoute53RecordUpdate` function. The `resourceAwsRoute53RecordUpdate`
falls through to the `resourceAwsRoute53RecordCreate` function, which utilizes
AWS `UPSERT` behavior and diffs for us.

`Name` and `Type` are used by AWS in the `UPSERT`, so only records with matching
`name` and `type` can be updated. Others are created as new, so we leave the
`ForceNew` behavior here.
2015-04-06 10:16:23 -05:00
Clint Shryock f02de51d58 provider/aws: Fix refresh issue in Route 53 hosted zone
Change the error handling/detection to correctly determine no hosted zone
exists.
2015-04-03 13:59:34 -05:00
Paul Hinze 9a91e1021a providers/aws: don't force update for existing launch configs
These changes should fix #1367:

 * `ebs_optimized` gets `Computed: true` and set from `Read`
 * `ephemeral_block_device` loses `Computed: true`
 * explicitly set `root_block_device` to empty from `Read`

While I was in there (tm):

 * Send pointers to `d.Set` so we can use its internal nil check.
2015-04-03 12:58:49 -05:00
Paul Hinze b0abb4ea49 Merge pull request #1379 from hashicorp/f-validate-forcenew-on-resources-without-update
helper/schema: ensure ForceNew set when Update is not
2015-04-03 12:53:55 -05:00
Clint Shryock 961a646b9a provider/aws: Support additional changes to RDS without forcing a new resource 2015-04-03 12:23:01 -05:00
Paul Hinze 66dbf91ffd helper/schema: ensure ForceNew set when Update is not
If a given resource does not define an `Update` function, then all of
its attributes must be specified as `ForceNew`, lest Applys fail with
"doesn't support update" like #1367.

This is something we can detect automatically, so this adds a check for
it when we validate provider implementations.
2015-04-03 09:57:30 -05:00
Clint Shryock 268f935386 provider/aws: Fix issue finding db subnets
AWS seems to lower case DB Subnet Group names, causing a failure in TF if your
name isn't all lower case.
2015-04-03 09:34:04 -05:00
Paul Hinze cedfadc808 Merge pull request #1352 from hashicorp/b-rds-pointers
providers/aws: pass pointers directly to d.Set in RDS
2015-04-02 12:41:31 -05:00
Jason Waldrip f77250f17d block device support for launch configurations
- mimics block device support from AWS instance
 - splits the acceptance tests out so they all pass, handling a FIXME
   from #1079
2015-04-02 12:34:13 -05:00
Paul Hinze f8a699f3d8 Merge pull request #1079 from bobtfish/launch_configuration_computed_names
RFC for making launch configuration names computed.
2015-04-02 12:10:22 -05:00
Paul Hinze de1a58512a Merge pull request #1359 from hashicorp/b-do-ssh-key-test
providers/digitalocean: fix ssh key test
2015-04-02 11:34:34 -05:00
Paul Hinze ace47c1c5b providers/digitalocean: fix ssh key test
there's now validation on the public key field
2015-04-02 09:04:59 -05:00
Clint Shryock 87e1260fac update hash for aws security group test 2015-04-02 09:00:47 -05:00
Paul Hinze e0cdadfc55 Merge pull request #1347 from jtopjian/compute-network-refactor
provider/openstack Compute Network Refactor
2015-04-02 08:46:03 -05:00
Mitchell Hashimoto 8ee6a03748 Merge pull request #1208 from tarrant/master
Add support for SSH Agent
2015-04-01 22:54:50 -07:00
Mitchell Hashimoto a2014fc846 Merge pull request #1185 from hashicorp/f-remote-resource
Feature: Remote Modules
2015-04-01 22:50:30 -07:00
Mitchell Hashimoto 478379b3b3 providers/terraform: name it terraform_remote_state 2015-04-01 22:49:05 -07:00
Tarrant f68c9eee63 Merge branch 'master' of https://github.com/hashicorp/terraform 2015-04-01 18:24:57 -07:00
Joe Topjian 1693767922 Compute Instance basic acceptance test
A change was made to account for clouds with multiple networks.
2015-04-02 00:10:46 +00:00
Joe Topjian 7ca97f4bfc Updating Floating IP acceptance tests 2015-04-01 22:54:09 +00:00
Joe Topjian 99ac8b4410 Compute Floating IP Test Update
Changes the test to require a network UUID rather than a name.
2015-04-01 21:39:54 +00:00
Joe Topjian ef4e03a729 Workaround for missing tenant-network
This commit resolves an issue where the tenant-network api extension
does not exist. The caveat is that the user must either specify no
networks (single network environment) or can only specify UUIDs for
network configurations.
2015-04-01 21:31:55 +00:00
Clint Shryock c7282d6a94 provider/aws: Change AWS Subnet map ip on launch to default false, from computed 2015-04-01 16:27:12 -05:00
Clint Shryock 85c0910165 Merge remote-tracking branch 'upstream/master' into b-fix-aws-subnet-map-public-change
* upstream/master: (295 commits)
  Update CHANGELOG.md
  provider/aws: Allow DB Parameter group to change in RDS
  return error if failed to set tags on Route 53 zone
  core: [tests] fix order dependent test
  Fix hashcode for ASG test
  provider/aws: Fix issue with tainted ASG groups failing to re-create
  Don't error when reading s3 bucket with no tags
  Avoid panics when DBName is not set
  Add floating IP association in aceptance tests
  Use env var OS_POOL_NAME as default for pool attribute
  providers/heroku: Add heroku-postgres to example
  docs: resource addressing
  providers/heroku: Document environment variables
  providers/heroku: Add region to example
  Bugfix on floating IP assignment
  Update CHANGELOG.md
  update CHANGELOG
  website: note on docker
  core: formalize resource addressing
  core: fill out context tests for targeted ops
  ...
2015-04-01 16:24:38 -05:00
Clint Shryock b31a69fe43 provider/aws: Allow DB Parameter group to change in RDS 2015-04-01 16:05:19 -05:00
Clint Shryock 261faaf3d2 Merge branch 'master' into f-rds-update
* master: (167 commits)
  return error if failed to set tags on Route 53 zone
  core: [tests] fix order dependent test
  Fix hashcode for ASG test
  provider/aws: Fix issue with tainted ASG groups failing to re-create
  Don't error when reading s3 bucket with no tags
  Avoid panics when DBName is not set
  Add floating IP association in aceptance tests
  Use env var OS_POOL_NAME as default for pool attribute
  providers/heroku: Add heroku-postgres to example
  docs: resource addressing
  providers/heroku: Document environment variables
  providers/heroku: Add region to example
  Bugfix on floating IP assignment
  Update CHANGELOG.md
  update CHANGELOG
  website: note on docker
  core: formalize resource addressing
  core: fill out context tests for targeted ops
  core: docs for targeted operations
  core: targeted operations
  ...
2015-04-01 15:28:35 -05:00
Clint Shryock 6be66612b5 Merge remote-tracking branch 'upstream/master' into f-aws-rds-tags
* upstream/master:
  return error if failed to set tags on Route 53 zone
  cleanups
  provider/aws: Finish Tag support for Route 53 zone
  provider/aws: Add tags to Route53 hosted zones
2015-04-01 14:58:04 -05:00
Clint Shryock 815b79753a return error if failed to set tags on Route 53 zone 2015-04-01 14:49:50 -05:00