@@ -35,12 +35,28 @@ func DataSourceIbmIsShare() *schema.Resource {
3535 ExactlyOneOf : []string {"share" , "name" },
3636 Description : "Name of the share." ,
3737 },
38+ "availability_mode" : {
39+ Type : schema .TypeString ,
40+ Computed : true ,
41+ Description : "Availability mode of the share." ,
42+ },
3843 "allowed_transit_encryption_modes" : {
3944 Type : schema .TypeList ,
4045 Computed : true ,
4146 Elem : & schema.Schema {Type : schema .TypeString },
4247 Description : "Allowed transit encryption modes" ,
4348 },
49+ "allowed_access_protocols" : {
50+ Type : schema .TypeList ,
51+ Computed : true ,
52+ Elem : & schema.Schema {Type : schema .TypeString },
53+ Description : "Allowed access protocols for this share" ,
54+ },
55+ "bandwidth" : {
56+ Type : schema .TypeInt ,
57+ Computed : true ,
58+ Description : "The bandwidth for this share." ,
59+ },
4460 "created_at" : {
4561 Type : schema .TypeString ,
4662 Computed : true ,
@@ -590,6 +606,11 @@ func DataSourceIbmIsShare() *schema.Resource {
590606 },
591607 },
592608 },
609+ "storage_generation" : {
610+ Type : schema .TypeInt ,
611+ Computed : true ,
612+ Description : "The storage generation for this share" ,
613+ },
593614 },
594615 }
595616}
@@ -699,12 +720,27 @@ func dataSourceIbmIsShareRead(context context.Context, d *schema.ResourceData, m
699720 if share .AccessControlMode != nil {
700721 d .Set ("access_control_mode" , * share .AccessControlMode )
701722 }
723+ if share .AvailabilityMode != nil {
724+ if err = d .Set ("availability_mode" , * share .AvailabilityMode ); err != nil {
725+ return flex .DiscriminatedTerraformErrorf (err , err .Error (), "ibm_is_share" , "read" , "set-availability_mode" ).GetDiag ()
726+ }
727+ }
702728 if ! core .IsNil (share .AllowedTransitEncryptionModes ) {
703729 if err = d .Set ("allowed_transit_encryption_modes" , share .AllowedTransitEncryptionModes ); err != nil {
704730 err = fmt .Errorf ("Error setting allowed_transit_encryption_modes: %s" , err )
705731 return flex .DiscriminatedTerraformErrorf (err , err .Error (), "ibm_is_share" , "read" , "set-allowed_transit_encryption_modes" ).GetDiag ()
706732 }
707733 }
734+ if ! core .IsNil (share .AllowedAccessProtocols ) {
735+ if err = d .Set ("allowed_access_protocols" , share .AllowedAccessProtocols ); err != nil {
736+ err = fmt .Errorf ("Error setting allowed_access_protocols: %s" , err )
737+ return flex .DiscriminatedTerraformErrorf (err , err .Error (), "ibm_is_share" , "read" , "set-allowed_access_protocols" ).GetDiag ()
738+ }
739+ }
740+ if err = d .Set ("bandwidth" , share .Bandwidth ); err != nil {
741+ err = fmt .Errorf ("Error setting bandwidth: %s" , err )
742+ return flex .DiscriminatedTerraformErrorf (err , err .Error (), "ibm_is_share" , "read" , "set-bandwidth" ).GetDiag ()
743+ }
708744 if err = d .Set ("accessor_binding_role" , share .AccessorBindingRole ); err != nil {
709745 err = fmt .Errorf ("Error setting accessor_binding_role: %s" , err )
710746 return flex .DiscriminatedTerraformErrorf (err , err .Error (), "ibm_is_share" , "read" , "set-accessor_binding_role" ).GetDiag ()
@@ -821,6 +857,10 @@ func dataSourceIbmIsShareRead(context context.Context, d *schema.ResourceData, m
821857 if err = d .Set ("source_snapshot" , sourceSnapshot ); err != nil {
822858 return flex .DiscriminatedTerraformErrorf (err , fmt .Sprintf ("Error setting source_snapshot: %s" , err ), "(Data) ibm_is_share" , "read" , "set-source_snapshot" ).GetDiag ()
823859 }
860+
861+ if err := d .Set ("storage_generation" , flex .IntValue (share .StorageGeneration )); err != nil {
862+ return flex .DiscriminatedTerraformErrorf (err , fmt .Sprintf ("Error setting storage_generation: %s" , err ), "(Data) ibm_is_share" , "read" , "set-storage_generation" ).GetDiag ()
863+ }
824864 accesstags , err := flex .GetGlobalTagsUsingCRN (meta , * share .CRN , "" , isAccessTagType )
825865 if err != nil {
826866 tfErr := flex .TerraformErrorf (err , fmt .Sprintf ("Error setting shares (%s) access tags: %s" , d .Id (), err ), "(Data) ibm_is_share" , "read" )
0 commit comments