Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ require (
github.com/IBM/secrets-manager-go-sdk/v2 v2.0.15
github.com/IBM/vmware-go-sdk v0.1.5
github.com/IBM/vpc-beta-go-sdk v0.8.0
github.com/IBM/vpc-go-sdk v0.73.0
github.com/IBM/vpc-go-sdk v0.74.0
github.com/ScaleFT/sshkeys v0.0.0-20200327173127-6142f742bca5
github.com/akamai/AkamaiOPEN-edgegrid-golang v1.2.2
github.com/akamai/AkamaiOPEN-edgegrid-golang/v5 v5.0.0
Expand Down
4 changes: 4 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,8 @@ github.com/IBM/go-sdk-core/v5 v5.6.3/go.mod h1:tt/B9rxLkRtglE7pvqLuYikgCXaZFL3bt
github.com/IBM/go-sdk-core/v5 v5.9.5/go.mod h1:YlOwV9LeuclmT/qi/LAK2AsobbAP42veV0j68/rlZsE=
github.com/IBM/go-sdk-core/v5 v5.10.2/go.mod h1:WZPFasUzsKab/2mzt29xPcfruSk5js2ywAPwW4VJjdI=
github.com/IBM/go-sdk-core/v5 v5.17.4/go.mod h1:KsAAI7eStAWwQa4F96MLy+whYSh39JzNjklZRbN/8ns=
github.com/IBM/go-sdk-core/v5 v5.20.1 h1:dzeyifh1kfRLw8VfAIIS5okZYuqLTqplPZP/Kcsgdlo=
github.com/IBM/go-sdk-core/v5 v5.20.1/go.mod h1:Q3BYO6iDA2zweQPDGbNTtqft5tDcEpm6RTuqMlPcvbw=
github.com/IBM/go-sdk-core/v5 v5.21.0 h1:DUnYhvC4SoC8T84rx5omnhY3+xcQg/Whyoa3mDPIMkk=
github.com/IBM/go-sdk-core/v5 v5.21.0/go.mod h1:Q3BYO6iDA2zweQPDGbNTtqft5tDcEpm6RTuqMlPcvbw=
github.com/IBM/ibm-backup-recovery-sdk-go v1.0.3 h1:9TZHocmCfgmF8TGVrpP1kFyQbjcqLNW7+bM07lefpKQ=
Expand Down Expand Up @@ -170,6 +172,8 @@ github.com/IBM/vpc-beta-go-sdk v0.8.0 h1:cEPpv4iw3Ba5W2d0AWg3TIbKeJ8y1nPuUuibR5J
github.com/IBM/vpc-beta-go-sdk v0.8.0/go.mod h1:hORgIyTFRzXrZIK9IohaWmCRBBlYiDRagsufi7M6akE=
github.com/IBM/vpc-go-sdk v0.73.0 h1:gMVR6NSzw8Y7pCkcDa92+heQTzu5X64q8bnBBpLJpFE=
github.com/IBM/vpc-go-sdk v0.73.0/go.mod h1:K3vVlje72PYE3ZRt1iouE+jSIq+vCyYzT1HiFC06hUA=
github.com/IBM/vpc-go-sdk v0.74.0 h1:41tRWn4Tw6r5so/tXsMEy6eYftSPOeRI1YGnECOydNw=
github.com/IBM/vpc-go-sdk v0.74.0/go.mod h1:8lX6TpeYBbx1Vd4KTgM3PPQ4y3auGOPuD6qq3UBDdug=
github.com/Logicalis/asn1 v0.0.0-20190312173541-d60463189a56 h1:vuquMR410psHNax14XKNWa0Ae/kYgWJcXi0IFuX60N0=
github.com/Logicalis/asn1 v0.0.0-20190312173541-d60463189a56/go.mod h1:Zb3OT4l0mf7P/GOs2w2Ilj5sdm5Whoq3pa24dAEBHFc=
github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0=
Expand Down
11 changes: 11 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance.go
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,11 @@ func DataSourceIBMISInstance() *schema.Resource {
Computed: true,
Description: "The total bandwidth (in megabits per second) shared across the instance's network interfaces and storage volumes",
},
isInstanceVolumeBandwidthQoSMode: {
Type: schema.TypeString,
Computed: true,
Description: "The volume bandwidth QoS mode for this virtual server instance.",
},

isInstanceTotalNetworkBandwidth: {
Type: schema.TypeInt,
Expand Down Expand Up @@ -1473,6 +1478,12 @@ func instanceGetByName(context context.Context, d *schema.ResourceData, meta int
}
}

if instance.VolumeBandwidthQosMode != nil {
if err = d.Set(isInstanceVolumeBandwidthQoSMode, string(*instance.VolumeBandwidthQosMode)); err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting volume_bandwidth_qos_mode: %s", err), "(Data) ibm_is_instance", "read", "set-volume_bandwidth_qos_mode").GetDiag()
}
}

