@@ -18,20 +18,22 @@ import (
1818)
1919
2020const (
21- isVPNGatewayName = "name"
22- isVPNGatewayResourceGroup = "resource_group"
23- isVPNGatewayMode = "mode"
24- isVPNGatewayTags = "tags"
25- isVPNGatewaySubnet = "subnet"
26- isVPNGatewayStatus = "status"
27- isVPNGatewayDeleting = "deleting"
28- isVPNGatewayDeleted = "done"
29- isVPNGatewayProvisioning = "provisioning"
30- isVPNGatewayProvisioningDone = "done"
31- isVPNGatewayPublicIPAddress = "public_ip_address"
32- isVPNGatewayMembers = "members"
33- isVPNGatewayCreatedAt = "created_at"
34- isVPNGatewayPublicIPAddress2 = "public_ip_address2"
21+ isVPNGatewayName = "name"
22+ isVPNGatewayResourceGroup = "resource_group"
23+ isVPNGatewayMode = "mode"
24+ isVPNGatewayTags = "tags"
25+ isVPNGatewaySubnet = "subnet"
26+ isVPNGatewayStatus = "status"
27+ isVPNGatewayDeleting = "deleting"
28+ isVPNGatewayDeleted = "done"
29+ isVPNGatewayProvisioning = "provisioning"
30+ isVPNGatewayProvisioningDone = "done"
31+ isVPNGatewayPublicIPAddress = "public_ip_address"
32+ isVPNGatewayMembers = "members"
33+ isVPNGatewayCreatedAt = "created_at"
34+ isVPNGatewayPublicIPAddress2 = "public_ip_address2"
35+ isVPNGatewayPrivateIPAddress = "private_ip_address"
36+ isVPNGatewayPrivateIPAddress2 = "private_ip_address2"
3537)
3638
3739func resourceIBMISVPNGateway () * schema.Resource {
@@ -86,13 +88,27 @@ func resourceIBMISVPNGateway() *schema.Resource {
8688 },
8789
8890 isVPNGatewayPublicIPAddress : {
89- Type : schema .TypeString ,
90- Computed : true ,
91+ Type : schema .TypeString ,
92+ Computed : true ,
93+ Description : "The public IP address assigned to the VPN gateway member." ,
9194 },
9295
9396 isVPNGatewayPublicIPAddress2 : {
94- Type : schema .TypeString ,
95- Computed : true ,
97+ Type : schema .TypeString ,
98+ Computed : true ,
99+ Description : "The second public IP address assigned to the VPN gateway member." ,
100+ },
101+
102+ isVPNGatewayPrivateIPAddress : {
103+ Type : schema .TypeString ,
104+ Computed : true ,
105+ Description : "The Private IP address assigned to the VPN gateway member." ,
106+ },
107+
108+ isVPNGatewayPrivateIPAddress2 : {
109+ Type : schema .TypeString ,
110+ Computed : true ,
111+ Description : "The Second Private IP address assigned to the VPN gateway member." ,
96112 },
97113
98114 isVPNGatewayTags : {
@@ -159,6 +175,12 @@ func resourceIBMISVPNGateway() *schema.Resource {
159175 Description : "The public IP address assigned to the VPN gateway member" ,
160176 },
161177
178+ "private_address" : {
179+ Type : schema .TypeString ,
180+ Computed : true ,
181+ Description : "The private IP address assigned to the VPN gateway member" ,
182+ },
183+
162184 "role" : {
163185 Type : schema .TypeString ,
164186 Computed : true ,
@@ -497,9 +519,18 @@ func vpngwGet(d *schema.ResourceData, meta interface{}, id string) error {
497519 for _ , member := range vpnGateway .Members {
498520 members = append (members , member )
499521 }
500- if len (members ) > 1 {
522+ if len (members ) > 0 {
501523 d .Set (isVPNGatewayPublicIPAddress , * members [0 ].PublicIP .Address )
524+ if members [0 ].PrivateIP != nil && members [0 ].PrivateIP .Address != nil {
525+ d .Set (isVPNGatewayPrivateIPAddress , * members [0 ].PrivateIP .Address )
526+ }
527+ }
528+ if len (members ) > 1 {
502529 d .Set (isVPNGatewayPublicIPAddress2 , * members [1 ].PublicIP .Address )
530+ if members [1 ].PrivateIP != nil && members [1 ].PrivateIP .Address != nil {
531+ d .Set (isVPNGatewayPrivateIPAddress2 , * members [1 ].PrivateIP .Address )
532+ }
533+
503534 }
504535 tags , err := GetTagsUsingCRN (meta , * vpnGateway .CRN )
505536 if err != nil {
@@ -530,6 +561,9 @@ func vpngwGet(d *schema.ResourceData, meta interface{}, id string) error {
530561 currentMemberIP ["status" ] = * memberIP .Status
531562 vpcMembersIpsList = append (vpcMembersIpsList , currentMemberIP )
532563 }
564+ if memberIP .PrivateIP != nil {
565+ currentMemberIP ["private_address" ] = * memberIP .PrivateIP .Address
566+ }
533567 }
534568 d .Set (isVPNGatewayMembers , vpcMembersIpsList )
535569 }
0 commit comments