Skip to content

Commit c892d5b

Browse files
committed
handle breaking change: transit encryption default values based on profiles
1 parent 7b4d302 commit c892d5b

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

ibm/service/vpc/resource_ibm_is_share_mount_target.go

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -367,12 +367,22 @@ func resourceIBMIsShareMountTargetCreate(context context.Context, d *schema.Reso
367367
}
368368
shareMountTargetPrototype.TransitEncryption = &transitEncryption
369369
} else {
370-
if _, ok := d.GetOk("vpc"); ok {
371-
shareMountTargetPrototype.TransitEncryption = &[]string{"none"}[0]
372-
} else {
373-
shareMountTargetPrototype.TransitEncryption = &[]string{"ipsec"}[0]
370+
getShareOptions := &vpcv1.GetShareOptions{
371+
ID: &shareId,
372+
}
373+
share, _, err := vpcClient.GetShareWithContext(context, getShareOptions)
374+
if err != nil || share == nil {
375+
tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetShareWithContext failed: %s", err.Error()), "ibm_is_share_mount_target", "create")
376+
log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage())
377+
return tfErr.GetDiag()
378+
}
379+
if share != nil && share.Profile != nil && share.Profile.Name != nil {
380+
if *share.Profile.Name == "dp2" {
381+
shareMountTargetPrototype.TransitEncryption = &[]string{"ipsec"}[0]
382+
} else if *share.Profile.Name == "rfs" {
383+
shareMountTargetPrototype.TransitEncryption = &[]string{"stunnel"}[0]
384+
}
374385
}
375-
376386
}
377387
createShareMountTargetOptions.ShareMountTargetPrototype = shareMountTargetPrototype
378388
shareTarget, response, err := vpcClient.CreateShareMountTargetWithContext(context, createShareMountTargetOptions)

0 commit comments

Comments
 (0)