if instance.TotalNetworkBandwidth != nil {
if err = d.Set("total_network_bandwidth", flex.IntValue(instance.TotalNetworkBandwidth)); err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting total_network_bandwidth: %s", err), "(Data) ibm_is_instance", "read", "set-total_network_bandwidth").GetDiag()
Expand Down
54 changes: 54 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance_profile.go
Original file line number Diff line number Diff line change
Expand Up @@ -780,6 +780,32 @@ func DataSourceIBMISInstanceProfile() *schema.Resource {
},
},
},
"volume_bandwidth_qos_modes": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"type": {
Type: schema.TypeString,
Computed: true,
Description: "The type for this profile field.",
},
"default": {
Type: schema.TypeString,
Computed: true,
Description: "The default volume bandwidth QoS mode for this profile.",
},
"values": {
Type: schema.TypeList,
Computed: true,
Description: "The permitted volume bandwidth QoS modes for an instance using this profile.",
Elem: &schema.Schema{
Type: schema.TypeString,
},
},
},
},
},
},
}
}
Expand Down Expand Up @@ -992,6 +1018,12 @@ func instanceProfileGet(context context.Context, d *schema.ResourceData, meta in
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting vcpu_count: %s", err), "(Data) ibm_is_instance_profile", "read", "set-vcpu_count").GetDiag()
}
}
if profile.VolumeBandwidthQosModes != nil {
err = d.Set("volume_bandwidth_qos_modes", dataSourceInstanceProfileFlattenVolumeBandwidthQoSMode(*profile.VolumeBandwidthQosModes.(*vpcv1.InstanceProfileVolumeBandwidthQoSModes)))
if err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting volume_bandwidth_qos_modes: %s", err), "(Data) ibm_is_instance_profile", "read", "set-volume_bandwidth_qos_modes").GetDiag()
}
}
return nil
}

Expand Down Expand Up @@ -1318,6 +1350,13 @@ func dataSourceInstanceProfileFlattenVcpuCount(result vpcv1.InstanceProfileVcpu)

return finalList
}
func dataSourceInstanceProfileFlattenVolumeBandwidthQoSMode(result vpcv1.InstanceProfileVolumeBandwidthQoSModes) (finalList []map[string]interface{}) {
finalList = []map[string]interface{}{}
finalMap := dataSourceInstanceProfileVolumeBandwidthQoSModeToMap(result)
finalList = append(finalList, finalMap)

return finalList
}

