Skip to content

Commit 7b32366

Browse files
authored
Account validation changes (#275)
1 parent c1be22d commit 7b32366

2 files changed

Lines changed: 50 additions & 2 deletions

File tree

prismacloud/resource_org_cloud_account_v2.go

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1073,7 +1073,7 @@ func readOrgV2CloudAccount(ctx context.Context, d *schema.ResourceData, meta int
10731073
client := meta.(*pc.Client)
10741074
cloudType, id := IdToTwoStrings(d.Id())
10751075

1076-
_, err := org.Get(client, cloudType, id)
1076+
cloudAccount, err := org.Get(client, cloudType, id)
10771077
if err != nil {
10781078
if err == pc.ObjectNotFoundError {
10791079
d.SetId("")
@@ -1082,6 +1082,27 @@ func readOrgV2CloudAccount(ctx context.Context, d *schema.ResourceData, meta int
10821082
return diag.FromErr(err)
10831083
}
10841084

1085+
switch cloudType {
1086+
case org.TypeAwsOrg:
1087+
cloudAccountAws := cloudAccount.(org.AwsOrgV2)
1088+
if cloudAccountAws.CloudAccountResp.Deleted == true {
1089+
d.SetId("")
1090+
}
1091+
return nil
1092+
case org.TypeAzureOrg:
1093+
orgAccountAzure := cloudAccount.(org.AzureOrgV2)
1094+
if orgAccountAzure.CloudAccountAzureResp.Deleted == true {
1095+
d.SetId("")
1096+
}
1097+
return nil
1098+
case org.TypeGcpOrg:
1099+
orgAccountGcp := cloudAccount.(org.GcpOrgV2)
1100+
if orgAccountGcp.CloudAccountGcpResp.Deleted == true {
1101+
d.SetId("")
1102+
}
1103+
return nil
1104+
}
1105+
10851106
return nil
10861107
}
10871108

prismacloud/resource_v2_cloud_account.go

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1264,7 +1264,7 @@ func readV2CloudAccount(ctx context.Context, d *schema.ResourceData, meta interf
12641264
client := meta.(*pc.Client)
12651265
cloudType, id := IdToTwoStrings(d.Id())
12661266

1267-
_, err := accountv2.Get(client, cloudType, id)
1267+
cloudAccount, err := accountv2.Get(client, cloudType, id)
12681268
if err != nil {
12691269
if err == pc.ObjectNotFoundError {
12701270
d.SetId("")
@@ -1273,6 +1273,33 @@ func readV2CloudAccount(ctx context.Context, d *schema.ResourceData, meta interf
12731273
return diag.FromErr(err)
12741274
}
12751275

1276+
switch cloudType {
1277+
case accountv2.TypeAws:
1278+
cloudAccountAws := cloudAccount.(accountv2.AwsV2)
1279+
if cloudAccountAws.CloudAccountResp.Deleted == true {
1280+
d.SetId("")
1281+
}
1282+
return nil
1283+
case accountv2.TypeAzure:
1284+
cloudAccountAzure := cloudAccount.(accountv2.AzureV2)
1285+
if cloudAccountAzure.CloudAccountAzureResp.Deleted == true {
1286+
d.SetId("")
1287+
}
1288+
return nil
1289+
case accountv2.TypeGcp:
1290+
cloudAccountGcp := cloudAccount.(accountv2.GcpV2)
1291+
if cloudAccountGcp.CloudAccountGcpResp.Deleted == true {
1292+
d.SetId("")
1293+
}
1294+
return nil
1295+
case accountv2.TypeIbm:
1296+
cloudAccountIbm := cloudAccount.(accountv2.IbmV2)
1297+
if cloudAccountIbm.CloudAccountIbmResp.Deleted == true {
1298+
d.SetId("")
1299+
}
1300+
return nil
1301+
}
1302+
12761303
return nil
12771304
}
12781305

0 commit comments

Comments
 (0)