Commit Graph

1649 Commits

Author SHA1 Message Date
Mitchell Hashimoto cc28d04777 Merge pull request #1911 from hashicorp/b-template-diffs
provider/template: don't diff when there's no diff
2015-05-11 16:34:09 -07:00
John Engelman 1798df8e03 Closes #1906. Only submit modification requests if there is a change 2015-05-11 11:49:43 -05:00
Paul Hinze a96a3372c6 provider/template: don't diff when there's no diff
This reworks the template lifecycle a bit such that we get nicer diff
behavior.

First, we tick ForceNew on for both filename and vars, so that the diff
indicates that the template will be "replaced" on change. This is mostly
cosmetic, but it also tracks conceptually with the fact that the
identifier we use is a hash of the contents, so any change essentially
makes a "new resource".

Second, we change the Exists implementation to only return `false` when
there has been a change in the rendered template. This lets descendent
resources see the computed value changing so that they'll properly
trigger in the plan.

Fixes #1898
Refs #1866 (but does not fix, there's another deeper issue there)
2015-05-11 10:38:19 -05:00
Paul Hinze 2783521960 Merge pull request #1897 from jtopjian/openstack-acctest-fixes
provider/openstack: Acceptance Test Fixes
2015-05-11 10:35:24 -05:00
John Engelman 04214c8c1a Closes #1908. Parse AccountId from User ARN for RDS tags 2015-05-11 10:32:06 -05:00
Sander van Harmelen a8dacede24 Improved some logging...
I added a debug log line in the last commit, only to find out it’s now
logging the same info twice. So removed the double entry and tweaked
the existing once.
2015-05-11 15:18:32 +02:00
Joe Topjian 9c27194ee1 gofmt fixes 2015-05-11 00:58:16 +00:00
Dan Carley 579c37cd74 provider/gce: Set defaults for http_health_check
In order to fix the failing test in the preceding commit when optional
params are changed from their default "computed" values.

These weren't working well with `HttpHealthCheck.Patch()` because it was
attempting to set all unspecified params to Go's type defaults (eg. 0 for
int64) which the API rejected.

Changing the call to `HttpHealthCheck.Update()` seemed to fix this but it
still didn't allow you to reset a param back to it's default by no longer
specifying it.

Settings defaults like this, which match the Terraform docs, seems like the
best all round solution. Includes two additional tests for the acceptance
tests which verify the params are really getting set correctly.
2015-05-10 21:20:40 +01:00
Dan Carley 13e9e6f51d provider/gce: Test updates to http_health_check
By first creating a very simple resource that mostly uses the default
values and then changing the two thresholds from their computed defaults.

This currently fails with the following error and will be fixed in a
subsequent commit:

    --- FAIL: TestAccComputeHttpHealthCheck_update (5.58s)
            testing.go:131: Step 1 error: Error applying: 1 error(s) occurred:

                    * 1 error(s) occurred:

                    * 1 error(s) occurred:

                    * Error patching HttpHealthCheck: googleapi: Error 400: Invalid value for field 'resource.port': '0'.  Must be greater than or equal to 1
                    More details:
                    Reason: invalid, Message: Invalid value for field 'resource.port': '0'.  Must be greater than or equal to 1
                    Reason: invalid, Message: Invalid value for field 'resource.checkIntervalSec': '0'.  Must be greater than or equal to 1
                    Reason: invalid, Message: Invalid value for field 'resource.timeoutSec': '0'.  Must be greater than or equal to 1