func dataSourceInstanceProfileVcpuCountToMap(vcpuCountItem vpcv1.InstanceProfileVcpu) (vcpuCountMap map[string]interface{}) {
vcpuCountMap = map[string]interface{}{}
Expand Down Expand Up @@ -1347,6 +1386,21 @@ func dataSourceInstanceProfileVcpuCountToMap(vcpuCountItem vpcv1.InstanceProfile
return vcpuCountMap
}

func dataSourceInstanceProfileVolumeBandwidthQoSModeToMap(volumeBandwidthQoSModeItem vpcv1.InstanceProfileVolumeBandwidthQoSModes) (volumeBandwidthQoSModeItemMap map[string]interface{}) {
volumeBandwidthQoSModeItemMap = map[string]interface{}{}

if volumeBandwidthQoSModeItem.Type != nil {
volumeBandwidthQoSModeItemMap["type"] = volumeBandwidthQoSModeItem.Type
}
if volumeBandwidthQoSModeItem.Default != nil {
volumeBandwidthQoSModeItemMap["default"] = volumeBandwidthQoSModeItem.Default
}
if volumeBandwidthQoSModeItem.Values != nil {
volumeBandwidthQoSModeItemMap["values"] = volumeBandwidthQoSModeItem.Values
}
return volumeBandwidthQoSModeItemMap
}

func dataSourceInstanceProfileFlattenDisks(result []vpcv1.InstanceProfileDisk) (disks []map[string]interface{}) {
for _, disksItem := range result {
disks = append(disks, dataSourceInstanceProfileDisksToMap(disksItem))
Expand Down
37 changes: 37 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance_profile_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,43 @@ func TestAccIBMISInstanceProfileDataSource_basic(t *testing.T) {
},
})
}

func TestAccIBMISInstanceProfileDataSource_QoSMode(t *testing.T) {
resName := "data.ibm_is_instance_profile.test1"

resource.Test(t, resource.TestCase{
PreCheck: func() { acc.TestAccPreCheck(t) },
Providers: acc.TestAccProviders,
Steps: []resource.TestStep{
{
Config: testAccCheckIBMISInstanceProfileDataSourceConfig(),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr(resName, "name", acc.InstanceProfileName),
resource.TestCheckResourceAttrSet(resName, "family"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "bandwidth.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "family"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "href"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "memory.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "architecture"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "port_speed.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "vcpu_architecture.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "vcpu_count.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "vcpu_manufacturer.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "vcpu_manufacturer.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "vcpu_manufacturer.0.value"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "network_interface_count.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "network_attachment_count.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "network_attachment_count.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "reservation_terms.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "reservation_terms.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "reservation_terms.0.values"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profile.test1", "volume_bandwidth_qos_modes.#"),
),
},
},
})
}

func TestAccIBMISInstanceProfileDataSource_cluster(t *testing.T) {
resName := "data.ibm_is_instance_profile.test1"

Expand Down
32 changes: 32 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance_profiles.go
Original file line number Diff line number Diff line change
Expand Up @@ -759,6 +759,32 @@ func DataSourceIBMISInstanceProfiles() *schema.Resource {
},
},
},
"volume_bandwidth_qos_modes": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"type": {
Type: schema.TypeString,
Computed: true,
Description: "The type for this profile field.",
},
"default": {
Type: schema.TypeString,
Computed: true,
Description: "The default volume bandwidth QoS mode for this profile.",
},
"values": {
Type: schema.TypeList,
Computed: true,
Description: "The permitted volume bandwidth QoS modes for an instance using this profile.",
Elem: &schema.Schema{
Type: schema.TypeString,
},
},
},
},
},
"vcpu_manufacturer": &schema.Schema{
Type: schema.TypeList,
Computed: true,
Expand Down Expand Up @@ -948,6 +974,12 @@ func instanceProfilesList(context context.Context, d *schema.ResourceData, meta
vcpuCountList = append(vcpuCountList, vcpuCountMap)
l["vcpu_count"] = vcpuCountList
}
if profile.VolumeBandwidthQosModes != nil {
volumeBandwidthQosModesList := []map[string]interface{}{}
volumeBandwidthQosModesMap := dataSourceInstanceProfileVolumeBandwidthQoSModeToMap(*profile.VolumeBandwidthQosModes.(*vpcv1.InstanceProfileVolumeBandwidthQoSModes))
volumeBandwidthQosModesList = append(volumeBandwidthQosModesList, volumeBandwidthQosModesMap)
l["volume_bandwidth_qos_modes"] = volumeBandwidthQosModesList
}
// Changes for manufacturer for AMD Support.
// reduce the line of code here. - sumit's suggestions
if profile.VcpuManufacturer != nil {
Expand Down
38 changes: 38 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance_profiles_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,44 @@ func TestAccIBMISInstanceProfilesDataSource_basic(t *testing.T) {
},
})
}

