Skip to content

Commit fa49c13

Browse files
authored
fix: drift in ephemeral disk (#470)
1 parent c286003 commit fa49c13

File tree

4 files changed

+70
-33
lines changed

4 files changed

+70
-33
lines changed

castai/resource_node_configuration.go

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -345,19 +345,21 @@ func resourceNodeConfiguration() *schema.Resource {
345345
Elem: &schema.Resource{
346346
Schema: map[string]*schema.Schema{
347347
"placement": {
348-
Type: schema.TypeString,
349-
Required: true,
350-
Description: "Placement of the ephemeral OS disk. One of: cacheDisk, resourceDisk",
351-
ValidateDiagFunc: validation.ToDiagFunc(validation.StringInSlice([]string{aksEphemeralDiskPlacementCacheDisk, aksEphemeralDiskPlacementResourceDisk}, true)),
348+
Type: schema.TypeString,
349+
Required: true,
350+
Description: "Placement of the ephemeral OS disk. One of: cacheDisk, resourceDisk",
351+
ValidateDiagFunc: validation.ToDiagFunc(validation.StringInSlice([]string{aksEphemeralDiskPlacementCacheDisk, aksEphemeralDiskPlacementResourceDisk}, true)),
352+
DiffSuppressOnRefresh: true,
352353
DiffSuppressFunc: func(k, oldValue, newValue string, d *schema.ResourceData) bool {
353354
return strings.EqualFold(oldValue, newValue)
354355
},
355356
},
356357
"cache": {
357-
Type: schema.TypeString,
358-
Optional: true,
359-
Description: "Cache type for the ephemeral OS disk. One of: ReadOnly, ReadWrite",
360-
ValidateDiagFunc: validation.ToDiagFunc(validation.StringInSlice([]string{aksDiskCacheReadOnly, aksDiskCacheReadWrite}, true)),
358+
Type: schema.TypeString,
359+
Optional: true,
360+
Description: "Cache type for the ephemeral OS disk. One of: ReadOnly, ReadWrite",
361+
ValidateDiagFunc: validation.ToDiagFunc(validation.StringInSlice([]string{aksDiskCacheReadOnly, aksDiskCacheReadWrite}, true)),
362+
DiffSuppressOnRefresh: true,
361363
DiffSuppressFunc: func(k, oldValue, newValue string, d *schema.ResourceData) bool {
362364
return strings.EqualFold(oldValue, newValue)
363365
},
@@ -1055,19 +1057,19 @@ func toAKSEphemeralOSDisk(obj any) *sdk.NodeconfigV1AKSConfigOsDiskEphemeral {
10551057
osDisk := &sdk.NodeconfigV1AKSConfigOsDiskEphemeral{}
10561058

10571059
if v, ok := obj.(map[string]any)["placement"].(string); ok && v != "" {
1058-
switch v {
1059-
case aksEphemeralDiskPlacementResourceDisk:
1060+
switch strings.ToLower(v) {
1061+
case strings.ToLower(aksEphemeralDiskPlacementResourceDisk):
10601062
osDisk.Placement = lo.ToPtr(sdk.NodeconfigV1AKSConfigOsDiskEphemeralPlacementPLACEMENTRESOURCEDISK)
1061-
case aksEphemeralDiskPlacementCacheDisk:
1063+
case strings.ToLower(aksEphemeralDiskPlacementCacheDisk):
10621064
osDisk.Placement = lo.ToPtr(sdk.NodeconfigV1AKSConfigOsDiskEphemeralPlacementPLACEMENTCACHEDISK)
10631065
}
10641066
}
10651067

10661068
if v, ok := obj.(map[string]any)["cache"].(string); ok && v != "" {
1067-
switch v {
1068-
case aksDiskCacheReadWrite:
1069+
switch strings.ToLower(v) {
1070+
case strings.ToLower(aksDiskCacheReadWrite):
10691071
osDisk.CacheType = lo.ToPtr(sdk.NodeconfigV1AKSConfigOsDiskEphemeralCacheTypeREADWRITE)
1070-
case aksDiskCacheReadOnly:
1072+
case strings.ToLower(aksDiskCacheReadOnly):
10711073
osDisk.CacheType = lo.ToPtr(sdk.NodeconfigV1AKSConfigOsDiskEphemeralCacheTypeREADONLY)
10721074
}
10731075
}

castai/resource_node_configuration_aks_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ resource "castai_node_configuration" "test" {
105105
max_pods_per_node = 32
106106
aks_image_family = "azure-linux"
107107
ephemeral_os_disk {
108-
placement = "cacheDisk"
108+
placement = "CacheDisk"
109109
cache = "ReadOnly"
110110
}
111111
loadbalancers {

castai/sdk/api.gen.go

Lines changed: 11 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

castai/sdk/client.gen.go

Lines changed: 42 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)