website: update upgrade guide for number backwards incompat
This commit is contained in:
parent
6b458160b9
commit
ef2500932d
|
@ -57,6 +57,46 @@ EOF
|
|||
|
||||
**Action:** Use heredocs or escape sequences when you have a string with newlines.
|
||||
|
||||
## Names Cannot Start with Integers or Hyphens
|
||||
|
||||
Names of variables, resources, modules, etc. may no longer start with
|
||||
numbers or hyphens. These will now fail at the validation step.
|
||||
|
||||
This change was necessary to remove ambiguities from parsing the
|
||||
interpolations. Most languages do not allow identifiers starting with
|
||||
these characters with good reason. We now follow that as well.
|
||||
|
||||
An example of a configuration that no longer works:
|
||||
|
||||
```
|
||||
variable "1x1" {}
|
||||
```
|
||||
|
||||
This must now be changed to start with a letter or underscore:
|
||||
|
||||
```
|
||||
variable "foo-1x1" {}
|
||||
variable "_1x1" {}
|
||||
```
|
||||
|
||||
And so on...
|
||||
|
||||
If you're changing resource names, this can cause Terraform to consider it
|
||||
a new resource and plan to destroy it. To work around these scenarios,
|
||||
please use the `terraform state mv` command:
|
||||
|
||||
```
|
||||
terraform state mv aws_instance.1x1 aws_instance.foo-1x1
|
||||
```
|
||||
|
||||
The `terraform state mv` command creates a backup for each operation,
|
||||
but to be safe you can still back up your state prior to doing these
|
||||
changes.
|
||||
|
||||
**Action:** Rename variable, resources, modules, providers, outputs that
|
||||
start with a number or hyphen. If you rename a resource or module, use
|
||||
`terraform state mv` to fix the state.
|
||||
|
||||
## Math Order of Operations
|
||||
|
||||
Math operations now follow standard mathematical order of operations.
|
||||
|
|
Loading…
Reference in New Issue