func TestAccIBMISInstanceProfilesDataSource_QoS(t *testing.T) {
resName := "data.ibm_is_instance_profiles.test1"

resource.Test(t, resource.TestCase{
PreCheck: func() { acc.TestAccPreCheck(t) },
Providers: acc.TestAccProviders,
Steps: []resource.TestStep{
{
Config: testAccCheckIBMISInstanceProfilesDataSourceConfig(),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet(resName, "profiles.0.name"),
resource.TestCheckResourceAttrSet(resName, "profiles.0.family"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.bandwidth.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.family"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.href"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.memory.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.architecture"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.port_speed.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.vcpu_architecture.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.vcpu_count.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.network_interface_count.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.network_interface_count.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.network_attachment_count.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.network_attachment_count.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.vcpu_manufacturer.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.vcpu_manufacturer.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.vcpu_manufacturer.0.value"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.reservation_terms.#"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.reservation_terms.0.type"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.reservation_terms.0.values"),
resource.TestCheckResourceAttrSet("data.ibm_is_instance_profiles.test1", "profiles.0.volume_bandwidth_qos_modes.#"),
),
},
},
})
}

func TestAccIBMISInstanceProfilesDataSource_cluster(t *testing.T) {
resName := "data.ibm_is_instance_profiles.test1"

Expand Down
29 changes: 29 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance_template.go
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,11 @@ func DataSourceIBMISInstanceTemplate() *schema.Resource {
Computed: true,
Description: "The amount of bandwidth (in megabits per second) allocated exclusively to instance storage volumes",
},
isInstanceVolumeBandwidthQoSMode: {
Type: schema.TypeString,
Computed: true,
Description: "The volume bandwidth QoS mode for this virtual server instance.",
},
isInstanceDefaultTrustedProfileAutoLink: {
Type: schema.TypeBool,
Computed: true,
Expand Down Expand Up @@ -1226,6 +1231,12 @@ func dataSourceIBMISInstanceTemplateRead(context context.Context, d *schema.Reso
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting total_volume_bandwidth: %s", err), "(Data) ibm_is_instance_template", "read", "set-total_volume_bandwidth").GetDiag()
}
}
if instanceTemplate.VolumeBandwidthQosMode != nil {
d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode))
if err = d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode)); err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting volume_bandwidth_qos_mode: %s", err), "(Data) ibm_is_instance_template", "read", "set-volume_bandwidth_qos_mode").GetDiag()
}
}

if instanceTemplate.PrimaryNetworkInterface != nil {
interfaceList := make([]map[string]interface{}, 0)
Expand Down Expand Up @@ -1640,6 +1651,12 @@ func dataSourceIBMISInstanceTemplateRead(context context.Context, d *schema.Reso
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting total_volume_bandwidth: %s", err), "(Data) ibm_is_instance_template", "read", "set-total_volume_bandwidth").GetDiag()
}
}
if instanceTemplate.VolumeBandwidthQosMode != nil {
d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode))
if err = d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode)); err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting volume_bandwidth_qos_mode: %s", err), "(Data) ibm_is_instance_template", "read", "set-volume_bandwidth_qos_mode").GetDiag()
}
}

if instanceTemplate.PrimaryNetworkInterface != nil {
interfaceList := make([]map[string]interface{}, 0)
Expand Down Expand Up @@ -2165,6 +2182,12 @@ func dataSourceIBMISInstanceTemplateRead(context context.Context, d *schema.Reso
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting total_volume_bandwidth: %s", err), "(Data) ibm_is_instance_template", "read", "set-total_volume_bandwidth").GetDiag()
}
}
if instanceTemplate.VolumeBandwidthQosMode != nil {
d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode))
if err = d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode)); err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting volume_bandwidth_qos_mode: %s", err), "(Data) ibm_is_instance_template", "read", "set-volume_bandwidth_qos_mode").GetDiag()
}
}