2015-05-10 21:20:32 +01:00
Dan Carley 88f4df28ac provider/gce: Fix whitespace in test fixture
Mixture of hard and soft tabs, which isn't picked up by `go fmt` because
it's inside a string. Standardise on hard-tabs since that is what's used
in the rest of the code.
2015-05-10 21:06:33 +01:00
Joe Topjian fe668a1ac7 Fixing TestAccFWPolicyV1 2015-05-10 04:39:00 +00:00
Joe Topjian a6b9a63231 Fixing TestAccFWFirewallV1 2015-05-10 04:38:36 +00:00
Joe Topjian 4811112a6a Fixing TestAccNetworkingV2Subnet_basic 2015-05-10 04:38:06 +00:00
Joe Topjian feb5a3c6bb Fixing TestAccNetworkingV2RouterInterface_basic 2015-05-09 23:04:45 +00:00
Joe Topjian 1e7a227ea6 Fixing TestAccNetworkingV2FloatingIP_basic 2015-05-09 22:58:25 +00:00
Joe Topjian 5535a9ba32 Fixing TestAccLBV1Pool_basic 2015-05-09 22:43:40 +00:00
Joe Topjian de74f3e586 Fixing TestAccLBV1Monitor_basic 2015-05-09 22:26:23 +00:00
Radek Simko 754bcd8307 Increase subnet & security group deletion timeout (2 -> 5 mins)
- this should prevent DependencyViolation errors while waiting for larger ASGs to shut down
2015-05-09 22:18:04 +01:00
Joe Topjian 2d512343a0 Fixing TestAccBlockStorageV1Volume_basic 2015-05-09 20:31:34 +00:00
Joe Topjian 04d694fe53 Disabling volume attach test for now 2015-05-09 17:07:50 +00:00
Sander van Harmelen 2a5fffc24d Small textual update... 2015-05-08 23:27:12 +02:00
Sander van Harmelen c19d92fb67 Refactored quite a few things after review...
Also renamed the provisioner to just `chef` as it’s out intention to
end up with one provisioner for all types of `chef` clients.
2015-05-08 23:25:24 +02:00
Clint Shryock eaf96d9d6f provider/aws: Document AWS ElastiCache cluster
- ElastiCache subnet group name is computed
2015-05-08 14:33:41 -05:00
Radek Simko ce8351ddef provider/aws: Add FQDN as output to route53_record 2015-05-08 20:19:40 +01:00
Justin Campbell 870b48b1c0 Merge pull request #1865 from justincampbell/s3-region-zone
providers/aws: Add hosted_zone_id and region to attributes
2015-05-08 14:49:12 -04:00
Paul Hinze a28267b886 provider/aws: SG description should be ForceNew
Description cannot be handled in Update (there is no ModifySecurityGroup
API call), so we have to recreate to change the description.

Closes #1870
2015-05-08 12:16:54 -05:00
Sander van Harmelen d4150d5b1a Adding the tests... 2015-05-08 18:17:57 +02:00
Justin Campbell 73651e2c70 providers/aws: Extract normalizeRegion 2015-05-08 10:49:21 -04:00
Justin Campbell 445f92e48a providers/aws: Move HostedZoneIDForRegion into TF 2015-05-08 10:49:20 -04:00
Justin Campbell 64d2b495c3 providers/aws: Add region to S3 attrs 2015-05-08 10:02:16 -04:00
Justin Campbell 839688d477 providers/aws: Add hosted_zone_id to S3 attrs 2015-05-08 10:02:16 -04:00
Justin Campbell d7c9d8702c providers/aws: Extract website endpoint logic 2015-05-08 10:02:16 -04:00
Sander van Harmelen 4a99cf9e9f Small update/fix to properly clean ANSI going to the logfile... 2015-05-08 14:54:56 +02:00
Sander van Harmelen 60984b2da2 This commit adds a Chef Client provisioner
The commit is pretty complete and has a tested/working provisioner for
both SSH and WinRM. There are a few tests, but we maybe need another
few to have better coverage. Docs are also included…
2015-05-08 14:54:56 +02:00
Felix Rodriguez 60c3ca0430 typo 2015-05-07 23:21:47 +01:00
Clint Shryock 44461f49fd update structure test 2015-05-07 17:18:47 -05:00
Clint Shryock 70984526a4 Merge remote-tracking branch 'ctiwald/ct/fix-protocol-problem'
* ctiwald/ct/fix-protocol-problem:
  aws: Document the odd protocol = "-1" behavior in security groups.
  aws: Fixup structure_test to handle new expandIPPerms behavior.
  aws: Add security group acceptance tests for protocol -1 fixes.
  aws: error on expndIPPerms(...) if our ports and protocol conflict.
