Commit Graph

14237 Commits

Author SHA1 Message Date
Mitchell Hashimoto 2019a44f04
command/apply: apply from plan respects -backup and -state-out
Fixes #5409

I didn't expect this to be such a rabbit hole!

Based on git history, it appears that for "historical reasons"(tm),
setting up the various `state.State` structures for a plan were
_completely different logic_ than a normal `terraform apply`. This meant
that it was skipping things like disabling backups with `-backup="-"`.

This PR unifies loading from a plan to the normal state setup mechanism.
A few tests that were failing prior to this PR were added, no existing
tests were changed.
2016-10-28 20:51:05 -04:00
James Turnbull 18b3736ba4 Pass over the Interpolation page (#9703)
* Pass over the Interpolation page

Fixes some grammar, typos and structure. Updated some headings and fixed
a couple of spelling mistakes.

* Added proper note syntax

* Turned some notes into actual notes

* Couple of minor typos just noticed
2016-10-29 01:13:09 +01:00
Mitchell Hashimoto 52e4b4563b Merge pull request #9701 from hashicorp/update-hcl
vendor: update HCL
2016-10-28 19:44:55 -04:00
Mitchell Hashimoto 6e1e33fd8a
vendor: update HCL 2016-10-28 19:39:00 -04:00
Mitchell Hashimoto 7c0cc06ad1 Update CHANGELOG.md 2016-10-28 19:35:05 -04:00
Mitchell Hashimoto bccfcbd4bf Update CHANGELOG.md 2016-10-28 19:32:19 -04:00
Mitchell Hashimoto 0d921cf8e7 Merge pull request #9692 from jszwedko/add-basic-math-interpolation
Add some basic math interpolation functions
2016-10-28 19:30:59 -04:00
Paul Stack a68bcccd9c Update CHANGELOG.md 2016-10-29 00:02:23 +01:00
Clint 01e8bd1f70 provider/aws: Fix import of RouteTable with destination prefixes (#9686)
* add test failure

* provider/aws: Skip import of routes that contain destination prefix ids
2016-10-29 01:01:17 +02:00
Paul Stack 0e85d6bb15 Update CHANGELOG.md 2016-10-28 23:59:27 +01:00
Anshul Sharma cc8f11138f Added AWS Resource WAF SizeConstraintSet (#9689) 2016-10-29 00:58:37 +02:00
Mitchell Hashimoto 5489d8c549
helper/schema: removed optional items force new
Fixes #5138

If an item is optional and is removed completely from the configuration,
it should still trigger a destroy/create if the field itself was marked
as "ForceNew".

See the example in #5138.
2016-10-28 18:45:12 -04:00
Paul Stack 0f8611c82c Update CHANGELOG.md 2016-10-28 23:20:19 +01:00
Raphael Randschau 082ef04b9e provider/scaleway: update sdk for ams1 region (#9687)
* provider/scalway: update sdk for ams1 region

* provider/scaleway typecast volume size as of 472a493
2016-10-29 00:16:53 +02:00
Mitchell Hashimoto 3fd390b699
terraform: disallow simple variables ("foo")
Fixes #5338 (and I'm sure many others)

There is no use case for "simple" variables in Terraform at all so
anytime one is found it should be an error.

There is a _huge_ backwards incompatibility here that was not supposed
to be by design but I'm sure a lot of people are relying on: in the
`template_file` datasource, this bug allowed you to not escape your
interpolations and have the work. For example:

```
data "template_file" "foo" {
  template = "${a}"
  vars { a = 12 }
}
```

The above would work, but it shouldn't. The template should have to be
`"$${a}"` (to escape the interpolation).

Because of this BC, I recommend holding this until Terraform 0.8.0 and
documenting it carefully. As part of this PR, I've added some special
error message notes.
2016-10-28 15:27:11 -04:00
Jack Pearkes 6491190211 Update CHANGELOG.md 2016-10-28 12:04:33 -07:00
Jesse Szwedko 0fbd72a355 Add some basic math interpolation functions
Support the following math functions for interpolation:

* ceil
* floor
* max
* min

Fixes #7409
2016-10-28 17:49:31 +00:00
Paul Stack 0befa15522 Update CHANGELOG.md 2016-10-28 16:59:20 +02:00
Paul Stack 4dcc01be10 Update CHANGELOG.md 2016-10-28 16:58:01 +02:00
Mitchell Hashimoto 2fa89dd1c9 Update CHANGELOG.md 2016-10-28 10:46:37 -04:00
Mitchell Hashimoto 77611022e3 Update CHANGELOG.md 2016-10-28 10:45:18 -04:00
Mitchell Hashimoto 3f36787207 Merge pull request #9618 from hashicorp/b-computed-prim
helper/schema,terraform: handle computed primitives in diffs
2016-10-28 10:44:13 -04:00
Paul Stack 9665a0f8de Update CHANGELOG.md 2016-10-28 14:44:09 +02:00
Dan Wendorf 781725348e provider/google Support MySQL 5.7 instances (#9673)
* provider/google Document MySQL versions for second generation instances

Google Cloud SQL has first-gen and second-gen instances with different
supported versions of MySQL.

* provider/google Increase SQL Admin operation timeout to 10 minutes

Creating SQL instances for MySQL 5.7 can take over 7 minutes,
so the timeout needs to be increased to allow the
google_sql_database_instance resource to successfully create.
2016-10-28 14:41:03 +02:00
Andras Ferencz-Szabo 46cb7b4710 Allow underscores in IAM user and group names (#9684)
* Allow underscores in IAM user and group names

* Add notes to iam_user and iam_group docs that names are not distinguished by case
2016-10-28 14:40:04 +02:00
Paul Stack 990a1ba204 Update CHANGELOG.md 2016-10-28 14:39:46 +02:00
Paul Stack c954d4f2ab Update CHANGELOG.md 2016-10-28 14:37:08 +02:00
Anshul Sharma afc603c0f8 Added AWS Resource WAF ByteMatchSet (#9681) 2016-10-28 14:36:16 +02:00
Paul Stack d64e645b8e Update CHANGELOG.md 2016-10-28 12:00:03 +02:00
Liam Bennett 8fee7642a9 New AWS resource `ssm_activation` (#9111)
Adding a new resource to support activation of managed instances for
on-premise virtual-machines.
2016-10-28 11:59:12 +02:00
James Turnbull 3500630243 Added s3 and unarchiving docs (#9677)
The underlying [go-getter](https://github.com/hashicorp/go-getter)
supports S3 Buckets and unarchiving. Adding mentions of this to the
module sources documentation.
2016-10-28 03:36:22 +02:00
Paul Stack 7940af2ff2 Update CHANGELOG.md 2016-10-28 01:12:14 +02:00
Dan Wendorf 407af92c21 provider/google Change default MySQL instance version to 5.6 (#9674)
The Google Cloud SQL API defaults to 5.6, and 5.6 is the only version avaiable
to both first- and second-generation Cloud SQL instances.
2016-10-28 00:11:08 +01:00
Paul Stack 257be13e0e Update CHANGELOG.md 2016-10-28 01:10:24 +02:00
Krzysztof Wilczynski a078b893d6 Add support for `AutoMinorVersionUpgrade` to aws_elasticache_replication_group resource. (#9657)
This commit adds an ability to modify the `AutoMinorVersionUpgrade` property of the
Replication Group (which is enabled by default) accordingly.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
2016-10-28 00:08:14 +01:00
Paul Stack 8abc6fcdf7 Update CHANGELOG.md 2016-10-28 00:59:11 +02:00
Paul Stack f1202c97a5 Bump crypto package (#9661)
This is the fix up of #9345
2016-10-27 23:57:25 +01:00
Clint 1acc73457b Merge pull request #9664 from antonbabenko/fix_changelog
Fixed comma-separated github issues in CHANGELOG.md
2016-10-27 15:07:54 -05:00
clint shryock b33d605cb0 provider/aws: Limit AWS Lambda source uploads 2016-10-27 14:41:20 -05:00
Sander van Harmelen 1ed6e4c3dd Update CHANGELOG.md 2016-10-27 21:08:27 +02:00
ddegoede 2531ab024a Adding private gateway and static route resource to cloudstack provider (#9637)
* Adding private gateway and static route resource to cloudstack provider

Testing the private gateway and static route resource requires a ROOT
account in Cloudstack

* changes requested by reviewer
2016-10-27 21:06:39 +02:00
Anton Babenko 3b59b4151b Update GH issue in Changelog.md 2016-10-27 20:08:56 +02:00
Anton Babenko f13abccd30 Fixed regexp to process comma-separated links to github issues in CHANGELOG.md 2016-10-27 20:07:37 +02:00
craigmonson d2eab5a760 Update variables.html.md (#9663)
Fixed a typo
2016-10-27 19:07:19 +01:00
Mitchell Hashimoto b2950bc205
command/validate: respond to --help
Fixes #5072

This is very simple: we need to process CLI flags on validate in order
to catch and respond to `--help`.
2016-10-27 13:43:01 -04:00
Paul Stack c2cf48aab7 Update CHANGELOG.md 2016-10-27 18:41:10 +01:00
Paul Stack de6b51f8f9 provider/aws: Refresh aws_autoscaling_schedule from state on 404 (#9659)
Fixes #9654

Before the fix, I created an ASG with a schedule on it. Went to the AWS
console and deleted the schedule. A terraform plan looked as follows:

```
% terraform plan
    See https://www.terraform.io/docs/internals/internal-plugins.html
    Refreshing Terraform state in-memory prior to plan...
    The refreshed state will be used to calculate this plan, but
    will not be persisted to local or remote state storage.

    aws_launch_configuration.foobar: Refreshing state... (ID:
    terraform-test-foobar5)
    aws_autoscaling_group.foobar: Refreshing state... (ID:
    terraform-test-foobar5)
    aws_autoscaling_schedule.foobar: Refreshing state... (ID: foobar)
    Error refreshing state: 1 error(s) occurred:

    * aws_autoscaling_schedule.foobar: Unable to find Autoscaling
    * Scheduled Action: []*autoscaling.ScheduledUpdateGroupAction(nil)
```

After the fix:

```
terraform plan                                                                                                                           1 ↵
Refreshing Terraform state in-memory prior to plan...
The refreshed state will be used to calculate this plan, but
will not be persisted to local or remote state storage.

aws_launch_configuration.foobar: Refreshing state... (ID: terraform-test-foobar5)
aws_autoscaling_group.foobar: Refreshing state... (ID: terraform-test-foobar5)
aws_autoscaling_schedule.foobar: Refreshing state... (ID: foobar)

The Terraform execution plan has been generated and is shown below.
Resources are shown in alphabetical order for quick scanning. Green resources
will be created (or destroyed and then created if an existing resource
exists), yellow resources are being changed in-place, and red resources
will be destroyed. Cyan entries are data sources to be read.

Note: You didn't specify an "-out" parameter to save this plan, so when
"apply" is called, Terraform can't guarantee this is what will execute.

+ aws_autoscaling_schedule.foobar
    arn:                    "<computed>"
    autoscaling_group_name: "terraform-test-foobar5"
    desired_capacity:       "0"
    end_time:               "2018-01-16T13:00:00Z"
    max_size:               "0"
    min_size:               "0"
    recurrence:             "<computed>"
    scheduled_action_name:  "foobar"
    start_time:             "2018-01-16T07:00:00Z"

Plan: 1 to add, 0 to change, 0 to destroy.
```

Tests run as expected:

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAutoscalingSchedule_'                                               2 ↵ ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/10/27 17:45:19 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSAutoscalingSchedule_ -timeout 120m
=== RUN   TestAccAWSAutoscalingSchedule_basic
--- PASS: TestAccAWSAutoscalingSchedule_basic (140.94s)
=== RUN   TestAccAWSAutoscalingSchedule_disappears
--- PASS: TestAccAWSAutoscalingSchedule_disappears (179.17s)
=== RUN   TestAccAWSAutoscalingSchedule_recurrence
--- PASS: TestAccAWSAutoscalingSchedule_recurrence (186.72s)
=== RUN   TestAccAWSAutoscalingSchedule_zeroValues
--- PASS: TestAccAWSAutoscalingSchedule_zeroValues (167.73s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	674.530s
```
2016-10-27 18:39:15 +01:00
Paul Stack 9886d0e0f9 Update CHANGELOG.md 2016-10-27 18:19:08 +01:00
Mathieu Herbert 7f9baf7009 provider/aws: data source for AWS Security Group (#9604)
* provider/aws: data source for AWS Security Group

* provider/aws: add documentation  for data source for AWS Security Group

* provider/aws: data source for AWS Security Group (improve if condition and syntax)

* fix fmt
2016-10-27 18:17:58 +01:00
Paul Stack 2b6fd7e968 Update CHANGELOG.md 2016-10-27 16:52:14 +01:00