Skip to content

Commit 1defeaf

Browse files
committed
docs: add changelog for new/removed keepers
1 parent 67d9764 commit 1defeaf

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

docs/upgrading_to_v29.0.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Upgrading to v29.0
2+
The v29.0 release of *kubernetes-engine* is a backwards incompatible
3+
release.
4+
5+
### Update variant random ID keepers updated
6+
7+
The v29.0 release updates the keepers for the update variant modules. This will force a recreation of the nodepools.
8+
9+
To avoid this, it is possible to edit the remote state of the `random_id` resource to add the new attributes.
10+
11+
1. Perform a `terraform plan` as normal, identifying the `random_id` resource(s) changing and the new/removed attributes
12+
```tf
13+
~ keepers = { # forces replacement
14+
+ "boot_disk_kms_key" = ""
15+
+ "gpu_partition_size" = ""
16+
- "labels" = "" -> null
17+
+ "placement_policy" = ""
18+
- "tags" = "" -> null
19+
# (19 unchanged elements hidden)
20+
}
21+
# (2 unchanged attributes hidden)
22+
}
23+
```
24+
2. Pull the remote state locally: `terraform state pull > default.tfstate`
25+
3. Back up the original remote state: `cp default.tfstate original.tfstate`
26+
4. Edit the `random_id` resource(s) to add/remove the attributes from the `terraform plan` step
27+
```diff
28+
"attributes": {
29+
"b64_std": "pool-02-vb4=",
30+
"b64_url": "pool-02-vb4",
31+
"byte_length": 2,
32+
"dec": "pool-02-48574",
33+
"hex": "pool-02-bdbe",
34+
"id": "vb4",
35+
"keepers": {
36+
...
37+
"taints": "",
38+
- "labels": "",
39+
- "tags": "",
40+
+ "boot_disk_kms_key": "",
41+
+ "gpu_partition_size": "",
42+
+ "placement_policy": "",
43+
},
44+
"prefix": "pool-02-"
45+
}
46+
```
47+
1. Bump the serial number at the top
48+
2. Push the modified state to the remote `terraform state push default.tfstate`
49+
3. Confirm the `random_id` resource(s) no longer changes (or the corresponding `nodepool`) in a `terraform plan`

0 commit comments

Comments
 (0)