2015-05-07 17:13:21 -05:00
Clint 4874179e9a Merge pull request #1843 from ctiwald/ct/fix-network-acls
Fix a number of issues in AWS network ACLs
2015-05-07 16:39:10 -05:00
Mitchell Hashimoto ddad945717 provider/terraform: test fixture 2015-05-07 09:59:23 -07:00
Paul Hinze 1594cb3dbe provider/aws: remove names from LCs in ASG tests
Makes the tests a little more durable if your account happens to end up
with a dangling LC.
2015-05-07 10:14:49 -05:00
Clint Shryock 20ebb38b8f update s3bucket website tests 2015-05-07 10:13:08 -05:00
Clint ef62385a95 Merge pull request #1849 from hashicorp/f-aws-update-s3-website-tests
update tests so go vet is happy
2015-05-07 10:06:43 -05:00
Clint Shryock fed42fe1b3 update tests so go vet is happy 2015-05-07 10:03:28 -05:00
Paul Hinze 44e448b8c9 provider/docker: update image sha
Should eventually see if there's a way to rework this so it's less
brittle. But for now, we band-aid!
2015-05-07 09:50:16 -05:00
Paul Hinze 28875f49cd provider/heroku: fix config_vars in addons
These were never read properly - on Addons they show up as just a list
of var names, not a Map.

Fixes one issue in Addon acceptance tests.
2015-05-07 09:11:31 -05:00
Paul Hinze e7b101dba4 provider/aws: elasticache_cluster engine_version is computed
fixes the TestAccAWSElasticacheCluster test
2015-05-07 08:47:52 -05:00
Christopher Tiwald 9e8aefcd40 aws: Fix network ACL acceptance tests and add -1 protocol rule. 2015-05-06 23:54:14 -04:00
Christopher Tiwald 5b0d61727e aws: Only store protocol numbers for ingress/egress rules on ACLs.
Users can input a limited number of protocol names (e.g. "tcp") as
inputs to network ACL rules, but the API only supports valid protocol
number:

http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml

Preserve the convenience of protocol names and simultaneously support
numbers by only writing numbers to the state file. Also use numbers
when hashing the rules, to keep everything consistent.
2015-05-06 23:54:12 -04:00
Christopher Tiwald 8056b5f8f7 aws: Force users to use valid network masks on ACL ingress/egress
AWS will accept any overly-specific IP/mask combination, such as
10.1.2.2/24, but will store it by its implied network: 10.1.2.0/24.
This results in hashing errors, because the remote API will return
hashing results out of sync with the local configuration file.

Enforce a stricter API rule than AWS. Force users to use valid masks,
and run a quick calculation on their input to discover their intent.
2015-05-06 23:53:34 -04:00
Christopher Tiwald b888b31e08 aws: Force users to use from_port, to_port = 0 on network ACLs with -1 protocol
AWS doesn't store ports for -1 protocol rules, thus the read from the
API will always come up with a different hash. Force the user to make a
deliberate port choice when enabling -1 protocol rules. All from_port
and to_port's on these rules must be 0.
2015-05-06 23:51:23 -04:00
Christopher Tiwald d14049c8ad aws: Don't try to modify or delete the untouchable network_acl rules.
AWS includes default rules with all network ACL resources which cannot
be modified by the user. Don't attempt to store them locally or change
them remotely if they are already stored -- it'll consistently result
in hashing problems.
2015-05-06 23:03:25 -04:00
Christopher Tiwald 03ee059da3 aws: Write ingress/egress rules into a map so they can be set.
resourceAwsNetworkAclRead swallowed these errors resulting in rules
that never properly updated. Implement an entry-to-maplist function
that'll allow us to write something that Set knows how to read.
2015-05-06 23:03:24 -04:00
Paul Hinze a9678bd252 Merge pull request #1840 from hashicorp/f-aws-asg-handle-scaling-activity-in-progress-errors
provider/aws: handle in progress errs from ASG deletes
2015-05-06 19:39:23 -05:00
Paul Hinze 90907c8be5 Merge pull request #1738 from justincampbell/s3-website
providers/aws: S3 bucket website support
2015-05-06 19:37:29 -05:00
Paul Hinze 9a286402c3 Merge pull request #1838 from josharian/consul-scheme
providers/consul: add scheme argument
2015-05-06 19:09:11 -05:00
Paul Hinze 03530d1285 provider/aws: handle in progress errs from ASG deletes
If an AutoScalingGroup is in the middle of performing a Scaling
Activity, it cannot be deleted, and yields a ScalingActivityInProgress
error.

