From 9b3d0cb4e22daf3be87324f2873a6c05c0d45257 Mon Sep 17 00:00:00 2001 From: Mahesh N Date: Fri, 13 Dec 2024 18:38:23 +0530 Subject: [PATCH 1/5] Update storage controller --- .../instance_storage_controller.yaml | 6 +++--- go.mod | 2 +- go.sum | 6 ++++++ ..._source_instance_storage_controller_test.go | 2 +- .../instance_storage_controller_data_source.go | 18 ++++-------------- .../data_source_instance_storage_controller.go | 10 +++++----- internal/resources/data_source_layout.go | 2 +- 7 files changed, 21 insertions(+), 25 deletions(-) diff --git a/acc-testcases/data-sources/instance_storage_controller.yaml b/acc-testcases/data-sources/instance_storage_controller.yaml index 0cc1f129..c354a748 100644 --- a/acc-testcases/data-sources/instance_storage_controller.yaml +++ b/acc-testcases/data-sources/instance_storage_controller.yaml @@ -1,6 +1,6 @@ acc: - config: | - instance_id = 23989 - controller_type = "scsi" + layout_id = 376 + controller_name = "ide" bus_number = 0 - interface_number = 3 + interface_number = 1 diff --git a/go.mod b/go.mod index 6432bad5..dba233ef 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/HewlettPackard/hpegl-vmaas-terraform-resources go 1.21 require ( - github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.17 + github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213130408-0ef78df50baf github.com/golang/mock v1.6.0 github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 github.com/hashicorp/terraform-plugin-docs v0.9.0 diff --git a/go.sum b/go.sum index 2f721cae..cf270ab3 100644 --- a/go.sum +++ b/go.sum @@ -2,6 +2,12 @@ dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.17 h1:X/NkYLOinn3u2y3orIPI1yFEzcmPVtqn3SSI8cpIWok= github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.17/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213102116-07d97696f645 h1:gqVEx3s68BSVA+0D9iATyA/cLpSdpxSRgP3CrTS42Wo= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213102116-07d97696f645/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213123237-89bb2c577d2b h1:ESJnwacyY5c5JjPI5ZBr3Qodek0WqK8LS+oqNd+PHqU= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213123237-89bb2c577d2b/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213130408-0ef78df50baf h1:tg3WLhj0VXRDAI4IVGuRqH4KiluvCJszkFOWqF2xWp8= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213130408-0ef78df50baf/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= diff --git a/internal/acceptance_test/data_source_instance_storage_controller_test.go b/internal/acceptance_test/data_source_instance_storage_controller_test.go index 63176a62..c4b204ab 100644 --- a/internal/acceptance_test/data_source_instance_storage_controller_test.go +++ b/internal/acceptance_test/data_source_instance_storage_controller_test.go @@ -21,7 +21,7 @@ func TestAccDataSourceInstanceStorageController(t *testing.T) { Cfg: cfg, } - return iClient.GetStorageControllerMount(getAccContext(), toInt(attr["instance_id"]), attr["controller_type"], toInt(attr["bus_number"]), toInt(attr["interface_number"])) + return iClient.GetStorageControllerMount(getAccContext(), attr["layout_id"], attr["controller_name"], toInt(attr["bus_number"]), toInt(attr["interface_number"])) }, } diff --git a/internal/cmp/instance_storage_controller_data_source.go b/internal/cmp/instance_storage_controller_data_source.go index a1efb3a1..d2ff1077 100644 --- a/internal/cmp/instance_storage_controller_data_source.go +++ b/internal/cmp/instance_storage_controller_data_source.go @@ -4,9 +4,7 @@ package cmp import ( "context" - "fmt" "log" - "slices" "strings" "github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk/pkg/client" @@ -24,11 +22,8 @@ func newInstanceStorageController(instanceClient *client.InstancesAPIService) *i func (i *instanceStorageController) Read(ctx context.Context, d *utils.Data, meta interface{}) error { setMeta(meta, i.iClient.Client) log.Printf("[DEBUG] Get Instance Storage Controller") - instanceID := d.GetInt("instance_id") - if instanceID == 0 { - return nil - } - controllerType := d.GetString("controller_type") + layoutID := d.GetString("layout_id") + controllerName := d.GetString("controller_name") busNumber := d.GetInt("bus_number") unitNumber := d.GetInt("interface_number") @@ -36,13 +31,8 @@ func (i *instanceStorageController) Read(ctx context.Context, d *utils.Data, met if err := d.Error(); err != nil { return err } - controllerType = strings.TrimSpace(strings.ToLower(controllerType)) - supportedControllerType := []string{"ide", "scsi"} - if !slices.Contains(supportedControllerType, controllerType) { - err := fmt.Errorf("storage controller '%s' is not supported", controllerType) - return err - } - controllerMount, err := i.iClient.GetStorageControllerMount(ctx, instanceID, controllerType, busNumber, unitNumber) + controllerName = strings.TrimSpace(strings.ToLower(controllerName)) + controllerMount, err := i.iClient.GetStorageControllerMount(ctx, layoutID, controllerName, busNumber, unitNumber) if err != nil { return err } diff --git a/internal/resources/data_source_instance_storage_controller.go b/internal/resources/data_source_instance_storage_controller.go index a27c2a53..b78eb0ca 100644 --- a/internal/resources/data_source_instance_storage_controller.go +++ b/internal/resources/data_source_instance_storage_controller.go @@ -14,15 +14,15 @@ import ( func ReadInstanceStorageController() *schema.Resource { return &schema.Resource{ Schema: map[string]*schema.Schema{ - "instance_id": { - Type: schema.TypeInt, + "layout_id": { + Type: schema.TypeString, Required: true, - Description: "Unique ID to identify an instance", + Description: "The layout ID of an instance.", }, - "controller_type": { + "controller_name": { Type: schema.TypeString, Required: true, - Description: "The storage controller name displayed in an instance. Supported values are `IDE`, `SCSI`", + Description: "The controller name displayed in an instance storage controller section.", }, "bus_number": { Type: schema.TypeInt, diff --git a/internal/resources/data_source_layout.go b/internal/resources/data_source_layout.go index 4460d9af..019bf293 100644 --- a/internal/resources/data_source_layout.go +++ b/internal/resources/data_source_layout.go @@ -29,7 +29,7 @@ func LayoutData() *schema.Resource { ReadContext: layoutReadContext, Description: `The ` + DSLayout + ` data source can be used to discover the ID of a hpegl vmaas layout. This can then be used with resources or data sources that require a ` + DSLayout + `, - such as the ` + ResInstance + ` resource.`, + such as the ` + ResInstance + ` resource or ` + DSInstanceStorageController + ` datasource.`, SchemaVersion: 0, StateUpgraders: nil, Importer: &schema.ResourceImporter{ From ba85a72c49a96a2cccc0bc4b0dd52edf619b4b19 Mon Sep 17 00:00:00 2001 From: Mahesh N Date: Tue, 17 Dec 2024 12:23:12 +0530 Subject: [PATCH 2/5] update description and controller data source --- .../data-source.tf | 8 ++------ internal/resources/resource_instances_helper.go | 6 +++--- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf b/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf index 43039a37..035ebaab 100644 --- a/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf +++ b/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf @@ -1,12 +1,8 @@ # (C) Copyright 2024 Hewlett Packard Enterprise Development LP -variable "instance_id" { - type = number - default = 0 -} data "hpegl_vmaas_instance_storage_controller" "scsi3" { - instance_id = var.instance_id - controller_type = "scsi" + layout_id = data.hpegl_vmaas_layout.vmware.id + controller_name = "SCSI VMware Paravirtual" bus_number = 0 interface_number = 3 } \ No newline at end of file diff --git a/internal/resources/resource_instances_helper.go b/internal/resources/resource_instances_helper.go index bad0a476..5a8d0eb7 100644 --- a/internal/resources/resource_instances_helper.go +++ b/internal/resources/resource_instances_helper.go @@ -153,8 +153,8 @@ func getInstanceDefaultSchema(isClone bool) *schema.Resource { Type: schema.TypeString, Optional: true, Description: `Storage controller ID can be obtained from hpegl_vmaas_instance_storage_controller - data source.`, - DiffSuppressFunc: utils.SkipEmptyField(), + data source. Can not be customized for the first volume. This field can not be updated once volume is created.`, + DiffSuppressFunc: utils.SkipField(), }, "id": { Computed: true, @@ -418,7 +418,7 @@ func instanceHelperUpdateContext( // Wait for the status to be running updateStateConf := resource.StateChangeConf{ Delay: instanceUpdateRetryDelay, - Pending: []string{utils.StateResizing, utils.StateStopping, utils.StateSuspending, utils.StateRestarting}, + Pending: []string{utils.StateResizing, utils.StateStopping, utils.StateSuspending, utils.StateRestarting, utils.StateUnknown}, Target: []string{utils.StateRunning, utils.StateStopped, utils.StateSuspended}, Timeout: instanceUpdateRetryTimeout, MinTimeout: instanceUpdateRetryMinTimeout, From 76cf1f9362c375c130bb9b509a6cfbe4f743c112 Mon Sep 17 00:00:00 2001 From: Mahesh N Date: Mon, 6 Jan 2025 17:11:24 +0530 Subject: [PATCH 3/5] Update go-sdk --- go.mod | 2 +- go.sum | 10 ++-------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index dba233ef..3561c4a7 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/HewlettPackard/hpegl-vmaas-terraform-resources go 1.21 require ( - github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213130408-0ef78df50baf + github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18 github.com/golang/mock v1.6.0 github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 github.com/hashicorp/terraform-plugin-docs v0.9.0 diff --git a/go.sum b/go.sum index cf270ab3..8b691751 100644 --- a/go.sum +++ b/go.sum @@ -1,13 +1,7 @@ dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.17 h1:X/NkYLOinn3u2y3orIPI1yFEzcmPVtqn3SSI8cpIWok= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.17/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213102116-07d97696f645 h1:gqVEx3s68BSVA+0D9iATyA/cLpSdpxSRgP3CrTS42Wo= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213102116-07d97696f645/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213123237-89bb2c577d2b h1:ESJnwacyY5c5JjPI5ZBr3Qodek0WqK8LS+oqNd+PHqU= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213123237-89bb2c577d2b/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213130408-0ef78df50baf h1:tg3WLhj0VXRDAI4IVGuRqH4KiluvCJszkFOWqF2xWp8= -github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18-0.20241213130408-0ef78df50baf/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18 h1:1EauKKdCyjU07ndZSo+slU2WnkY7QvR5NZsKRRSlpF0= +github.com/HewlettPackard/hpegl-vmaas-cmp-go-sdk v0.1.18/go.mod h1:tsKOAAbEQnpXAzqjcZUGzRiVp9QfRViKoTOdIltIMFI= github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= From f6d5956db04721f998e7c0c712784d7795e3ec93 Mon Sep 17 00:00:00 2001 From: Mahesh N Date: Mon, 6 Jan 2025 17:42:19 +0530 Subject: [PATCH 4/5] update net and crypto pkg --- .../data-source.tf | 4 ++-- .../hpegl_vmaas_instance/all_options.tf | 9 ++++++++- go.mod | 8 ++++---- go.sum | 20 +++++++++---------- ...data_source_instance_storage_controller.go | 2 +- .../resources/resource_instances_helper.go | 2 +- 6 files changed, 26 insertions(+), 19 deletions(-) diff --git a/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf b/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf index 035ebaab..d181485d 100644 --- a/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf +++ b/examples/data-sources/hpegl_vmaas_instance_storage_controller/data-source.tf @@ -1,8 +1,8 @@ # (C) Copyright 2024 Hewlett Packard Enterprise Development LP -data "hpegl_vmaas_instance_storage_controller" "scsi3" { +data "hpegl_vmaas_instance_storage_controller" "scsi_0" { layout_id = data.hpegl_vmaas_layout.vmware.id controller_name = "SCSI VMware Paravirtual" bus_number = 0 - interface_number = 3 + interface_number = 0 } \ No newline at end of file diff --git a/examples/resources/hpegl_vmaas_instance/all_options.tf b/examples/resources/hpegl_vmaas_instance/all_options.tf index 45e63ea2..f55b3845 100644 --- a/examples/resources/hpegl_vmaas_instance/all_options.tf +++ b/examples/resources/hpegl_vmaas_instance/all_options.tf @@ -27,7 +27,14 @@ resource "hpegl_vmaas_instance" "tf_instance" { size = 5 datastore_id = data.hpegl_vmaas_datastore.c_3par.id storage_type = data.hpegl_vmaas_instance_disk_type.vmware_thin.id - controller = data.hpegl_vmaas_instance_storage_controller.scsi3.id + controller = data.hpegl_vmaas_instance_storage_controller.scsi_0.id + } + volume { + name = "data_vol" + size = 5 + datastore_id = data.hpegl_vmaas_datastore.c_3par.id + storage_type = data.hpegl_vmaas_instance_disk_type.vmware_thin.id + controller = data.hpegl_vmaas_instance_storage_controller.scsi_0.id } labels = ["test_label"] diff --git a/go.mod b/go.mod index 3561c4a7..414fc21f 100644 --- a/go.mod +++ b/go.mod @@ -81,12 +81,12 @@ require ( github.com/zclconf/go-cty v1.14.2 // indirect go.uber.org/atomic v1.9.0 // indirect go.uber.org/multierr v1.9.0 // indirect - golang.org/x/crypto v0.24.0 // indirect + golang.org/x/crypto v0.31.0 // indirect golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc // indirect golang.org/x/mod v0.17.0 // indirect - golang.org/x/net v0.25.0 // indirect - golang.org/x/sys v0.21.0 // indirect - golang.org/x/text v0.16.0 // indirect + golang.org/x/net v0.33.0 // indirect + golang.org/x/sys v0.28.0 // indirect + golang.org/x/text v0.21.0 // indirect golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect google.golang.org/appengine v1.6.8 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f // indirect diff --git a/go.sum b/go.sum index 8b691751..343666f8 100644 --- a/go.sum +++ b/go.sum @@ -265,8 +265,8 @@ golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= -golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= +golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U= +golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc h1:ao2WRsKSzW6KuUY9IWPwWahcHCgR0s52IfwutMfEbdM= golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= @@ -282,15 +282,15 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= -golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= +golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= +golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ= +golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -310,8 +310,8 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= -golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= +golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= @@ -327,8 +327,8 @@ golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo= +golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= diff --git a/internal/resources/data_source_instance_storage_controller.go b/internal/resources/data_source_instance_storage_controller.go index b78eb0ca..bfe37a68 100644 --- a/internal/resources/data_source_instance_storage_controller.go +++ b/internal/resources/data_source_instance_storage_controller.go @@ -32,7 +32,7 @@ func ReadInstanceStorageController() *schema.Resource { "interface_number": { Type: schema.TypeInt, Required: true, - Description: "The interface number to be allocated", + Description: "The interface number to be allocated. Enter `0` to automatically pick the next available interface number.", }, }, ReadContext: readInstanceStorageControllerContext, diff --git a/internal/resources/resource_instances_helper.go b/internal/resources/resource_instances_helper.go index 5a8d0eb7..1c1a91f8 100644 --- a/internal/resources/resource_instances_helper.go +++ b/internal/resources/resource_instances_helper.go @@ -418,7 +418,7 @@ func instanceHelperUpdateContext( // Wait for the status to be running updateStateConf := resource.StateChangeConf{ Delay: instanceUpdateRetryDelay, - Pending: []string{utils.StateResizing, utils.StateStopping, utils.StateSuspending, utils.StateRestarting, utils.StateUnknown}, + Pending: []string{utils.StateResizing, utils.StateStopping, utils.StateSuspending, utils.StateRestarting}, Target: []string{utils.StateRunning, utils.StateStopped, utils.StateSuspended}, Timeout: instanceUpdateRetryTimeout, MinTimeout: instanceUpdateRetryMinTimeout, From 6f9380b7e5c0900d02277b7a854e8a23ece3d059 Mon Sep 17 00:00:00 2001 From: Mahesh N Date: Mon, 6 Jan 2025 17:54:38 +0530 Subject: [PATCH 5/5] update interface --- internal/resources/data_source_instance_storage_controller.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/resources/data_source_instance_storage_controller.go b/internal/resources/data_source_instance_storage_controller.go index bfe37a68..fc8b67b2 100644 --- a/internal/resources/data_source_instance_storage_controller.go +++ b/internal/resources/data_source_instance_storage_controller.go @@ -31,8 +31,8 @@ func ReadInstanceStorageController() *schema.Resource { }, "interface_number": { Type: schema.TypeInt, - Required: true, - Description: "The interface number to be allocated. Enter `0` to automatically pick the next available interface number.", + Optional: true, + Description: "The interface number to be allocated. When not provided, the interface number is automatically allocated.", }, }, ReadContext: readInstanceStorageControllerContext,