if instanceTemplate.Image != nil {
imageInf := instanceTemplate.Image
Expand Down Expand Up @@ -2540,6 +2563,12 @@ func dataSourceIBMISInstanceTemplateRead(context context.Context, d *schema.Reso
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting total_volume_bandwidth: %s", err), "(Data) ibm_is_instance_template", "read", "set-total_volume_bandwidth").GetDiag()
}
}
if instanceTemplate.VolumeBandwidthQosMode != nil {
d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode))
if err = d.Set(isInstanceVolumeBandwidthQoSMode, string(*instanceTemplate.VolumeBandwidthQosMode)); err != nil {
return flex.DiscriminatedTerraformErrorf(err, fmt.Sprintf("Error setting volume_bandwidth_qos_mode: %s", err), "(Data) ibm_is_instance_template", "read", "set-volume_bandwidth_qos_mode").GetDiag()
}
}

if instanceTemplate.VPC != nil {
vpcInf := instanceTemplate.VPC
Expand Down
30 changes: 30 additions & 0 deletions ibm/service/vpc/data_source_ibm_is_instance_template_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,36 @@ func TestAccIBMISInstanceTemplate_dataBasic(t *testing.T) {
},
})
}

func TestAccIBMISInstanceTemplate_QoS(t *testing.T) {
randInt := acctest.RandIntRange(600, 700)
publicKey := strings.TrimSpace(`
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQ+WiiUR1Jg3oGSmB/2//GJ3XnotriBiGN6t3iwGces6sUsvRkza1t0Mf05DKZxC/zp0WvDTvbit2gTkF9sD37OZSn5aCJk1F5URk/JNPmz25ZogkICFL4OUfhrE3mnyKio6Bk1JIEIypR5PRtGxY9vFDUfruADDLfRi+dGwHF6U9RpvrDRo3FNtI8T0GwvWwFE7bg63vLz65CjYY5XqH9z/YWz/asH6BKumkwiphLGhuGn03+DV6DkIZqr3Oh13UDjMnTdgv1y/Kou5UM3CK1dVsmLRXPEf2KUWUq1EwRfrJXkPOrBwn8to+Yydo57FgrRM9Qw8uzvKmnVxfKW6iG3oSGA0L6ROuCq1lq0MD8ySLd56+d1ftSDaUq+0/Yt9vK3olzVP0/iZobD7chbGqTLMCzL4/CaIUR/UmX08EA0Oh0DdyAdj3UUNETAj3W8gBrV6xLR7fZAJ8roX2BKb4K8Ed3YqzgiY0zgjqvpBYl9xZl0jgVX0qMFaEa6+CeGI8= root@ffd8363b1226
`)
vpcName := fmt.Sprintf("testvpc%d", randInt)
subnetName := fmt.Sprintf("testsubnet%d", randInt)
templateName := fmt.Sprintf("testtemplate%d", randInt)
sshKeyName := fmt.Sprintf("testsshkey%d", randInt)
resource.Test(t, resource.TestCase{
PreCheck: func() { acc.TestAccPreCheck(t) },
Providers: acc.TestAccProviders,
CheckDestroy: testAccCheckIBMISInstanceGroupDestroy,
Steps: []resource.TestStep{
{
Config: testAccCheckIBMISInstanceTemplateDConfig(vpcName, subnetName, sshKeyName, publicKey, templateName),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr(
"data.ibm_is_instance_template.instance_template_data", "name", templateName),
resource.TestCheckResourceAttrSet(
"data.ibm_is_instance_template.instance_template_data", "availability_policy_host_failure"),
resource.TestCheckResourceAttrSet(
"data.ibm_is_instance_template.instance_template_data", "volume_bandwidth_qos_mode"),
),
},
},
})
}

func TestAccIBMISInstanceTemplateDatasourceCluster(t *testing.T) {
randInt := acctest.RandIntRange(600, 700)
publicKey := strings.TrimSpace(`
Expand Down
Loading
Loading