Retry the delete for up to 5m so we don't choke on this error. It's
telling us something's in progress, so we'll keep trying until the
scaling activity completed.
2015-05-06 18:54:59 -05:00
Paul Hinze 761523e8f9 Merge pull request #1839 from hashicorp/f-aws-asg-wait-for-capacity
provider/aws: wait for ASG capacity on creation
2015-05-06 18:40:13 -05:00
Paul Hinze 063454e9b8 provider/aws: wait for ASG capacity on creation
On ASG creation, waits for up to 10m for desired_capacity or min_size
healthy nodes to show up in the group before continuing.

With CBD and proper HealthCheck tuning, this allows us guarantee safe
ASG replacement.
2015-05-06 18:34:20 -05:00
Josh Bleecher Snyder 30d34908b7 providers/consul: add scheme argument
This enables connecting to consul over https
without having to set the envvar CONSUL_HTTP_SSL.
2015-05-06 16:12:32 -07:00
Clint c44ba73a2a Merge pull request #1837 from hashicorp/b-fix-aws-sg-vpcid
provider/aws: fix issue with reading VPC id in AWS Security Group
2015-05-06 17:01:20 -05:00
Clint Shryock 8705f0f78f provider/aws: fix issue with reading VPC id in AWS Security Group 2015-05-06 16:54:43 -05:00
Mitchell Hashimoto 4a61d0abc9 provider/aws: do connection draining stuff totally separate 2015-05-06 11:47:06 -07:00
Clint Shryock acbca8101c provider/aws: Update Elasticache Subnet test 2015-05-06 13:44:24 -05:00
Mitchell Hashimoto 5378d904a2 provider/aws: remove debug 2015-05-06 11:43:36 -07:00
Mitchell Hashimoto 74665f27c8 provider/aws: must set connection draining timeout separate frrom
enabled
2015-05-06 11:43:18 -07:00
Paul Hinze 300bc129a1 Merge pull request #1832 from hashicorp/b-google-instance-template-metadata
provider/google: compute template metadata to map
2015-05-06 13:18:38 -05:00
Mitchell Hashimoto 5d12c79d90 provider/aws: retry VGW connection a bit due to eventual consistency 2015-05-06 11:09:51 -07:00
Paul Hinze 75c8396f7a provider/google: compute template metadata to map
Needs to match instance, since shared processing helper functions are
used.

Closes #1665
2015-05-06 12:33:35 -05:00
Mitchell Hashimoto f2ddb53c8f provider/aws: only include network in hash if instance is not set 2015-05-06 10:32:17 -07:00
Mitchell Hashimoto 7311019efe provider/aws: fix incorrect test 2015-05-06 10:20:19 -07:00
Mitchell Hashimoto 4db68cee89 providers/aws: eip network interface is computed 2015-05-06 10:04:38 -07:00
Mitchell Hashimoto 37c56d0084 provider/aws: fix alias test 2015-05-06 09:55:14 -07:00
Clint Shryock 4e717829f8 Merge branch 'master' of github.com:hashicorp/terraform
* 'master' of github.com:hashicorp/terraform:
  provider/aws: detach VPN gateway with proper ID
  update CHANGELOG
  provider/aws: Update ARN in instanceProfileReadResult
  provider/aws: remove placement_group from acctest
  core: module targeting
  Added support for more complexly images repos such as images on a private registry that are stored as namespace/name
