From d60048b88bd1f1c759b9110a65416586d9deb853 Mon Sep 17 00:00:00 2001 From: Sergey Shubin svs1370 Date: Wed, 17 Mar 2021 15:39:52 +0300 Subject: [PATCH] Fix schema updates for Image and ViNS data sources --- decort/data_source_image.go | 20 ++++++++++---------- decort/data_source_vins.go | 23 +++++++---------------- 2 files changed, 17 insertions(+), 26 deletions(-) diff --git a/decort/data_source_image.go b/decort/data_source_image.go index 9e8f682..4825a84 100644 --- a/decort/data_source_image.go +++ b/decort/data_source_image.go @@ -38,19 +38,19 @@ import ( func dataSourceImageRead(d *schema.ResourceData, m interface{}) error { name := d.Get("name").(string) // rg_id, rgid_set := d.GetOk("rg_id") - account_id, account_set := d.GetOk("account_id") + accId, accSet := d.GetOk("account_id") controller := m.(*ControllerCfg) url_values := &url.Values{} - if account_set { - url_values.Add("accountId", fmt.Sprintf("%d", account_id.(int))) + if accSet { + url_values.Add("accountId", fmt.Sprintf("%d", accId.(int))) } body_string, err := controller.decortAPICall("POST", ImagesListAPI, url_values) if err != nil { return err } - log.Debugf("dataSourceImageRead: ready to decode response body from %q", ImagesListAPI) + log.Debugf("dataSourceImageRead: ready to decode response body from %s", ImagesListAPI) model := ImagesListResp{} err = json.Unmarshal([]byte(body_string), &model) if err != nil { @@ -62,7 +62,7 @@ func dataSourceImageRead(d *schema.ResourceData, m interface{}) error { for index, item := range model { // need to match Image by name if item.Name == name { - log.Printf("dataSourceImageRead: index %d, matched name %q", index, item.Name) + log.Printf("dataSourceImageRead: index %d, matched name %s", index, item.Name) d.SetId(fmt.Sprintf("%d", item.ID)) d.Set("account_id", item.AccountID) d.Set("arch", item.Arch) @@ -75,7 +75,7 @@ func dataSourceImageRead(d *schema.ResourceData, m interface{}) error { } } - return fmt.Errorf("Cannot find OS Image name %q", name) + return fmt.Errorf("Cannot find Image name %s", name) } func dataSourceImage() *schema.Resource { @@ -93,7 +93,7 @@ func dataSourceImage() *schema.Resource { "name": { Type: schema.TypeString, Required: true, - Description: "Name of the OS image to locate. This parameter is case sensitive.", + Description: "Name of the image to locate. This parameter is case sensitive.", }, "account_id": { @@ -106,11 +106,11 @@ func dataSourceImage() *schema.Resource { "arch": { Type: schema.TypeString, Computed: true, - Description: "Binary architecture this image is created for.", + Description: "Binary architecture of this image.", }, "sep_id": { - Type: schema.TypeString, + Type: schema.TypeInt, Computed: true, Description: "Storage end-point provider serving this image.", }, @@ -138,7 +138,7 @@ func dataSourceImage() *schema.Resource { "status": { Type: schema.TypeString, Computed: true, - Description: "Current model status of this disk.", + Description: "Current model status of this image.", }, }, } diff --git a/decort/data_source_vins.go b/decort/data_source_vins.go index 33449cd..91a4051 100644 --- a/decort/data_source_vins.go +++ b/decort/data_source_vins.go @@ -40,7 +40,7 @@ import ( func flattenVins(d *schema.ResourceData, vins_facts string) error { // NOTE: this function modifies ResourceData argument - as such it should never be called // from resourceVinsExists(...) method - log.Debugf("flattenVins: ready to decode response body from API %s", vins_facts) + // log.Debugf("flattenVins: ready to decode response body from API %s", vins_facts) vinsRecord := VinsRecord{} err := json.Unmarshal([]byte(vins_facts), &vinsRecord) if err != nil { @@ -51,9 +51,9 @@ func flattenVins(d *schema.ResourceData, vins_facts string) error { vinsRecord.Name, vinsRecord.ID, vinsRecord.AccountID, vinsRecord.RgID) d.SetId(fmt.Sprintf("%d", vinsRecord.ID)) - d.Set("account_id", fmt.Sprintf("%d", vinsRecord.AccountID)) + d.Set("account_id", vinsRecord.AccountID) d.Set("account_name", vinsRecord.AccountName) - d.Set("rg_id", fmt.Sprintf("%d", vinsRecord.RgID)) + err = d.Set("rg_id", vinsRecord.RgID) d.Set("description", vinsRecord.Desc) d.Set("ipcidr", vinsRecord.IPCidr) @@ -63,27 +63,18 @@ func flattenVins(d *schema.ResourceData, vins_facts string) error { extNetID, idOk := value.Config["ext_net_id"] // NOTE: unknown numbers are unmarshalled to float64. This is by design! extNetIP, ipOk := value.Config["ext_net_ip"] if idOk && ipOk { - d.Set("ext_ip_addr", extNetIP.(string)) - d.Set("ext_net_id", fmt.Sprintf("%d", int(extNetID.(float64)))) log.Debugf("flattenVins: ViNS ext_net_id=%d, ext_net_ip=%s", int(extNetID.(float64)), extNetIP.(string)) + d.Set("ext_ip_addr", extNetIP.(string)) + d.Set("ext_net_id", int(extNetID.(float64))) } else { return fmt.Errorf("Failed to unmarshal VNF GW Config - structure is invalid.") } - - /* log.Debugf("flattenVins: ready to decode Config string %s", value.Config) - vnfRec := &VnfGwConfigRecord{} - err = json.Unmarshal([]byte(value.Config), vnfRec) - if err != nil { - return err - } - d.Set("ext_ip_addr", vnfRec.ExtNetIP) - d.Set("ext_net_id", fmt.Sprintf("%d", vnfRec.ExtNetID)) - log.Debugf("flattenVins: ViNS ext_net_id=%d, ext_net_ip=%s", vnfRec.ExtNetID, vnfRec.ExtNetIP) - */ break } } + log.Debugf("flattenVins: EXTRA CHECK - schema rg_id=%d, ext_net_id=%d", d.Get("rg_id").(int), d.Get("ext_net_id").(int)) + return nil }