2015-05-06 11:45:35 -05:00
Mitchell Hashimoto b184e283b9 provider/aws: detach VPN gateway with proper ID 2015-05-06 09:45:08 -07:00
Clint Shryock cd90648d4e provider/aws: Fix acceptance issue with Network Acls 2015-05-06 11:44:09 -05:00
Mitchell Hashimoto d8485ef506 Merge pull request #1818 from jwthomp/feature/image_name_parse
providers/docker: Support for more complexly named image repos
2015-05-06 09:02:41 -07:00
TANABE Ken-ichi 5be4ecdcdb provider/aws: Update ARN in instanceProfileReadResult 2015-05-07 00:26:57 +09:00
Paul Hinze 010a39a58e provider/aws: remove placement_group from acctest
Depends on there being an existing placement group in the account called
"terraform-placement-group" - we'll need to circle back around to cover
this with AccTests after TF gets an `aws_placement_group` resource.
2015-05-06 10:13:24 -05:00
Clint Shryock 34609c6c22 provider/aws: Change Route 53 record test name, so it can be ran individually 2015-05-06 09:48:15 -05:00
Paul Hinze 66fa633b80 provider/aws: move EBS test into us-west-2 2015-05-06 09:22:34 -05:00
Paul Hinze bcb4067cb3 provider/aws: update test name 2015-05-06 09:20:40 -05:00
Paul Hinze 7303568469 providers/aws: update test name 2015-05-06 09:18:41 -05:00
Paul Hinze b91796368f provider/aws: update test name 2015-05-06 09:18:00 -05:00
Justin Campbell 2745adba56 providers/aws: Test S3 website endpoint attr 2015-05-06 09:41:02 -04:00
Justin Campbell 87e6d3d17f providers/aws: Fix S3 website error doc 2015-05-06 09:41:02 -04:00
Justin Campbell 0b78a71ed5 providers/aws: Test S3 website removal 2015-05-06 09:41:02 -04:00
Justin Campbell eeb65b8d4c providers/aws: Read S3 website config 2015-05-06 09:41:02 -04:00
Paul Hinze 6c6eafa232 provider/aws: removing stray "Ecache" in tests 2015-05-06 08:33:05 -05:00
Justin Campbell 20e531ae0d providers/aws: Check that S3 website sets docs 2015-05-06 08:15:56 -04:00
Justin Campbell be84cf8a8c providers/aws: Add note for us-east-1 empty location 2015-05-06 08:15:56 -04:00
Justin Campbell 348942d3fb providers/aws: Use GetOk instead of Get + cast 2015-05-06 08:15:56 -04:00
Justin Campbell 562bd6541b providers/aws: Use explicit returns in websiteEndpoint 2015-05-06 08:15:56 -04:00
Justin Campbell 30f737c781 providers/aws: Change S3 website to block 2015-05-06 08:15:56 -04:00
Justin Campbell 38e04b3765 providers/aws: Add website_endpoint to S3 output 2015-05-06 08:15:55 -04:00
Justin Campbell b7a9ef5ef6 providers/aws: Add S3 error_document
Also fix when index/error document is empty
2015-05-06 08:15:55 -04:00
Justin Campbell e6d9dcfb1a providers/aws: Initial S3 bucket website support 2015-05-06 08:15:55 -04:00
Joe Topjian b54df9bc0b Fixing TestAccComputeV2FloatingIP_attach 2015-05-06 05:58:58 +00:00
Joe Topjian 219c86ef93 Fixing TestAccComputeV2Instance_floatingIPAttach 2015-05-06 05:53:17 +00:00
Joe Topjian e76dca9756 Fixing TestAccComputeV2Instance_basic 2015-05-06 05:50:21 +00:00
Paul Hinze cebcee5c63 Merge pull request #1778 from josharian/template-provider
providers: add template provider
2015-05-05 20:09:27 -05:00