diff --git a/go.mod b/go.mod index f6b19672af7..825e1a5e3ea 100644 --- a/go.mod +++ b/go.mod @@ -18,7 +18,7 @@ require ( github.com/IBM/configuration-aggregator-go-sdk v0.0.2 github.com/IBM/container-registry-go-sdk v1.1.0 github.com/IBM/continuous-delivery-go-sdk/v2 v2.0.2 - github.com/IBM/event-notifications-go-admin-sdk v0.11.0 + github.com/IBM/event-notifications-go-admin-sdk v0.12.0 github.com/IBM/eventstreams-go-sdk v1.4.0 github.com/IBM/go-sdk-core v1.1.0 github.com/IBM/go-sdk-core/v3 v3.2.4 diff --git a/go.sum b/go.sum index 5c15135b71f..2b29d1a957b 100644 --- a/go.sum +++ b/go.sum @@ -119,8 +119,8 @@ github.com/IBM/container-registry-go-sdk v1.1.0 h1:sYyknIod8R4RJZQqAheiduP6wbSTp github.com/IBM/container-registry-go-sdk v1.1.0/go.mod h1:4TwsCnQtVfZ4Vkapy/KPvQBKFc3VOyUZYkwRU4FTPrs= github.com/IBM/continuous-delivery-go-sdk/v2 v2.0.2 h1:yCJJnSLNYkpF7v9n0tw8CpQbSy43E/NbFOopRf1PgoM= github.com/IBM/continuous-delivery-go-sdk/v2 v2.0.2/go.mod h1:2MajFr6C5H2jyj7qtjBxAPnZAjbPiK4CAJNk3fKNnPo= -github.com/IBM/event-notifications-go-admin-sdk v0.11.0 h1:X/GhBE6dGRx8s79xYrdmv88ljD/8hSCyh9jMSUPCcCc= -github.com/IBM/event-notifications-go-admin-sdk v0.11.0/go.mod h1:za2mdfBpox6hdsKaYTbE5ooCv2im8BYPq5yuKc7x5Ao= +github.com/IBM/event-notifications-go-admin-sdk v0.12.0 h1:sQzXh/e0gTsz1obYUgCSHKQhNE025lH25+11ICP5q90= +github.com/IBM/event-notifications-go-admin-sdk v0.12.0/go.mod h1:za2mdfBpox6hdsKaYTbE5ooCv2im8BYPq5yuKc7x5Ao= github.com/IBM/eventstreams-go-sdk v1.4.0 h1:yS/Ns29sBOe8W2tynQmz9HTKqQZ0ckse4Py5Oy/F2rM= github.com/IBM/eventstreams-go-sdk v1.4.0/go.mod h1:2tuAxaYLctfqfr5jvyqSrxxEQGMwYPm3yJGWSj85YVQ= github.com/IBM/go-sdk-core v1.1.0 h1:pV73lZqr9r1xKb3h08c1uNG3AphwoV5KzUzhS+pfEqY= diff --git a/ibm/provider/provider.go b/ibm/provider/provider.go index f758b20e4ca..f1baf9d95c3 100644 --- a/ibm/provider/provider.go +++ b/ibm/provider/provider.go @@ -936,6 +936,7 @@ func Provider() *schema.Provider { "ibm_en_metrics": eventnotification.DataSourceIBMEnMetrics(), "ibm_en_smtp_allowed_ips": eventnotification.DataSourceIBMEnSMTPAllowedIps(), "ibm_en_webhook_template": eventnotification.DataSourceIBMEnWebhookTemplate(), + "ibm_en_subscription_scheduler": eventnotification.DataSourceIBMEnFCMSubscription(), // Added for Toolchain "ibm_cd_toolchain": cdtoolchain.DataSourceIBMCdToolchain(), @@ -1564,6 +1565,7 @@ func Provider() *schema.Provider { "ibm_en_slack_template": eventnotification.ResourceIBMEnSlackTemplate(), "ibm_en_smtp_setting": eventnotification.ResourceIBMEnSMTPSetting(), "ibm_en_webhook_template": eventnotification.ResourceIBMEnWebhookTemplate(), + "ibm_en_subscription_scheduler": eventnotification.ResourceIBMEnFCMSubscription(), // Added for Toolchain "ibm_cd_toolchain": cdtoolchain.ResourceIBMCdToolchain(), diff --git a/ibm/service/eventnotification/data_source_ibm_en_FCM_subscription.go b/ibm/service/eventnotification/data_source_ibm_en_FCM_subscription.go index f8327545278..ab5beb5a5a5 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_FCM_subscription.go +++ b/ibm/service/eventnotification/data_source_ibm_en_FCM_subscription.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -61,7 +63,9 @@ func DataSourceIBMEnFCMSubscription() *schema.Resource { func dataSourceIBMEnFCMSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -69,37 +73,45 @@ func dataSourceIBMEnFCMSubscriptionRead(context context.Context, d *schema.Resou getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf(" Error setting updated_at: %s", err), "(Data) ibm_en_subscription", "read") + return tfErr.GetDiag() } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting topic_id: %s", err), "(Data) ibm_en_subscription", "read") + return tfErr.GetDiag() } if result.From != nil { if err = d.Set("from", result.From); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting from %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting from: %s", err), "(Data) ibm_en_subscription", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_Webhook_subscription.go b/ibm/service/eventnotification/data_source_ibm_en_Webhook_subscription.go index 25ccc9c16c0..e75e6ac658d 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_Webhook_subscription.go +++ b/ibm/service/eventnotification/data_source_ibm_en_Webhook_subscription.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -87,7 +89,9 @@ func DataSourceIBMEnWebhookSubscription() *schema.Resource { func dataSourceIBMEnWebhookSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -95,37 +99,45 @@ func dataSourceIBMEnWebhookSubscriptionRead(context context.Context, d *schema.R getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting topic_id: %s", err), "(Data) ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } if result.Attributes != nil { if err = d.Set("attributes", enWebhookSubscriptionFlattenAttributes(result.Attributes)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting attributes %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting attributes: %s", err), "(Data) ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_apns.go b/ibm/service/eventnotification/data_source_ibm_en_destination_apns.go index 3fa2c72fb83..f37a018526a 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_apns.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_apns.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -137,7 +138,9 @@ func DataSourceIBMEnAPNSDestination() *schema.Resource { func dataSourceIBMEnAPNSDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_ios", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -145,59 +148,71 @@ func dataSourceIBMEnAPNSDestinationRead(context context.Context, d *schema.Resou options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_ios", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } if err = d.Set("certificate_content_type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting certificate content type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting certificate content type: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } if err = d.Set("certificate", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting certifiacte: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting certifiacte: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enAPNSDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_ios", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_ce.go b/ibm/service/eventnotification/data_source_ibm_en_destination_ce.go index 1f710d56c3e..9dfae44b2b7 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_ce.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_ce.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -133,7 +134,9 @@ func DataSourceIBMEnCodeEngineDestination() *schema.Resource { func dataSourceIBMEnCodeEngineDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_ce", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -141,51 +144,61 @@ func dataSourceIBMEnCodeEngineDestinationRead(context context.Context, d *schema options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_ce", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enCodeEngineDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_ce", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_chrome.go b/ibm/service/eventnotification/data_source_ibm_en_destination_chrome.go index e0d0ecdbb34..6464460952d 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_chrome.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_chrome.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -108,7 +109,9 @@ func DataSourceIBMEnChromeDestination() *schema.Resource { func dataSourceIBMEnChromeDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_chrome", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -116,51 +119,61 @@ func dataSourceIBMEnChromeDestinationRead(context context.Context, d *schema.Res options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_chrome", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description:: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enChromeDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf(" Error setting subscription_name: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_cos.go b/ibm/service/eventnotification/data_source_ibm_en_destination_cos.go index 2c682616ab7..41670b06360 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_cos.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_cos.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -107,7 +108,9 @@ func DataSourceIBMEnCOSDestination() *schema.Resource { func dataSourceIBMEnCOSDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -115,51 +118,61 @@ func dataSourceIBMEnCOSDestinationRead(context context.Context, d *schema.Resour options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enCOSDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_cos", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_custom_email.go b/ibm/service/eventnotification/data_source_ibm_en_destination_custom_email.go index 26da1ae7e05..3422ad4da76 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_custom_email.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_custom_email.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -97,7 +98,9 @@ func DataSourceIBMEnCustomEmailDestination() *schema.Resource { func dataSourceIBMEnCustomEmailDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -105,51 +108,61 @@ func dataSourceIBMEnCustomEmailDestinationRead(context context.Context, d *schem options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enSlackDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_custom_sms.go b/ibm/service/eventnotification/data_source_ibm_en_destination_custom_sms.go index c0124b2c286..381965a3416 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_custom_sms.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_custom_sms.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -75,7 +76,9 @@ func DataSourceIBMEnCustomSMSDestination() *schema.Resource { func dataSourceIBMEnCustomSMSDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -83,51 +86,61 @@ func dataSourceIBMEnCustomSMSDestinationRead(context context.Context, d *schema. options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enCustomSMSDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf(" Error setting updated_at: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_fcm.go b/ibm/service/eventnotification/data_source_ibm_en_destination_fcm.go index 87f60d10022..56c8b443152 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_fcm.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_fcm.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -112,7 +113,9 @@ func DataSourceIBMEnFCMDestination() *schema.Resource { func dataSourceIBMEnFCMDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_android", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -120,51 +123,61 @@ func dataSourceIBMEnFCMDestinationRead(context context.Context, d *schema.Resour options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_android", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enFCMDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_android", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_firefox.go b/ibm/service/eventnotification/data_source_ibm_en_destination_firefox.go index cc8359af77e..62cb1a4996f 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_firefox.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_firefox.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -102,7 +103,9 @@ func DataSourceIBMEnFirefoxDestination() *schema.Resource { func dataSourceIBMEnFirefoxDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_firefox", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -110,51 +113,61 @@ func dataSourceIBMEnFirefoxDestinationRead(context context.Context, d *schema.Re options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_firefox", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enFirefoxDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_firefox", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_huawei.go b/ibm/service/eventnotification/data_source_ibm_en_destination_huawei.go index a21a5d98392..21259fbd267 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_huawei.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_huawei.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -107,7 +108,9 @@ func DataSourceIBMEnHuaweiDestination() *schema.Resource { func dataSourceIBMEnHuaweiDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_huawei", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -115,51 +118,61 @@ func dataSourceIBMEnHuaweiDestinationRead(context context.Context, d *schema.Res options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_huawei", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enHuaweiDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count %s", err), "(Data) ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_msteams.go b/ibm/service/eventnotification/data_source_ibm_en_destination_msteams.go index 186c0875412..53b44fbdf68 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_msteams.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_msteams.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -97,7 +98,9 @@ func DataSourceIBMEnMSTeamsDestination() *schema.Resource { func dataSourceIBMEnMSTeamsDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_msteams", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -105,51 +108,61 @@ func dataSourceIBMEnMSTeamsDestinationRead(context context.Context, d *schema.Re options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_msteams", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enMSTeamsDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_pagerduty.go b/ibm/service/eventnotification/data_source_ibm_en_destination_pagerduty.go index 789908463db..ca170bb2306 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_pagerduty.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_pagerduty.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -102,7 +103,9 @@ func DataSourceIBMEnPagerDutyDestination() *schema.Resource { func dataSourceIBMEnPagerDutyeDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_pagerduty", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -110,51 +113,61 @@ func dataSourceIBMEnPagerDutyeDestinationRead(context context.Context, d *schema options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_pagerduty", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enPagerDutyDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_safari.go b/ibm/service/eventnotification/data_source_ibm_en_destination_safari.go index a65b6fed58c..8970afa3413 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_safari.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_safari.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -127,7 +128,9 @@ func DataSourceIBMEnSafariDestination() *schema.Resource { func dataSourceIBMEnSafariDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_safari", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -135,51 +138,61 @@ func dataSourceIBMEnSafariDestinationRead(context context.Context, d *schema.Res options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_safari", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enSafariDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_servicenow.go b/ibm/service/eventnotification/data_source_ibm_en_destination_servicenow.go index 12ecc6dc478..3147e98c68f 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_servicenow.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_servicenow.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -117,7 +118,9 @@ func DataSourceIBMEnServiceNowDestination() *schema.Resource { func dataSourceIBMEnServiceNowDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_sn", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -125,25 +128,30 @@ func dataSourceIBMEnServiceNowDestinationRead(context context.Context, d *schema options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_sn", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { @@ -153,23 +161,27 @@ func dataSourceIBMEnServiceNowDestinationRead(context context.Context, d *schema if result.Config != nil { err = d.Set("config", enServiceNowDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf(" Error setting subscription_count: %s", err), "(Data) ibm_en_destination_safari", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_slack.go b/ibm/service/eventnotification/data_source_ibm_en_destination_slack.go index 8ea1b7ba7e0..9ee55b94bdb 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_slack.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_slack.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -107,7 +108,9 @@ func DataSourceIBMEnSlackDestination() *schema.Resource { func dataSourceIBMEnSlackDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -115,51 +118,61 @@ func dataSourceIBMEnSlackDestinationRead(context context.Context, d *schema.Reso options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting CollectFailedEvents: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } if result.Config != nil { err = d.Set("config", enSlackDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_slack", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destination_webhook.go b/ibm/service/eventnotification/data_source_ibm_en_destination_webhook.go index 4d454287107..ef0cd1f67db 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destination_webhook.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destination_webhook.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -118,7 +119,9 @@ func DataSourceIBMEnWebhookDestination() *schema.Resource { func dataSourceIBMEnWebhookDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destination_webhook", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} @@ -126,51 +129,56 @@ func dataSourceIBMEnWebhookDestinationRead(context context.Context, d *schema.Re options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("destination_id").(string)) - result, response, err := enClient.GetDestinationWithContext(context, options) + result, _, err := enClient.GetDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetDestination failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "(Data) ibm_en_destination_webhook", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } - // if err = d.Set("collect_failed_events", result.CollectFailedEvents); err != nil { - // return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) - // } - if result.Config != nil { err = d.Set("config", enWebhookDestinationFlattenConfig(*result.Config)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_destination_webhook", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_destinations.go b/ibm/service/eventnotification/data_source_ibm_en_destinations.go index b8f41731752..1fd3bfcdd5e 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_destinations.go +++ b/ibm/service/eventnotification/data_source_ibm_en_destinations.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -89,7 +90,9 @@ func DataSourceIBMEnDestinations() *schema.Resource { func dataSourceIBMEnDestinationsRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_destinations", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListDestinationsOptions{} @@ -111,12 +114,14 @@ func dataSourceIBMEnDestinationsRead(context context.Context, d *schema.Resource for { options.SetOffset(offset) - result, response, err := enClient.ListDestinationsWithContext(context, options) + result, _, err := enClient.ListDestinationsWithContext(context, options) destinationList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListDestinationsWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListDestinationsWithContext failed: %s", err.Error()), "(Data) ibm_en_destinations", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -133,12 +138,14 @@ func dataSourceIBMEnDestinationsRead(context context.Context, d *schema.Resource d.SetId(fmt.Sprintf("destinations/%s", *options.InstanceID)) if err = d.Set("total_count", flex.IntValue(destinationList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_destinations", "list") + return tfErr.GetDiag() } if destinationList.Destinations != nil { if err = d.Set("destinations", enFlattenDestinationsList(destinationList.Destinations)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destinations %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destinations: %s", err), "(Data) ibm_en_destinations", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_email_template.go b/ibm/service/eventnotification/data_source_ibm_en_email_template.go index f0b24c25421..fec1353f345 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_email_template.go +++ b/ibm/service/eventnotification/data_source_ibm_en_email_template.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -69,7 +70,9 @@ func DataSourceIBMEnEmailTemplate() *schema.Resource { func dataSourceIBMEnEmailTemplateRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_email_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetTemplateOptions{} @@ -77,40 +80,48 @@ func dataSourceIBMEnEmailTemplateRead(context context.Context, d *schema.Resourc options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("template_id").(string)) - result, response, err := enClient.GetTemplateWithContext(context, options) + result, _, err := enClient.GetTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetTemplate failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "(Data) ibm_en_email_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_email_template", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_email_template", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_email_template", "read") + return tfErr.GetDiag() } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_email_template", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at %s", err), "(Data) ibm_en_email_template", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count %s", err), "(Data) ibm_en_email_template", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_email_templates.go b/ibm/service/eventnotification/data_source_ibm_en_email_templates.go index a87c2d33140..e1076f1d26e 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_email_templates.go +++ b/ibm/service/eventnotification/data_source_ibm_en_email_templates.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -87,7 +88,9 @@ func DataSourceIBMEnTemplates() *schema.Resource { func dataSourceIBMEnEmailTemplatesRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_email_templates", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListTemplatesOptions{} @@ -109,12 +112,14 @@ func dataSourceIBMEnEmailTemplatesRead(context context.Context, d *schema.Resour for { options.SetOffset(offset) - result, response, err := enClient.ListTemplatesWithContext(context, options) + result, _, err := enClient.ListTemplatesWithContext(context, options) templateList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListTemplatesWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListTemplatesWithContext failed: %s", err.Error()), "(Data) ibm_en_email_templates", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -131,12 +136,14 @@ func dataSourceIBMEnEmailTemplatesRead(context context.Context, d *schema.Resour d.SetId(fmt.Sprintf("Templates/%s", *options.InstanceID)) if err = d.Set("total_count", flex.IntValue(templateList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_email_templates", "list") + return tfErr.GetDiag() } if templateList.Templates != nil { if err = d.Set("templates", enFlattentemplatesList(templateList.Templates)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting Templates %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting Templates: %s", err), "(Data) ibm_en_email_templates", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_integration.go b/ibm/service/eventnotification/data_source_ibm_en_integration.go index 33d12565098..b307a823540 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_integration.go +++ b/ibm/service/eventnotification/data_source_ibm_en_integration.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -70,7 +71,9 @@ func DataSourceIBMEnIntegration() *schema.Resource { func dataSourceIBMEnIntegrationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_integration", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetIntegrationOptions{} @@ -78,15 +81,18 @@ func dataSourceIBMEnIntegrationRead(context context.Context, d *schema.ResourceD options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("integration_id").(string)) - result, response, err := enClient.GetIntegrationWithContext(context, options) + result, _, err := enClient.GetIntegrationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetIntegration failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetIntegrationWithContext failed: %s", err.Error()), "(Data) ibm_en_integration", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_integration", "read") + return tfErr.GetDiag() } if result.Metadata != nil { @@ -94,7 +100,8 @@ func dataSourceIBMEnIntegrationRead(context context.Context, d *schema.ResourceD } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_integration", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_integration_cos.go b/ibm/service/eventnotification/data_source_ibm_en_integration_cos.go index b42f9b9e6cd..554c43b3392 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_integration_cos.go +++ b/ibm/service/eventnotification/data_source_ibm_en_integration_cos.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -70,7 +71,9 @@ func DataSourceIBMEnCOSIntegration() *schema.Resource { func dataSourceIBMEnCOSIntegrationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_integration_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetIntegrationOptions{} @@ -78,15 +81,18 @@ func dataSourceIBMEnCOSIntegrationRead(context context.Context, d *schema.Resour options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("integration_id").(string)) - result, response, err := enClient.GetIntegrationWithContext(context, options) + result, _, err := enClient.GetIntegrationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetIntegration failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetIntegrationWithContext failed: %s", err.Error()), "(Data) ibm_en_integration_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_integration_cos", "read") + return tfErr.GetDiag() } if result.Metadata != nil { @@ -94,7 +100,8 @@ func dataSourceIBMEnCOSIntegrationRead(context context.Context, d *schema.Resour } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_integration_cos", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_integrations.go b/ibm/service/eventnotification/data_source_ibm_en_integrations.go index f3bdb255fc7..8bb3f3c5b9e 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_integrations.go +++ b/ibm/service/eventnotification/data_source_ibm_en_integrations.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -66,7 +67,9 @@ func DataSourceIBMEnIntegrations() *schema.Resource { func dataSourceIBMEnIntegrationsRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_integrations", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListIntegrationsOptions{} @@ -88,12 +91,14 @@ func dataSourceIBMEnIntegrationsRead(context context.Context, d *schema.Resource for { options.SetOffset(offset) - result, response, err := enClient.ListIntegrationsWithContext(context, options) + result, _, err := enClient.ListIntegrationsWithContext(context, options) integrationList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListIntegrationsWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListIntegrationsWithContext failed: %s", err.Error()), "(Data) ibm_en_integrations", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -110,12 +115,14 @@ func dataSourceIBMEnIntegrationsRead(context context.Context, d *schema.Resource d.SetId(fmt.Sprintf("integrations/%s", *options.InstanceID)) if err = d.Set("total_count", flex.IntValue(integrationList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_integrations", "list") + return tfErr.GetDiag() } if integrationList.Integrations != nil { if err = d.Set("integrations", enFlattenIntegrationsList(integrationList.Integrations)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting integrations %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting integrations: %s", err), "(Data) ibm_en_integrations", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_slack_subscription.go b/ibm/service/eventnotification/data_source_ibm_en_slack_subscription.go index 387cd211287..fa9233f1dcb 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_slack_subscription.go +++ b/ibm/service/eventnotification/data_source_ibm_en_slack_subscription.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -93,7 +95,9 @@ func DataSourceIBMEnSlackSubscription() *schema.Resource { func dataSourceIBMEnSlackSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -101,37 +105,45 @@ func dataSourceIBMEnSlackSubscriptionRead(context context.Context, d *schema.Res getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetIntegrationWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting topic_id: %s", err), "(Data) ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } if result.Attributes != nil { if err = d.Set("attributes", enSlackSubscriptionFlattenAttributes(result.Attributes)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting attributes %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting attributes: %s", err), "(Data) ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_slack_template.go b/ibm/service/eventnotification/data_source_ibm_en_slack_template.go index 5e97a681574..d1fd69757ee 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_slack_template.go +++ b/ibm/service/eventnotification/data_source_ibm_en_slack_template.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -69,7 +70,9 @@ func DataSourceIBMEnSlackTemplate() *schema.Resource { func dataSourceIBMEnSlackTemplateRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_slack_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetTemplateOptions{} @@ -77,40 +80,48 @@ func dataSourceIBMEnSlackTemplateRead(context context.Context, d *schema.Resourc options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("template_id").(string)) - result, response, err := enClient.GetTemplateWithContext(context, options) + result, _, err := enClient.GetTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetTemplate failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "(Data) ibm_en_slack_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_coun: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_smtp_allowed_ips.go b/ibm/service/eventnotification/data_source_ibm_en_smtp_allowed_ips.go index 1176bb4926a..630a3ffe96b 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_smtp_allowed_ips.go +++ b/ibm/service/eventnotification/data_source_ibm_en_smtp_allowed_ips.go @@ -83,11 +83,6 @@ func dataSourceIBMEnSMTPAllowedIpsRead(context context.Context, d *schema.Resour } } - // if err = d.Set("subnets", flex.ToString(smtpAllowedIPs.Subnets)); err != nil { - // tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subnets: %s", err), "(Data) ibm_en_smtp_allowed_ips", "read") - // return tfErr.GetDiag() - // } - return nil } diff --git a/ibm/service/eventnotification/data_source_ibm_en_smtp_configuration.go b/ibm/service/eventnotification/data_source_ibm_en_smtp_configuration.go index 5d46cba3253..e7a9bbfd5c3 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_smtp_configuration.go +++ b/ibm/service/eventnotification/data_source_ibm_en_smtp_configuration.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -128,7 +129,9 @@ func DataSourceIBMEnSMTPConfiguration() *schema.Resource { func dataSourceIBMEnSMTPConfigurationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_configuration", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSMTPConfigurationOptions := &en.GetSMTPConfigurationOptions{} @@ -138,37 +141,45 @@ func dataSourceIBMEnSMTPConfigurationRead(context context.Context, d *schema.Res smtpConfiguration, _, err := eventNotificationsClient.GetSMTPConfigurationWithContext(context, getSMTPConfigurationOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "(Data) ibm_en_smtp_configuration", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSMTPConfigurationOptions.InstanceID, *getSMTPConfigurationOptions.ID)) if err = d.Set("name", smtpConfiguration.Name); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } if err = d.Set("description", smtpConfiguration.Description); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } if err = d.Set("domain", smtpConfiguration.Domain); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } config := []map[string]interface{}{} if smtpConfiguration.Config != nil { modelMap, err := dataSourceIBMEnSMTPConfigurationSMTPConfigToMap(smtpConfiguration.Config) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } config = append(config, modelMap) } if err = d.Set("config", config); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } if err = d.Set("updated_at", flex.DateTimeToString(smtpConfiguration.UpdatedAt)); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_slack_template", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_smtp_configurations.go b/ibm/service/eventnotification/data_source_ibm_en_smtp_configurations.go index 5b9662cafdf..6ba31b57257 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_smtp_configurations.go +++ b/ibm/service/eventnotification/data_source_ibm_en_smtp_configurations.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -76,7 +77,9 @@ func DataSourceIBMEnSMTPCOnfigurations() *schema.Resource { func dataSourceIBMEnSMTPConfigurationsRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_configurations", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListSMTPConfigurationsOptions{} @@ -98,12 +101,14 @@ func dataSourceIBMEnSMTPConfigurationsRead(context context.Context, d *schema.Re for { options.SetOffset(offset) - result, response, err := enClient.ListSMTPConfigurationsWithContext(context, options) + result, _, err := enClient.ListSMTPConfigurationsWithContext(context, options) smtpConfigurationList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListSMTPConfigurationsWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListSMTPConfigurationsWithContext failed: %s", err.Error()), "(Data) ibm_en_smtp_configurations", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -120,12 +125,14 @@ func dataSourceIBMEnSMTPConfigurationsRead(context context.Context, d *schema.Re d.SetId(fmt.Sprintf("SMTPConfigurations/%s", *options.InstanceID)) if err = d.Set("total_count", flex.IntValue(smtpConfigurationList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_smtp_configurations", "list") + return tfErr.GetDiag() } if smtpConfigurationList.SMTPConfigurations != nil { if err = d.Set("smtp_configurations", enFlattenSMTPConfigurationList(smtpConfigurationList.SMTPConfigurations)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting SMTPConfigurations %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting SMTPConfigurations: %s", err), "(Data) ibm_en_smtp_configurations", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_smtp_user.go b/ibm/service/eventnotification/data_source_ibm_en_smtp_user.go index 300d2efe767..67b8c53ef4c 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_smtp_user.go +++ b/ibm/service/eventnotification/data_source_ibm_en_smtp_user.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -72,7 +73,9 @@ func DataSourceIBMEnSMTPUser() *schema.Resource { func dataSourceIBMEnSMTPUserRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_user", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSMTPUserOptions := &en.GetSMTPUserOptions{} @@ -83,33 +86,41 @@ func dataSourceIBMEnSMTPUserRead(context context.Context, d *schema.ResourceData smtpUser, _, err := eventNotificationsClient.GetSMTPUserWithContext(context, getSMTPUserOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "(Data) ibm_en_smtp_user", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s/%s", *getSMTPUserOptions.InstanceID, *getSMTPUserOptions.ID, *getSMTPUserOptions.UserID)) if err = d.Set("smtp_config_id", smtpUser.SMTPConfigID); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_user", "read") + return tfErr.GetDiag() } if err = d.Set("description", smtpUser.Description); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_user", "read") + return tfErr.GetDiag() } if err = d.Set("domain", smtpUser.Domain); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_user", "read") + return tfErr.GetDiag() } if err = d.Set("username", smtpUser.Username); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_user", "read") + return tfErr.GetDiag() } if err = d.Set("created_at", flex.DateTimeToString(smtpUser.CreatedAt)); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_user", "read") + return tfErr.GetDiag() } if err = d.Set("updated_at", flex.DateTimeToString(smtpUser.UpdatedAt)); err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_user", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_smtp_users.go b/ibm/service/eventnotification/data_source_ibm_en_smtp_users.go index 72a31e39577..bbe2d8d03b0 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_smtp_users.go +++ b/ibm/service/eventnotification/data_source_ibm_en_smtp_users.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -91,7 +92,9 @@ func DataSourceIBMEnSMTPUsers() *schema.Resource { func dataSourceIBMEnSMTPUsersRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_users", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListSMTPUsersOptions{} @@ -114,12 +117,14 @@ func dataSourceIBMEnSMTPUsersRead(context context.Context, d *schema.ResourceDat for { options.SetOffset(offset) - result, response, err := enClient.ListSMTPUsersWithContext(context, options) + result, _, err := enClient.ListSMTPUsersWithContext(context, options) smtpuserList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListSMTPConfigurationsWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListSMTPUsersWithContext failed: %s", err.Error()), "(Data) ibm_en_smtp_users", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -136,12 +141,14 @@ func dataSourceIBMEnSMTPUsersRead(context context.Context, d *schema.ResourceDat d.SetId(fmt.Sprintf("SMTPConfigurations/%s", *options.InstanceID)) if err = d.Set("total_count", flex.IntValue(smtpuserList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_smtp_users", "list") + return tfErr.GetDiag() } if smtpuserList.Users != nil { if err = d.Set("smtp_users", enFlattenSMTPUsersList(smtpuserList.Users)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting SMTPConfigurations %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("SMTPUsers: %s", err), "(Data) ibm_en_smtp_users", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_source.go b/ibm/service/eventnotification/data_source_ibm_en_source.go index 70d5f8956ef..8d83b68eb30 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_source.go +++ b/ibm/service/eventnotification/data_source_ibm_en_source.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -57,7 +58,9 @@ func DataSourceIBMEnSource() *schema.Resource { func dataSourceIBMEnSourceRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_source", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSourceOptions{} @@ -65,29 +68,35 @@ func dataSourceIBMEnSourceRead(context context.Context, d *schema.ResourceData, options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("source_id").(string)) - result, response, err := enClient.GetSourceWithContext(context, options) + result, _, err := enClient.GetSourceWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetSource failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "(Data) ibm_en_source", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_source", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_source", "read") + return tfErr.GetDiag() } } if err = d.Set("enabled", result.Enabled); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting enabled flag: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting enabled flag: %s", err), "(Data) ibm_en_source", "read") + return tfErr.GetDiag() } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_source", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/data_source_ibm_en_sources.go b/ibm/service/eventnotification/data_source_ibm_en_sources.go index 0a283bd56fc..6c19ff8e1c0 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_sources.go +++ b/ibm/service/eventnotification/data_source_ibm_en_sources.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -86,7 +87,9 @@ func DataSourceIBMEnSources() *schema.Resource { func dataSourceIBMEnSourcesRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_users", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListSourcesOptions{} @@ -108,12 +111,14 @@ func dataSourceIBMEnSourcesRead(context context.Context, d *schema.ResourceData, for { options.SetOffset(offset) - result, response, err := enClient.ListSourcesWithContext(context, options) + result, _, err := enClient.ListSourcesWithContext(context, options) sourceList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListSourcesWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListSourcesWithContext failed: %s", err.Error()), "(Data) ibm_en_smtp_users", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -130,12 +135,14 @@ func dataSourceIBMEnSourcesRead(context context.Context, d *schema.ResourceData, d.SetId(fmt.Sprintf("Sources/%s", *options.InstanceID)) if err = d.Set("total_count", flex.IntValue(sourceList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_sources", "list") + return tfErr.GetDiag() } if sourceList.Sources != nil { if err = d.Set("sources", enFlattenSourcesList(sourceList.Sources)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting sources %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("SMTPUsers: %s", err), "(Data) ibm_en_sources", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_email.go b/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_email.go index 0af2bab363f..b36cc3fa9f0 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_email.go +++ b/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_email.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -179,7 +181,9 @@ func DataSourceIBMEnCustomEmailSubscription() *schema.Resource { func dataSourceIBMEnCustomEmailSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -187,37 +191,45 @@ func dataSourceIBMEnCustomEmailSubscriptionRead(context context.Context, d *sche getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting topic_id: %s", err), "(Data) ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } if result.Attributes != nil { if err = d.Set("attributes", enCustomEmailSubscriptionFlattenAttributes(result.Attributes)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting attributes %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf(" Error setting attributes %s", err), "(Data) ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_sms.go b/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_sms.go index 5846d963f72..41ef577ec34 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_sms.go +++ b/ibm/service/eventnotification/data_source_ibm_en_subscription_custom_sms.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -139,7 +141,9 @@ func DataSourceIBMEnCustomSMSSubscription() *schema.Resource { func dataSourceIBMEnCustomSMSSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -147,37 +151,45 @@ func dataSourceIBMEnCustomSMSSubscriptionRead(context context.Context, d *schema getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } if result.Attributes != nil { if err = d.Set("attributes", enCustomSMSSubscriptionFlattenAttributes(result.Attributes)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting attributes %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting destination_id: %s", err), "(Data) ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_subscription_email.go b/ibm/service/eventnotification/data_source_ibm_en_subscription_email.go index 702e955425d..2cca9ca31e2 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_subscription_email.go +++ b/ibm/service/eventnotification/data_source_ibm_en_subscription_email.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -161,7 +163,9 @@ func DataSourceIBMEnEmailSubscription() *schema.Resource { func dataSourceIBMEnEmailSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -169,37 +173,45 @@ func dataSourceIBMEnEmailSubscriptionRead(context context.Context, d *schema.Res getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription_email", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_email", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_email", "read") + return tfErr.GetDiag() } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_email", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_email", "read") + return tfErr.GetDiag() } if result.Attributes != nil { if err = d.Set("attributes", enEmailSubscriptionFlattenAttributes(result.Attributes)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting attributes %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_email", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_subscription_sms.go b/ibm/service/eventnotification/data_source_ibm_en_subscription_sms.go index 171c80d0e0f..f12682a665a 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_subscription_sms.go +++ b/ibm/service/eventnotification/data_source_ibm_en_subscription_sms.go @@ -6,8 +6,10 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" + "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -139,7 +141,9 @@ func DataSourceIBMEnSMSSubscription() *schema.Resource { func dataSourceIBMEnSMSSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscription_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSubscriptionOptions := &en.GetSubscriptionOptions{} @@ -147,37 +151,46 @@ func dataSourceIBMEnSMSSubscriptionRead(context context.Context, d *schema.Resou getSubscriptionOptions.SetInstanceID(d.Get("instance_guid").(string)) getSubscriptionOptions.SetID(d.Get("subscription_id").(string)) - result, response, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) + result, _, err := enClient.GetSubscriptionWithContext(context, getSubscriptionOptions) if err != nil { - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "(Data) ibm_en_subscription_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *getSubscriptionOptions.InstanceID, *getSubscriptionOptions.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_subscription_sms", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_subscription_sms", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_sms", "read") + return tfErr.GetDiag() + } if err = d.Set("destination_id", result.DestinationID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_subscription_sms", "read") + return tfErr.GetDiag() } if err = d.Set("topic_id", result.TopicID); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topic_id: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting topic_id: %s", err), "(Data) ibm_en_subscription_sms", "read") + return tfErr.GetDiag() } if result.Attributes != nil { if err = d.Set("attributes", enSMSSubscriptionFlattenAttributes(result.Attributes)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting attributes %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("rror setting attributes: %s", err), "(Data) ibm_en_subscription_sms", "read") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_subscriptions.go b/ibm/service/eventnotification/data_source_ibm_en_subscriptions.go index a43bdf5b318..7cca68d067a 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_subscriptions.go +++ b/ibm/service/eventnotification/data_source_ibm_en_subscriptions.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -96,7 +97,9 @@ func DataSourceIBMEnSubscriptions() *schema.Resource { func dataSourceIBMEnSubscriptionsRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_subscriptions", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListSubscriptionsOptions{} @@ -118,12 +121,14 @@ func dataSourceIBMEnSubscriptionsRead(context context.Context, d *schema.Resourc for { options.SetOffset(offset) - result, response, err := enClient.ListSubscriptionsWithContext(context, options) + result, _, err := enClient.ListSubscriptionsWithContext(context, options) subscriptionList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListSubscriptionsWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListSubscriptionsWithContext failed: %s", err.Error()), "(Data) ibm_en_subscriptions", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -140,13 +145,15 @@ func dataSourceIBMEnSubscriptionsRead(context context.Context, d *schema.Resourc d.SetId(fmt.Sprintf("subscriptions_%s", d.Get("instance_guid").(string))) if err = d.Set("total_count", flex.IntValue(subscriptionList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_subscriptions", "list") + return tfErr.GetDiag() } if subscriptionList.Subscriptions != nil { err = d.Set("subscriptions", enFlattenSubscriptionList(subscriptionList.Subscriptions)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscriptions %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscriptions: %s", err), "(Data) ibm_en_subscriptions", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_topic.go b/ibm/service/eventnotification/data_source_ibm_en_topic.go index f7baa9826e3..ea2e5b8c928 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_topic.go +++ b/ibm/service/eventnotification/data_source_ibm_en_topic.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -82,6 +83,30 @@ func DataSourceIBMEnTopic() *schema.Resource { Computed: true, Description: "Notification filter.", }, + "event_schedule_filter": { + Type: schema.TypeList, + Computed: true, + Description: "Event schedule filter attributes.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + "starts_at": { + Type: schema.TypeString, + Computed: true, + Description: "event schedule start time.", + }, + "ends_at": { + Type: schema.TypeString, + Computed: true, + Description: "event schedule end time.", + }, + "expression": { + Type: schema.TypeString, + Computed: true, + Description: "cron schedule expression.", + }, + }, + }, + }, "updated_at": { Type: schema.TypeString, Computed: true, @@ -159,7 +184,9 @@ func DataSourceIBMEnTopic() *schema.Resource { func dataSourceIBMEnTopicRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_topic", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetTopicOptions{} @@ -167,10 +194,12 @@ func dataSourceIBMEnTopicRead(context context.Context, d *schema.ResourceData, m options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("topic_id").(string)) - result, response, err := enClient.GetTopicWithContext(context, options) + result, _, err := enClient.GetTopicWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetTopicWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTopicWithContext failed: %s", err.Error()), "(Data) ibm_en_topic", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) @@ -178,100 +207,128 @@ func dataSourceIBMEnTopicRead(context context.Context, d *schema.ResourceData, m d.Set("topic_id", options.ID) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_topic", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_topic", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", result.UpdatedAt); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_topic", "read") + return tfErr.GetDiag() } if err = d.Set("source_count", flex.IntValue(result.SourceCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting source_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting source_count: %s", err), "(Data) ibm_en_topic", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_topic", "read") + return tfErr.GetDiag() } - // if result.Sources != nil { - // err = d.Set("sources", dataSourceTopicFlattenSources(result.Sources)) - // if err != nil { - // return diag.FromErr(fmt.Errorf("[ERROR] Error setting sources %s", err)) - // } - // } + if result.Sources != nil { + err = d.Set("sources", dataSourceTopicFlattenSources(result.Sources)) + if err != nil { + return diag.FromErr(fmt.Errorf("[ERROR] Error setting sources %s", err)) + } + } if result.Subscriptions != nil { err = d.Set("subscriptions", enFlattenSubscriptions(result.Subscriptions)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscriptions %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscriptions: %s", err), "(Data) ibm_en_topic", "read") + return tfErr.GetDiag() } } return nil } -// func dataSourceTopicFlattenSources(result []en.TopicSourcesItem) (sources []map[string]interface{}) { -// sources = []map[string]interface{}{} +func dataSourceTopicFlattenSources(result []en.SourcesListItems) (sources []map[string]interface{}) { + sources = []map[string]interface{}{} -// for _, sourcesItem := range result { -// sources = append(sources, dataSourceTopicSourcesToMap(sourcesItem)) -// } + for _, sourcesItem := range result { + sources = append(sources, dataSourceTopicSourcesToMap(sourcesItem)) + } -// return sources -// } + return sources +} -// func dataSourceTopicSourcesToMap(sourcesItem en.TopicSourcesItem) (sourcesMap map[string]interface{}) { -// sourcesMap = map[string]interface{}{} +func dataSourceTopicSourcesToMap(sourcesItem en.SourcesListItems) (sourcesMap map[string]interface{}) { + sourcesMap = map[string]interface{}{} -// if sourcesItem.ID != nil { -// sourcesMap["id"] = sourcesItem.ID -// } -// if sourcesItem.Name != nil { -// sourcesMap["name"] = sourcesItem.Name -// } + if sourcesItem.ID != nil { + sourcesMap["id"] = sourcesItem.ID + } + if sourcesItem.Name != nil { + sourcesMap["name"] = sourcesItem.Name + } -// if sourcesItem.Rules != nil { -// rulesList := []map[string]interface{}{} -// for _, rulesItem := range sourcesItem.Rules { -// rulesList = append(rulesList, enRulesToMap(rulesItem)) -// } -// sourcesMap["rules"] = rulesList -// } + if sourcesItem.Rules != nil { + rulesList := []map[string]interface{}{} + for _, rulesItem := range sourcesItem.Rules { + rulesList = append(rulesList, enRulesToMap(rulesItem)) + } + sourcesMap["rules"] = rulesList + } -// return sourcesMap -// } + return sourcesMap +} -// func enRulesToMap(rulesItem en.RulesGet) (rulesMap map[string]interface{}) { -// rulesMap = map[string]interface{}{} +func enRulesToMap(rulesItem en.RulesGet) (rulesMap map[string]interface{}) { + rulesMap = map[string]interface{}{} -// if rulesItem.ID != nil { -// rulesMap["id"] = rulesItem.ID -// } + if rulesItem.ID != nil { + rulesMap["id"] = rulesItem.ID + } -// if rulesItem.Enabled != nil { -// rulesMap["enabled"] = rulesItem.Enabled -// } + if rulesItem.Enabled != nil { + rulesMap["enabled"] = rulesItem.Enabled + } -// if rulesItem.EventTypeFilter != nil { -// rulesMap["event_type_filter"] = rulesItem.EventTypeFilter -// } + if rulesItem.EventTypeFilter != nil { + rulesMap["event_type_filter"] = rulesItem.EventTypeFilter + } -// if rulesItem.NotificationFilter != nil { -// rulesMap["notification_filter"] = rulesItem.NotificationFilter -// } + if rulesItem.NotificationFilter != nil { + rulesMap["notification_filter"] = rulesItem.NotificationFilter + } -// if rulesItem.UpdatedAt != nil { -// rulesMap["updated_at"] = rulesItem.UpdatedAt -// } + if rulesItem.EventScheduleFilter != nil { + eventScheduleFilterMap, err := dataSourceIBMEnTopicsEventScheduleFilterAttributesToMap(rulesItem.EventScheduleFilter) + if err != nil { + return rulesMap + } + rulesMap["event_schedule_filter"] = []map[string]interface{}{eventScheduleFilterMap} + } + + if rulesItem.UpdatedAt != nil { + rulesMap["updated_at"] = rulesItem.UpdatedAt + } -// return rulesMap -// } + return rulesMap +} + +func dataSourceIBMEnTopicsEventScheduleFilterAttributesToMap(model *en.EventScheduleFilterAttributes) (map[string]interface{}, error) { + modelMap := make(map[string]interface{}) + if model.StartsAt != nil { + modelMap["starts_at"] = model.StartsAt.String() + } + if model.EndsAt != nil { + modelMap["ends_at"] = model.EndsAt.String() + } + if model.Expression != nil { + modelMap["expression"] = model.Expression + } + return modelMap, nil +} func enFlattenSubscriptions(subscriptionList []en.SubscriptionListItem) (subscriptions []map[string]interface{}) { subscriptions = []map[string]interface{}{} @@ -299,7 +356,7 @@ func enSubscriptionsToMap(subscription en.SubscriptionListItem) (subscriptionsMa } if subscription.UpdatedAt != nil { - subscriptionsMap["updated_at"] = subscription.UpdatedAt + subscriptionsMap["updated_at"] = subscription.UpdatedAt.String() } if subscription.DestinationType != nil { diff --git a/ibm/service/eventnotification/data_source_ibm_en_topics.go b/ibm/service/eventnotification/data_source_ibm_en_topics.go index 74d4d66d4a5..c59bea6b9f7 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_topics.go +++ b/ibm/service/eventnotification/data_source_ibm_en_topics.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -84,7 +85,9 @@ func DataSourceIBMEnTopics() *schema.Resource { func dataSourceIBMEnTopicsRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_topics", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ListTopicsOptions{} @@ -106,12 +109,14 @@ func dataSourceIBMEnTopicsRead(context context.Context, d *schema.ResourceData, for { options.SetOffset(offset) - result, response, err := enClient.ListTopicsWithContext(context, options) + result, _, err := enClient.ListTopicsWithContext(context, options) topicList = result if err != nil { - return diag.FromErr(fmt.Errorf("ListTopicsWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ListTopicsWithContext failed: %s", err.Error()), "(Data) ibm_en_topics", "list") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } offset = offset + limit @@ -127,13 +132,15 @@ func dataSourceIBMEnTopicsRead(context context.Context, d *schema.ResourceData, d.SetId(fmt.Sprintf("topics_%s", d.Get("instance_guid").(string))) if err = d.Set("total_count", flex.IntValue(topicList.TotalCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting total_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting total_count: %s", err), "(Data) ibm_en_topics", "list") + return tfErr.GetDiag() } if topicList.Topics != nil { err = d.Set("topics", enTopicListFlatten(topicList.Topics)) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting topics %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting topics: %s", err), "(Data) ibm_en_topics", "list") + return tfErr.GetDiag() } } diff --git a/ibm/service/eventnotification/data_source_ibm_en_webhook_template.go b/ibm/service/eventnotification/data_source_ibm_en_webhook_template.go index 130adf28c3c..b3adf2e6caa 100644 --- a/ibm/service/eventnotification/data_source_ibm_en_webhook_template.go +++ b/ibm/service/eventnotification/data_source_ibm_en_webhook_template.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -69,7 +70,9 @@ func DataSourceIBMEnWebhookTemplate() *schema.Resource { func dataSourceIBMEnWebhookTemplateRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_webhook_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetTemplateOptions{} @@ -77,40 +80,48 @@ func dataSourceIBMEnWebhookTemplateRead(context context.Context, d *schema.Resou options.SetInstanceID(d.Get("instance_guid").(string)) options.SetID(d.Get("template_id").(string)) - result, response, err := enClient.GetTemplateWithContext(context, options) + result, _, err := enClient.GetTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("GetTemplate failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "(Data) ibm_en_webhook_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) if err = d.Set("name", result.Name); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting name: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_webhook_template", "read") + return tfErr.GetDiag() } if result.Description != nil { if err = d.Set("description", result.Description); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting description: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_webhook_template", "read") + return tfErr.GetDiag() } } if err = d.Set("type", result.Type); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting type: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting type: %s", err), "(Data) ibm_en_webhook_template", "read") + return tfErr.GetDiag() } if result.SubscriptionNames != nil { err = d.Set("subscription_names", result.SubscriptionNames) if err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_names %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_names: %s", err), "(Data) ibm_en_webhook_template", "read") + return tfErr.GetDiag() } } if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_webhook_template", "read") + return tfErr.GetDiag() } if err = d.Set("subscription_count", flex.IntValue(result.SubscriptionCount)); err != nil { - return diag.FromErr(fmt.Errorf("[ERROR] Error setting subscription_count: %s", err)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting subscription_count: %s", err), "(Data) ibm_en_webhook_template", "read") + return tfErr.GetDiag() } return nil diff --git a/ibm/service/eventnotification/resource_ibm_en_FCM_subscription.go b/ibm/service/eventnotification/resource_ibm_en_FCM_subscription.go index 391f1b0f44e..ca4d8040616 100644 --- a/ibm/service/eventnotification/resource_ibm_en_FCM_subscription.go +++ b/ibm/service/eventnotification/resource_ibm_en_FCM_subscription.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -84,7 +85,10 @@ func ResourceIBMEnFCMSubscription() *schema.Resource { func resourceIBMEnFCMSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateSubscriptionOptions{} @@ -99,9 +103,12 @@ func resourceIBMEnFCMSubscriptionCreate(context context.Context, d *schema.Resou options.SetDescription(d.Get("description").(string)) } - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -112,14 +119,19 @@ func resourceIBMEnFCMSubscriptionCreate(context context.Context, d *schema.Resou func resourceIBMEnFCMSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -131,7 +143,10 @@ func resourceIBMEnFCMSubscriptionRead(context context.Context, d *schema.Resourc d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -192,14 +207,19 @@ func resourceIBMEnFCMSubscriptionRead(context context.Context, d *schema.Resourc func resourceIBMEnFCMSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -212,9 +232,12 @@ func resourceIBMEnFCMSubscriptionUpdate(context context.Context, d *schema.Resou options.SetDescription(d.Get("description").(string)) } - _, response, err := enClient.UpdateSubscriptionWithContext(context, options) + _, _, err := enClient.UpdateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) } return resourceIBMEnFCMSubscriptionRead(context, d, meta) @@ -226,14 +249,19 @@ func resourceIBMEnFCMSubscriptionUpdate(context context.Context, d *schema.Resou func resourceIBMEnFCMSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -245,7 +273,10 @@ func resourceIBMEnFCMSubscriptionDelete(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_apns.go b/ibm/service/eventnotification/resource_ibm_en_destination_apns.go index 64eeb617880..7508298348c 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_apns.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_apns.go @@ -146,7 +146,9 @@ func ResourceIBMEnAPNSDestination() *schema.Resource { func resourceIBMEnAPNSDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -187,9 +189,11 @@ func resourceIBMEnAPNSDestinationCreate(context context.Context, d *schema.Resou options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ios", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -200,14 +204,17 @@ func resourceIBMEnAPNSDestinationCreate(context context.Context, d *schema.Resou func resourceIBMEnAPNSDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -219,7 +226,9 @@ func resourceIBMEnAPNSDestinationRead(context context.Context, d *schema.Resourc d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ios", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -271,14 +280,17 @@ func resourceIBMEnAPNSDestinationRead(context context.Context, d *schema.Resourc func resourceIBMEnAPNSDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -318,9 +330,11 @@ func resourceIBMEnAPNSDestinationUpdate(context context.Context, d *schema.Resou config := APNSdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), certificatetype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ios", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnAPNSDestinationRead(context, d, meta) @@ -332,14 +346,17 @@ func resourceIBMEnAPNSDestinationUpdate(context context.Context, d *schema.Resou func resourceIBMEnAPNSDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -351,7 +368,9 @@ func resourceIBMEnAPNSDestinationDelete(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ios", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_ce.go b/ibm/service/eventnotification/resource_ibm_en_destination_ce.go index 5c552c69b1c..ecfaa5f5454 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_ce.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_ce.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -135,7 +136,9 @@ func ResourceIBMEnCodeEngineDestination() *schema.Resource { func resourceIBMEnCodeEngineDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ios", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -154,9 +157,11 @@ func resourceIBMEnCodeEngineDestinationCreate(context context.Context, d *schema options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ce", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -167,14 +172,17 @@ func resourceIBMEnCodeEngineDestinationCreate(context context.Context, d *schema func resourceIBMEnCodeEngineDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ce", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ce", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -186,7 +194,9 @@ func resourceIBMEnCodeEngineDestinationRead(context context.Context, d *schema.R d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ce", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -239,14 +249,17 @@ func resourceIBMEnCodeEngineDestinationRead(context context.Context, d *schema.R func resourceIBMEnCodeEngineDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ce", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ce", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -268,9 +281,11 @@ func resourceIBMEnCodeEngineDestinationUpdate(context context.Context, d *schema config := CodeEnginedestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ce", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnCodeEngineDestinationRead(context, d, meta) @@ -282,14 +297,17 @@ func resourceIBMEnCodeEngineDestinationUpdate(context context.Context, d *schema func resourceIBMEnCodeEngineDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ce", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_ce", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -301,7 +319,9 @@ func resourceIBMEnCodeEngineDestinationDelete(context context.Context, d *schema d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_ce", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") @@ -313,7 +333,6 @@ func CodeEnginedestinationConfigMapToDestinationConfig(configParams map[string]i params := new(en.DestinationConfigOneOf) params.Type = core.StringPtr(configParams["type"].(string)) - // destination_type := core.StringPtr(configParams["type"].(string)) if *params.Type == "application" { @@ -353,10 +372,6 @@ func CodeEnginedestinationConfigMapToDestinationConfig(configParams map[string]i } - // if configParams["type"] != nil { - // params.Type = core.StringPtr(configParams["type"].(string)) - // } - destinationConfig := new(en.DestinationConfig) destinationConfig.Params = params return *destinationConfig diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_chrome.go b/ibm/service/eventnotification/resource_ibm_en_destination_chrome.go index 745d7e2022c..dbf78ab1bd5 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_chrome.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_chrome.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -114,7 +115,9 @@ func ResourceIBMEnChromeDestination() *schema.Resource { func resourceIBMEnChromeDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -134,9 +137,11 @@ func resourceIBMEnChromeDestinationCreate(context context.Context, d *schema.Res options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_chrome", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -147,14 +152,17 @@ func resourceIBMEnChromeDestinationCreate(context context.Context, d *schema.Res func resourceIBMEnChromeDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -166,7 +174,9 @@ func resourceIBMEnChromeDestinationRead(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_chrome", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -218,14 +228,17 @@ func resourceIBMEnChromeDestinationRead(context context.Context, d *schema.Resou func resourceIBMEnChromeDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -246,9 +259,11 @@ func resourceIBMEnChromeDestinationUpdate(context context.Context, d *schema.Res config := ChromedestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{})) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_chrome", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnChromeDestinationRead(context, d, meta) @@ -260,14 +275,17 @@ func resourceIBMEnChromeDestinationUpdate(context context.Context, d *schema.Res func resourceIBMEnChromeDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -279,7 +297,9 @@ func resourceIBMEnChromeDestinationDelete(context context.Context, d *schema.Res d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_chrome", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_cos.go b/ibm/service/eventnotification/resource_ibm_en_destination_cos.go index f1aeb1d9093..19e86682303 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_cos.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_cos.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -113,7 +114,9 @@ func ResourceIBMEnCOSDestination() *schema.Resource { func resourceIBMEnCOSDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_cos", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -132,9 +135,11 @@ func resourceIBMEnCOSDestinationCreate(context context.Context, d *schema.Resour options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_cos", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -145,14 +150,17 @@ func resourceIBMEnCOSDestinationCreate(context context.Context, d *schema.Resour func resourceIBMEnCOSDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_cos", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -164,7 +172,9 @@ func resourceIBMEnCOSDestinationRead(context context.Context, d *schema.Resource d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -217,14 +227,17 @@ func resourceIBMEnCOSDestinationRead(context context.Context, d *schema.Resource func resourceIBMEnCOSDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_cos", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_cos", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -245,9 +258,11 @@ func resourceIBMEnCOSDestinationUpdate(context context.Context, d *schema.Resour config := COSdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_cos", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnCOSDestinationRead(context, d, meta) @@ -259,14 +274,17 @@ func resourceIBMEnCOSDestinationUpdate(context context.Context, d *schema.Resour func resourceIBMEnCOSDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_chrome", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -278,7 +296,9 @@ func resourceIBMEnCOSDestinationDelete(context context.Context, d *schema.Resour d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_chrome", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_custom_email.go b/ibm/service/eventnotification/resource_ibm_en_destination_custom_email.go index 029e4459d13..9e82137349f 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_custom_email.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_custom_email.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -103,7 +104,9 @@ func ResourceIBMEnCustomEmailDestination() *schema.Resource { func resourceIBMEnCustomEmailDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -122,9 +125,11 @@ func resourceIBMEnCustomEmailDestinationCreate(context context.Context, d *schem options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_email", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -135,14 +140,17 @@ func resourceIBMEnCustomEmailDestinationCreate(context context.Context, d *schem func resourceIBMEnCustomEmailDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -154,7 +162,9 @@ func resourceIBMEnCustomEmailDestinationRead(context context.Context, d *schema. d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -206,14 +216,17 @@ func resourceIBMEnCustomEmailDestinationRead(context context.Context, d *schema. func resourceIBMEnCustomEmailDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -235,9 +248,11 @@ func resourceIBMEnCustomEmailDestinationUpdate(context context.Context, d *schem config := CustomEmaildestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_email", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnCustomEmailDestinationRead(context, d, meta) @@ -249,14 +264,17 @@ func resourceIBMEnCustomEmailDestinationUpdate(context context.Context, d *schem func resourceIBMEnCustomEmailDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_email", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -268,7 +286,9 @@ func resourceIBMEnCustomEmailDestinationDelete(context context.Context, d *schem d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_email", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_custom_sms.go b/ibm/service/eventnotification/resource_ibm_en_destination_custom_sms.go index 43fd471208d..df781092235 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_custom_sms.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_custom_sms.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -78,7 +79,9 @@ func ResourceIBMEnCustomSMSDestination() *schema.Resource { func resourceIBMEnCustomSMSDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -91,14 +94,12 @@ func resourceIBMEnCustomSMSDestinationCreate(context context.Context, d *schema. if _, ok := d.GetOk("description"); ok { options.SetDescription(d.Get("description").(string)) } - // if _, ok := d.GetOk("config"); ok { - // config := SlackdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) - // options.SetConfig(&config) - // } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_sms", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -109,14 +110,17 @@ func resourceIBMEnCustomSMSDestinationCreate(context context.Context, d *schema. func resourceIBMEnCustomSMSDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -128,7 +132,9 @@ func resourceIBMEnCustomSMSDestinationRead(context context.Context, d *schema.Re d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -155,13 +161,6 @@ func resourceIBMEnCustomSMSDestinationRead(context context.Context, d *schema.Re return diag.FromErr(fmt.Errorf("[ERROR] Error setting CollectFailedEvents: %s", err)) } - // if result.Config != nil { - // err = d.Set("config", enWebhookDestinationFlattenConfig(*result.Config)) - // if err != nil { - // return diag.FromErr(fmt.Errorf("[ERROR] Error setting config %s", err)) - // } - // } - if err = d.Set("updated_at", flex.DateTimeToString(result.UpdatedAt)); err != nil { return diag.FromErr(fmt.Errorf("[ERROR] Error setting updated_at: %s", err)) } @@ -181,14 +180,17 @@ func resourceIBMEnCustomSMSDestinationRead(context context.Context, d *schema.Re func resourceIBMEnCustomSMSDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -203,9 +205,11 @@ func resourceIBMEnCustomSMSDestinationUpdate(context context.Context, d *schema. if _, ok := d.GetOk("collect_failed_events"); ok { options.SetCollectFailedEvents(d.Get("collect_failed_events").(bool)) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_sms", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnSlackDestinationRead(context, d, meta) @@ -217,14 +221,17 @@ func resourceIBMEnCustomSMSDestinationUpdate(context context.Context, d *schema. func resourceIBMEnCustomSMSDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_custom_sms", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -236,25 +243,12 @@ func resourceIBMEnCustomSMSDestinationDelete(context context.Context, d *schema. d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_custom_sms", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") return nil } - -// func SlackdestinationConfigMapToDestinationConfig(configParams map[string]interface{}, destinationtype string) en.DestinationConfig { -// params := new(en.DestinationConfigOneOf) -// if configParams["url"] != nil { -// params.URL = core.StringPtr(configParams["url"].(string)) -// } - -// if configParams["collect_failed_events"] != nil { -// params.CollectFailedEvents = core.BoolPtr(configParams["collect_failed_events"].(bool)) -// } - -// destinationConfig := new(en.DestinationConfig) -// destinationConfig.Params = params -// return *destinationConfig -// } diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_fcm.go b/ibm/service/eventnotification/resource_ibm_en_destination_fcm.go index 577a909dbf7..b44172a93df 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_fcm.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_fcm.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -118,7 +119,9 @@ func ResourceIBMEnFCMDestination() *schema.Resource { func resourceIBMEnFCMDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -137,9 +140,11 @@ func resourceIBMEnFCMDestinationCreate(context context.Context, d *schema.Resour options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_android", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -150,14 +155,17 @@ func resourceIBMEnFCMDestinationCreate(context context.Context, d *schema.Resour func resourceIBMEnFCMDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -169,7 +177,9 @@ func resourceIBMEnFCMDestinationRead(context context.Context, d *schema.Resource d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_android", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -222,14 +232,17 @@ func resourceIBMEnFCMDestinationRead(context context.Context, d *schema.Resource func resourceIBMEnFCMDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -250,9 +263,11 @@ func resourceIBMEnFCMDestinationUpdate(context context.Context, d *schema.Resour config := FCMdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_android", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnFCMDestinationRead(context, d, meta) @@ -264,14 +279,17 @@ func resourceIBMEnFCMDestinationUpdate(context context.Context, d *schema.Resour func resourceIBMEnFCMDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_android", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -283,7 +301,9 @@ func resourceIBMEnFCMDestinationDelete(context context.Context, d *schema.Resour d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_android", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_firefox.go b/ibm/service/eventnotification/resource_ibm_en_destination_firefox.go index 04f04952d5d..8621526789c 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_firefox.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_firefox.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -108,7 +109,9 @@ func ResourceIBMEnFirefoxDestination() *schema.Resource { func resourceIBMEnFirefoxDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -127,9 +130,11 @@ func resourceIBMEnFirefoxDestinationCreate(context context.Context, d *schema.Re options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_firefox", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -140,14 +145,19 @@ func resourceIBMEnFirefoxDestinationCreate(context context.Context, d *schema.Re func resourceIBMEnFirefoxDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -159,7 +169,9 @@ func resourceIBMEnFirefoxDestinationRead(context context.Context, d *schema.Reso d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_firefox", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -211,14 +223,17 @@ func resourceIBMEnFirefoxDestinationRead(context context.Context, d *schema.Reso func resourceIBMEnFirefoxDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -239,9 +254,11 @@ func resourceIBMEnFirefoxDestinationUpdate(context context.Context, d *schema.Re config := firefoxdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{})) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_firefox", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnFirefoxDestinationRead(context, d, meta) @@ -253,14 +270,17 @@ func resourceIBMEnFirefoxDestinationUpdate(context context.Context, d *schema.Re func resourceIBMEnFirefoxDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_firefox", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -272,7 +292,9 @@ func resourceIBMEnFirefoxDestinationDelete(context context.Context, d *schema.Re d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_firefox", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_huawei.go b/ibm/service/eventnotification/resource_ibm_en_destination_huawei.go index e72b24af298..73fb0f27f69 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_huawei.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_huawei.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -113,7 +114,9 @@ func ResourceIBMEnHuaweiDestination() *schema.Resource { func resourceIBMEnHuaweiDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -132,9 +135,11 @@ func resourceIBMEnHuaweiDestinationCreate(context context.Context, d *schema.Res options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_huawei", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -145,14 +150,17 @@ func resourceIBMEnHuaweiDestinationCreate(context context.Context, d *schema.Res func resourceIBMEnHuaweiDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -164,7 +172,9 @@ func resourceIBMEnHuaweiDestinationRead(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_huawei", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -217,14 +227,17 @@ func resourceIBMEnHuaweiDestinationRead(context context.Context, d *schema.Resou func resourceIBMEnHuaweiDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -245,9 +258,11 @@ func resourceIBMEnHuaweiDestinationUpdate(context context.Context, d *schema.Res config := HuaweidestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_huawei", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnHuaweiDestinationRead(context, d, meta) @@ -259,14 +274,17 @@ func resourceIBMEnHuaweiDestinationUpdate(context context.Context, d *schema.Res func resourceIBMEnHuaweiDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_huawei", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -278,7 +296,9 @@ func resourceIBMEnHuaweiDestinationDelete(context context.Context, d *schema.Res d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_huawei", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_msteams.go b/ibm/service/eventnotification/resource_ibm_en_destination_msteams.go index eed4db5b644..fa13bef99b6 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_msteams.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_msteams.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -103,7 +104,9 @@ func ResourceIBMEnMSTeamsDestination() *schema.Resource { func resourceIBMEnMSTeamsDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -122,9 +125,11 @@ func resourceIBMEnMSTeamsDestinationCreate(context context.Context, d *schema.Re options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_msteams", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -135,14 +140,17 @@ func resourceIBMEnMSTeamsDestinationCreate(context context.Context, d *schema.Re func resourceIBMEnMSTeamsDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -154,7 +162,9 @@ func resourceIBMEnMSTeamsDestinationRead(context context.Context, d *schema.Reso d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_msteams", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -207,14 +217,17 @@ func resourceIBMEnMSTeamsDestinationRead(context context.Context, d *schema.Reso func resourceIBMEnMSTeamsDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -236,11 +249,12 @@ func resourceIBMEnMSTeamsDestinationUpdate(context context.Context, d *schema.Re config := MSTeamsdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_msteams", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } - return resourceIBMEnMSTeamsDestinationRead(context, d, meta) } @@ -250,14 +264,17 @@ func resourceIBMEnMSTeamsDestinationUpdate(context context.Context, d *schema.Re func resourceIBMEnMSTeamsDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_msteams", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -269,7 +286,9 @@ func resourceIBMEnMSTeamsDestinationDelete(context context.Context, d *schema.Re d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_msteams", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_pagerduty.go b/ibm/service/eventnotification/resource_ibm_en_destination_pagerduty.go index 922088b30a4..4f302669c53 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_pagerduty.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_pagerduty.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -109,7 +110,9 @@ func ResourceIBMEnPagerDutyDestination() *schema.Resource { func resourceIBMEnPagerDutyDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -128,9 +131,11 @@ func resourceIBMEnPagerDutyDestinationCreate(context context.Context, d *schema. options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_pagerduty", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -141,14 +146,17 @@ func resourceIBMEnPagerDutyDestinationCreate(context context.Context, d *schema. func resourceIBMEnPagerDutyDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -160,7 +168,9 @@ func resourceIBMEnPagerDutyDestinationRead(context context.Context, d *schema.Re d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_pagerduty", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -212,14 +222,17 @@ func resourceIBMEnPagerDutyDestinationRead(context context.Context, d *schema.Re func resourceIBMEnPagerDutyDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -241,9 +254,11 @@ func resourceIBMEnPagerDutyDestinationUpdate(context context.Context, d *schema. config := PagerDutydestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_pagerduty", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnPagerDutyDestinationRead(context, d, meta) @@ -255,14 +270,17 @@ func resourceIBMEnPagerDutyDestinationUpdate(context context.Context, d *schema. func resourceIBMEnPagerDutyDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_pagerduty", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -274,7 +292,9 @@ func resourceIBMEnPagerDutyDestinationDelete(context context.Context, d *schema. d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_pagerduty", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_safari.go b/ibm/service/eventnotification/resource_ibm_en_destination_safari.go index 058f7bc1cff..c1e61f0978b 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_safari.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_safari.go @@ -201,7 +201,9 @@ func ResourceIBMEnSafariDestination() *schema.Resource { func resourceIBMEnSafariDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateDestinationOptions{} @@ -212,7 +214,6 @@ func resourceIBMEnSafariDestinationCreate(context context.Context, d *schema.Res options.SetType(d.Get("type").(string)) options.SetCollectFailedEvents(d.Get("collect_failed_events").(bool)) - // options.SetCertificateContentType(d.Get("certificate_content_type").(string)) if _, ok := d.GetOk("icon_16x16_content_type"); ok { options.SetIcon16x16ContentType(d.Get("icon_16x16_content_type").(string)) } @@ -232,8 +233,6 @@ func resourceIBMEnSafariDestinationCreate(context context.Context, d *schema.Res options.SetIcon128x1282xContentType(d.Get("icon_128x128_2x_content_type").(string)) } - // certificatetype := d.Get("certificate_content_type").(string) - if c, ok := d.GetOk("certificate"); ok { path := c.(string) file, err := os.Open(path) @@ -361,9 +360,11 @@ func resourceIBMEnSafariDestinationCreate(context context.Context, d *schema.Res options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_safari", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -374,14 +375,17 @@ func resourceIBMEnSafariDestinationCreate(context context.Context, d *schema.Res func resourceIBMEnSafariDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -393,7 +397,9 @@ func resourceIBMEnSafariDestinationRead(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_safari", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -445,14 +451,17 @@ func resourceIBMEnSafariDestinationRead(context context.Context, d *schema.Resou func resourceIBMEnSafariDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -591,9 +600,11 @@ func resourceIBMEnSafariDestinationUpdate(context context.Context, d *schema.Res config := SafaridestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{})) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_safari", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnSafariDestinationRead(context, d, meta) @@ -605,14 +616,17 @@ func resourceIBMEnSafariDestinationUpdate(context context.Context, d *schema.Res func resourceIBMEnSafariDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_safari", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -624,7 +638,9 @@ func resourceIBMEnSafariDestinationDelete(context context.Context, d *schema.Res d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_safari", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_servicenow.go b/ibm/service/eventnotification/resource_ibm_en_destination_servicenow.go index fcd0207dac0..4fc2af7d42b 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_servicenow.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_servicenow.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -127,7 +128,10 @@ func ResourceIBMEnServiceNowDestination() *schema.Resource { func resourceIBMEnServiceNowDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateDestinationOptions{} @@ -147,9 +151,12 @@ func resourceIBMEnServiceNowDestinationCreate(context context.Context, d *schema options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_sn", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -160,14 +167,19 @@ func resourceIBMEnServiceNowDestinationCreate(context context.Context, d *schema func resourceIBMEnServiceNowDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -179,7 +191,10 @@ func resourceIBMEnServiceNowDestinationRead(context context.Context, d *schema.R d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_sn", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -231,14 +246,19 @@ func resourceIBMEnServiceNowDestinationRead(context context.Context, d *schema.R func resourceIBMEnServiceNowDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -260,9 +280,12 @@ func resourceIBMEnServiceNowDestinationUpdate(context context.Context, d *schema config := ServiceNowdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_sn", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) } return resourceIBMEnServiceNowDestinationRead(context, d, meta) @@ -274,14 +297,19 @@ func resourceIBMEnServiceNowDestinationUpdate(context context.Context, d *schema func resourceIBMEnServiceNowDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_sn", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -293,7 +321,10 @@ func resourceIBMEnServiceNowDestinationDelete(context context.Context, d *schema d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_sn", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_slack.go b/ibm/service/eventnotification/resource_ibm_en_destination_slack.go index 4e6b5c87cad..ee37c725b19 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_slack.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_slack.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -113,7 +114,10 @@ func ResourceIBMEnSlackDestination() *schema.Resource { func resourceIBMEnSlackDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateDestinationOptions{} @@ -132,9 +136,12 @@ func resourceIBMEnSlackDestinationCreate(context context.Context, d *schema.Reso options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_slack", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -145,14 +152,19 @@ func resourceIBMEnSlackDestinationCreate(context context.Context, d *schema.Reso func resourceIBMEnSlackDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -164,7 +176,10 @@ func resourceIBMEnSlackDestinationRead(context context.Context, d *schema.Resour d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -217,14 +232,19 @@ func resourceIBMEnSlackDestinationRead(context context.Context, d *schema.Resour func resourceIBMEnSlackDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -246,9 +266,12 @@ func resourceIBMEnSlackDestinationUpdate(context context.Context, d *schema.Reso config := SlackdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_slack", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) } return resourceIBMEnSlackDestinationRead(context, d, meta) @@ -260,14 +283,19 @@ func resourceIBMEnSlackDestinationUpdate(context context.Context, d *schema.Reso func resourceIBMEnSlackDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_slack", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -279,7 +307,10 @@ func resourceIBMEnSlackDestinationDelete(context context.Context, d *schema.Reso d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_slack", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_destination_webhook.go b/ibm/service/eventnotification/resource_ibm_en_destination_webhook.go index c1542a709bd..3d000c08cf3 100644 --- a/ibm/service/eventnotification/resource_ibm_en_destination_webhook.go +++ b/ibm/service/eventnotification/resource_ibm_en_destination_webhook.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -120,7 +121,10 @@ func ResourceIBMEnWebhookDestination() *schema.Resource { func resourceIBMEnWebhookDestinationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateDestinationOptions{} @@ -139,9 +143,12 @@ func resourceIBMEnWebhookDestinationCreate(context context.Context, d *schema.Re options.SetConfig(&config) } - result, response, err := enClient.CreateDestinationWithContext(context, options) + result, _, err := enClient.CreateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_webhook", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateDestinationWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -152,14 +159,19 @@ func resourceIBMEnWebhookDestinationCreate(context context.Context, d *schema.Re func resourceIBMEnWebhookDestinationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -171,7 +183,10 @@ func resourceIBMEnWebhookDestinationRead(context context.Context, d *schema.Reso d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_webhook", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetDestinationWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -226,14 +241,19 @@ func resourceIBMEnWebhookDestinationRead(context context.Context, d *schema.Reso func resourceIBMEnWebhookDestinationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.UpdateDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -254,9 +274,12 @@ func resourceIBMEnWebhookDestinationUpdate(context context.Context, d *schema.Re config := WebhookdestinationConfigMapToDestinationConfig(d.Get("config.0.params.0").(map[string]interface{}), destinationtype) options.SetConfig(&config) } - _, response, err := enClient.UpdateDestinationWithContext(context, options) + _, _, err := enClient.UpdateDestinationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_webhook", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("UpdateDestinationWithContext failed %s\n%s", err, response)) } return resourceIBMEnWebhookDestinationRead(context, d, meta) @@ -268,14 +291,19 @@ func resourceIBMEnWebhookDestinationUpdate(context context.Context, d *schema.Re func resourceIBMEnWebhookDestinationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.DeleteDestinationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_destination_webhook", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -287,7 +315,10 @@ func resourceIBMEnWebhookDestinationDelete(context context.Context, d *schema.Re d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteDestinationWithContext failed: %s", err.Error()), "ibm_en_destination_webhook", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("DeleteDestinationWithContext failed %s\n%s", err, response)) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_email_template.go b/ibm/service/eventnotification/resource_ibm_en_email_template.go index 1dc5894855f..849d59b03d5 100644 --- a/ibm/service/eventnotification/resource_ibm_en_email_template.go +++ b/ibm/service/eventnotification/resource_ibm_en_email_template.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -94,7 +95,10 @@ func ResourceIBMEnEmailTemplate() *schema.Resource { func resourceIBMEnEmailTemplateCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateTemplateOptions{} @@ -111,9 +115,12 @@ func resourceIBMEnEmailTemplateCreate(context context.Context, d *schema.Resourc params := EmailTemplateParamsMap(d.Get("params.0").(map[string]interface{})) options.SetParams(¶ms) - result, response, err := enClient.CreateTemplateWithContext(context, options) + result, _, err := enClient.CreateTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateTemplateWithContext failed: %s", err.Error()), "ibm_en_email_template", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateTemplateWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -124,14 +131,19 @@ func resourceIBMEnEmailTemplateCreate(context context.Context, d *schema.Resourc func resourceIBMEnEmailTemplateRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -143,7 +155,10 @@ func resourceIBMEnEmailTemplateRead(context context.Context, d *schema.ResourceD d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "ibm_en_email_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetTemplateWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -185,14 +200,19 @@ func resourceIBMEnEmailTemplateRead(context context.Context, d *schema.ResourceD func resourceIBMEnEmailTemplateUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.ReplaceTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -208,9 +228,12 @@ func resourceIBMEnEmailTemplateUpdate(context context.Context, d *schema.Resourc params := EmailTemplateParamsMap(d.Get("params.0").(map[string]interface{})) options.SetParams(¶ms) - _, response, err := enClient.ReplaceTemplateWithContext(context, options) + _, _, err := enClient.ReplaceTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceTemplateWithContext failed: %s", err.Error()), "ibm_en_email_template", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("ReplaceTemplateWithContext failed %s\n%s", err, response)) } return resourceIBMEnEmailTemplateRead(context, d, meta) @@ -222,14 +245,19 @@ func resourceIBMEnEmailTemplateUpdate(context context.Context, d *schema.Resourc func resourceIBMEnEmailTemplateDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.DeleteTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_email_template", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -241,7 +269,10 @@ func resourceIBMEnEmailTemplateDelete(context context.Context, d *schema.Resourc d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteTemplateWithContext: %s", err.Error()), "ibm_en_email_template", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("DeleteTemplateWithContext failed %s\n%s", err, response)) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_ibmsource.go b/ibm/service/eventnotification/resource_ibm_en_ibmsource.go index 4116f65bab9..7924a3bae2a 100644 --- a/ibm/service/eventnotification/resource_ibm_en_ibmsource.go +++ b/ibm/service/eventnotification/resource_ibm_en_ibmsource.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -52,7 +53,10 @@ func ResourceIBMEnIBMSource() *schema.Resource { func resourceIBMEnIBMSourceCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_ibmsource", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.UpdateSourceOptions{} @@ -62,12 +66,15 @@ func resourceIBMEnIBMSourceCreate(context context.Context, d *schema.ResourceDat options.SetEnabled(d.Get("enabled").(bool)) - _, response, err := enClient.UpdateSourceWithContext(context, options) + result, _, err := enClient.UpdateSourceWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSourceWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpadteIBMSourceWithContext failed: %s", err.Error()), "ibm_en_ibmsource", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateSourceWithContext failed %s\n%s", err, response)) } - d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) + d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) return resourceIBMEnIBMSourceRead(context, d, meta) } @@ -75,14 +82,19 @@ func resourceIBMEnIBMSourceCreate(context context.Context, d *schema.ResourceDat func resourceIBMEnIBMSourceRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_ibmsource", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetSourceOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_ibmsource", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -97,7 +109,10 @@ func resourceIBMEnIBMSourceRead(context context.Context, d *schema.ResourceData, d.SetId(d.Get("source_id").(string)) return nil } - return diag.FromErr(fmt.Errorf("GetSourceWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSourceWithContext failed: %s", err.Error()), "ibm_en_ibmsource", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetSourceWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -131,14 +146,19 @@ func resourceIBMEnIBMSourceRead(context context.Context, d *schema.ResourceData, func resourceIBMEnIBMSourceUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_ibmsource", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.UpdateSourceOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_ibmsource", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -151,9 +171,12 @@ func resourceIBMEnIBMSourceUpdate(context context.Context, d *schema.ResourceDat options.SetEnabled(d.Get("enabled").(bool)) - _, response, err := enClient.UpdateSourceWithContext(context, options) + _, _, err := enClient.UpdateSourceWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSourceWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSourceWithContext failed: %s", err.Error()), "ibm_en_ibmsource", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("UpdateSourceWithContext failed %s\n%s", err, response)) } return resourceIBMEnIBMSourceRead(context, d, meta) diff --git a/ibm/service/eventnotification/resource_ibm_en_integration.go b/ibm/service/eventnotification/resource_ibm_en_integration.go index d2b03b9d7cb..33715a02693 100644 --- a/ibm/service/eventnotification/resource_ibm_en_integration.go +++ b/ibm/service/eventnotification/resource_ibm_en_integration.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -76,7 +77,10 @@ func ResourceIBMEnIntegration() *schema.Resource { func resourceIBMEnIntegrationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.ReplaceIntegrationOptions{} @@ -90,12 +94,15 @@ func resourceIBMEnIntegrationCreate(context context.Context, d *schema.ResourceD options.SetMetadata(&metadata) } - _, response, err := enClient.ReplaceIntegrationWithContext(context, options) + result, _, err := enClient.ReplaceIntegrationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceIntegrationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceIntegrationWithContext failed: %s", err.Error()), "ibm_en_integration_cos", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("ReplaceIntegrationWithContext failed %s\n%s", err, response)) } - d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *options.ID)) + d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) return resourceIBMEnIntegrationRead(context, d, meta) } @@ -103,14 +110,19 @@ func resourceIBMEnIntegrationCreate(context context.Context, d *schema.ResourceD func resourceIBMEnIntegrationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetIntegrationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -122,7 +134,10 @@ func resourceIBMEnIntegrationRead(context context.Context, d *schema.ResourceDat d.SetId(d.Get("integration_id").(string)) return nil } - return diag.FromErr(fmt.Errorf("GetIntegrationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetIntegrationWithContext failed: %s", err.Error()), "ibm_en_integration_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetIntegrationWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -146,14 +161,19 @@ func resourceIBMEnIntegrationRead(context context.Context, d *schema.ResourceDat func resourceIBMEnIntegrationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.ReplaceIntegrationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -167,9 +187,12 @@ func resourceIBMEnIntegrationUpdate(context context.Context, d *schema.ResourceD options.SetMetadata(&metadata) } - _, response, err := enClient.ReplaceIntegrationWithContext(context, options) + _, _, err := enClient.ReplaceIntegrationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceIntegrationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceIntegrationWithContext failed: %s", err.Error()), "ibm_en_integration_cos", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("ReplaceIntegrationWithContext failed %s\n%s", err, response)) } return resourceIBMEnIntegrationRead(context, d, meta) diff --git a/ibm/service/eventnotification/resource_ibm_en_integration_cos.go b/ibm/service/eventnotification/resource_ibm_en_integration_cos.go index 50557684ba9..6dd7f8a2b36 100644 --- a/ibm/service/eventnotification/resource_ibm_en_integration_cos.go +++ b/ibm/service/eventnotification/resource_ibm_en_integration_cos.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -76,7 +77,10 @@ func ResourceIBMEnCOSIntegration() *schema.Resource { func resourceIBMEnCOSIntegrationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateIntegrationOptions{} @@ -89,9 +93,12 @@ func resourceIBMEnCOSIntegrationCreate(context context.Context, d *schema.Resour options.SetMetadata(&metadata) } - result, response, err := enClient.CreateIntegrationWithContext(context, options) + result, _, err := enClient.CreateIntegrationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateIntegrationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateIntegrationWithContext failed: %s", err.Error()), "ibm_en_integration_cos", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateIntegrationWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -102,14 +109,19 @@ func resourceIBMEnCOSIntegrationCreate(context context.Context, d *schema.Resour func resourceIBMEnCOSIntegrationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetIntegrationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "read") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -121,7 +133,10 @@ func resourceIBMEnCOSIntegrationRead(context context.Context, d *schema.Resource d.SetId(d.Get("integration_id").(string)) return nil } - return diag.FromErr(fmt.Errorf("GetIntegrationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetIntegrationWithContext failed: %s", err.Error()), "ibm_en_integration_cos", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetIntegrationWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -152,14 +167,19 @@ func resourceIBMEnCOSIntegrationRead(context context.Context, d *schema.Resource func resourceIBMEnCOSIntegrationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.ReplaceIntegrationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_integration_cos", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -173,9 +193,12 @@ func resourceIBMEnCOSIntegrationUpdate(context context.Context, d *schema.Resour options.SetMetadata(&metadata) } - _, response, err := enClient.ReplaceIntegrationWithContext(context, options) + _, _, err := enClient.ReplaceIntegrationWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceIntegrationWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceIntegrationWithContext failed: %s", err.Error()), "ibm_en_integration_cos", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("ReplaceIntegrationWithContext failed %s\n%s", err, response)) } return resourceIBMEnIntegrationRead(context, d, meta) diff --git a/ibm/service/eventnotification/resource_ibm_en_slack_template.go b/ibm/service/eventnotification/resource_ibm_en_slack_template.go index df1d84805ed..25fe9d47592 100644 --- a/ibm/service/eventnotification/resource_ibm_en_slack_template.go +++ b/ibm/service/eventnotification/resource_ibm_en_slack_template.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -89,7 +90,10 @@ func ResourceIBMEnSlackTemplate() *schema.Resource { func resourceIBMEnSlackTemplateCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.CreateTemplateOptions{} @@ -106,9 +110,12 @@ func resourceIBMEnSlackTemplateCreate(context context.Context, d *schema.Resourc params := SlackTemplateParamsMap(d.Get("params.0").(map[string]interface{})) options.SetParams(¶ms) - result, response, err := enClient.CreateTemplateWithContext(context, options) + result, _, err := enClient.CreateTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateTemplateWithContext failed: %s", err.Error()), "ibm_en_slack_template", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("CreateTemplateWithContext failed %s\n%s", err, response)) } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -119,14 +126,19 @@ func resourceIBMEnSlackTemplateCreate(context context.Context, d *schema.Resourc func resourceIBMEnSlackTemplateRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.GetTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -138,7 +150,10 @@ func resourceIBMEnSlackTemplateRead(context context.Context, d *schema.ResourceD d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "ibm_en_slack_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("GetTemplateWithContext failed %s\n%s", err, response)) } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -180,14 +195,19 @@ func resourceIBMEnSlackTemplateRead(context context.Context, d *schema.ResourceD func resourceIBMEnSlackTemplateUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.ReplaceTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -203,9 +223,12 @@ func resourceIBMEnSlackTemplateUpdate(context context.Context, d *schema.Resourc params := SlackTemplateParamsMap(d.Get("params.0").(map[string]interface{})) options.SetParams(¶ms) - _, response, err := enClient.ReplaceTemplateWithContext(context, options) + _, _, err := enClient.ReplaceTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceTemplateWithContext failed: %s", err.Error()), "ibm_en_slack_template", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("ReplaceTemplateWithContext failed %s\n%s", err, response)) } return resourceIBMEnSlackTemplateRead(context, d, meta) @@ -217,14 +240,19 @@ func resourceIBMEnSlackTemplateUpdate(context context.Context, d *schema.Resourc func resourceIBMEnSlackTemplateDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } options := &en.DeleteTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_slack_template", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } options.SetInstanceID(parts[0]) @@ -236,7 +264,10 @@ func resourceIBMEnSlackTemplateDelete(context context.Context, d *schema.Resourc d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteTemplateWithContext: failed: %s", err.Error()), "ibm_en_slack_template", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(fmt.Errorf("DeleteTemplateWithContext failed %s\n%s", err, response)) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_smtp_configuration.go b/ibm/service/eventnotification/resource_ibm_en_smtp_configuration.go index dfbeaac24e0..e3e617f535a 100644 --- a/ibm/service/eventnotification/resource_ibm_en_smtp_configuration.go +++ b/ibm/service/eventnotification/resource_ibm_en_smtp_configuration.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -189,7 +190,10 @@ func ResourceIBMEnSMTPConfigurationValidator() *validate.ResourceValidator { func resourceIBMEnSMTPConfigurationCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } createSMTPConfigurationOptions := &en.CreateSMTPConfigurationOptions{} @@ -203,7 +207,10 @@ func resourceIBMEnSMTPConfigurationCreate(context context.Context, d *schema.Res smtpCreateResponse, _, err := eventNotificationsClient.CreateSMTPConfigurationWithContext(context, createSMTPConfigurationOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSMTPConfigurationWithContext failed: %s", err.Error()), "ibm_en_smtp_configuration", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } d.SetId(fmt.Sprintf("%s/%s", *createSMTPConfigurationOptions.InstanceID, *smtpCreateResponse.ID)) @@ -214,14 +221,19 @@ func resourceIBMEnSMTPConfigurationCreate(context context.Context, d *schema.Res func resourceIBMEnSMTPConfigurationRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } getSMTPConfigurationOptions := &en.GetSMTPConfigurationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } getSMTPConfigurationOptions.SetInstanceID(parts[0]) @@ -233,7 +245,10 @@ func resourceIBMEnSMTPConfigurationRead(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSMTPConfigurationWithContext failed: %s", err.Error()), "ibm_en_smtp_configuration", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } if err = d.Set("name", smtpConfiguration.Name); err != nil { @@ -267,7 +282,10 @@ func resourceIBMEnSMTPConfigurationRead(context context.Context, d *schema.Resou func resourceIBMEnSMTPConfigurationUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } updateSMTPConfigurationOptions := &en.UpdateSMTPConfigurationOptions{} @@ -275,7 +293,9 @@ func resourceIBMEnSMTPConfigurationUpdate(context context.Context, d *schema.Res parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "update") + return tfErr.GetDiag() + // return diag.FromErr(err) } updateSMTPConfigurationOptions.SetInstanceID(parts[0]) @@ -306,7 +326,10 @@ func resourceIBMEnSMTPConfigurationUpdate(context context.Context, d *schema.Res if hasChange { _, _, err = eventNotificationsClient.UpdateSMTPConfigurationWithContext(context, updateSMTPConfigurationOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSMTPConfigurationWithContext failed: %s", err.Error()), "ibm_en_smtp_configuration", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } } @@ -323,14 +346,19 @@ func resourceIBMEnSMTPConfigurationUpdate(context context.Context, d *schema.Res func resourceIBMEnSMTPConfigurationDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } deleteSMTPConfigurationOptions := &en.DeleteSMTPConfigurationOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_configuration", "delete") + return tfErr.GetDiag() + // return diag.FromErr(err) } deleteSMTPConfigurationOptions.SetInstanceID(parts[0]) @@ -338,7 +366,10 @@ func resourceIBMEnSMTPConfigurationDelete(context context.Context, d *schema.Res _, err = eventNotificationsClient.DeleteSMTPConfigurationWithContext(context, deleteSMTPConfigurationOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSMTPConfigurationWithContext: failed: %s", err.Error()), "ibm_en_smtp_configuration", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() + // return diag.FromErr(err) } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_smtp_user.go b/ibm/service/eventnotification/resource_ibm_en_smtp_user.go index 3fef7d5ca19..5f91f5bf248 100644 --- a/ibm/service/eventnotification/resource_ibm_en_smtp_user.go +++ b/ibm/service/eventnotification/resource_ibm_en_smtp_user.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" @@ -109,7 +110,9 @@ func ResourceIBMEnSMTPUserValidator() *validate.ResourceValidator { func resourceIBMEnSMTPUserCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } createSMTPUserOptions := &en.CreateSMTPUserOptions{} @@ -122,7 +125,9 @@ func resourceIBMEnSMTPUserCreate(context context.Context, d *schema.ResourceData smtpUserResponse, _, err := eventNotificationsClient.CreateSMTPUserWithContext(context, createSMTPUserOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSMTPUserWithContext failed: %s", err.Error()), "ibm_en_smtp_user", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("password", smtpUserResponse.Password); err != nil { @@ -137,14 +142,17 @@ func resourceIBMEnSMTPUserCreate(context context.Context, d *schema.ResourceData func resourceIBMEnSMTPUserRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } getSMTPUserOptions := &en.GetSMTPUserOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "read") + return tfErr.GetDiag() } getSMTPUserOptions.SetInstanceID(parts[0]) @@ -157,7 +165,9 @@ func resourceIBMEnSMTPUserRead(context context.Context, d *schema.ResourceData, d.SetId("") return nil } - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSMTPUserWithContext failed: %s", err.Error()), "ibm_en_smtp_user", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if !core.IsNil(smtpUser.Description) { @@ -190,14 +200,17 @@ func resourceIBMEnSMTPUserRead(context context.Context, d *schema.ResourceData, func resourceIBMEnSMTPUserUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } updateSMTPUserOptions := &en.UpdateSMTPUserOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "update") + return tfErr.GetDiag() } updateSMTPUserOptions.SetInstanceID(parts[0]) @@ -217,7 +230,9 @@ func resourceIBMEnSMTPUserUpdate(context context.Context, d *schema.ResourceData if hasChange { _, _, err = eventNotificationsClient.UpdateSMTPUserWithContext(context, updateSMTPUserOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSMTPUserWithContex failed: %s", err.Error()), "ibm_en_smtp_user", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } } @@ -227,14 +242,17 @@ func resourceIBMEnSMTPUserUpdate(context context.Context, d *schema.ResourceData func resourceIBMEnSMTPUserDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { eventNotificationsClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } deleteSMTPUserOptions := &en.DeleteSMTPUserOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_smtp_user", "delete") + return tfErr.GetDiag() } deleteSMTPUserOptions.SetInstanceID(parts[0]) @@ -243,7 +261,9 @@ func resourceIBMEnSMTPUserDelete(context context.Context, d *schema.ResourceData _, err = eventNotificationsClient.DeleteSMTPUserWithContext(context, deleteSMTPUserOptions) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSMTPUserWithContext: failed: %s", err.Error()), "ibm_en_smtp_user", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_source.go b/ibm/service/eventnotification/resource_ibm_en_source.go index 4c6f73604ff..390b664c0fc 100644 --- a/ibm/service/eventnotification/resource_ibm_en_source.go +++ b/ibm/service/eventnotification/resource_ibm_en_source.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -62,7 +63,9 @@ func ResourceIBMEnSource() *schema.Resource { func resourceIBMEnSourceCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSourcesOptions{} @@ -76,9 +79,11 @@ func resourceIBMEnSourceCreate(context context.Context, d *schema.ResourceData, options.SetEnabled(d.Get("enabled").(bool)) - result, response, err := enClient.CreateSourcesWithContext(context, options) + result, _, err := enClient.CreateSourcesWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSourcesWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSourcesWithContext failed: %s", err.Error()), "ibm_en_source", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -89,14 +94,17 @@ func resourceIBMEnSourceCreate(context context.Context, d *schema.ResourceData, func resourceIBMEnSourceRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSourceOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -108,7 +116,9 @@ func resourceIBMEnSourceRead(context context.Context, d *schema.ResourceData, me d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSourceWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSourceWithContext failed: %s", err.Error()), "ibm_en_source", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -141,14 +151,17 @@ func resourceIBMEnSourceRead(context context.Context, d *schema.ResourceData, me func resourceIBMEnSourceUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSourceOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -163,9 +176,11 @@ func resourceIBMEnSourceUpdate(context context.Context, d *schema.ResourceData, options.SetEnabled(d.Get("enabled").(bool)) - _, response, err := enClient.UpdateSourceWithContext(context, options) + _, _, err := enClient.UpdateSourceWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSourceWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSourceWithContext failed: %s", err.Error()), "ibm_en_source", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnSourceRead(context, d, meta) @@ -177,14 +192,17 @@ func resourceIBMEnSourceUpdate(context context.Context, d *schema.ResourceData, func resourceIBMEnSourceDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSourceOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_source", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -196,7 +214,9 @@ func resourceIBMEnSourceDelete(context context.Context, d *schema.ResourceData, d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSourceWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSourceWithContext: failed: %s", err.Error()), "ibm_en_source", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_subscription_custom_email.go b/ibm/service/eventnotification/resource_ibm_en_subscription_custom_email.go index ee10c86569a..ff255d10544 100644 --- a/ibm/service/eventnotification/resource_ibm_en_subscription_custom_email.go +++ b/ibm/service/eventnotification/resource_ibm_en_subscription_custom_email.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -152,7 +153,9 @@ func ResourceIBMEnCustomEmailSubscription() *schema.Resource { func resourceIBMEnCustomEmailSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSubscriptionOptions{} @@ -170,9 +173,11 @@ func resourceIBMEnCustomEmailSubscriptionCreate(context context.Context, d *sche attributes := CustomEmailattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_custom_email", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -183,14 +188,17 @@ func resourceIBMEnCustomEmailSubscriptionCreate(context context.Context, d *sche func resourceIBMEnCustomEmailSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -202,7 +210,9 @@ func resourceIBMEnCustomEmailSubscriptionRead(context context.Context, d *schema d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_custom_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -263,14 +273,17 @@ func resourceIBMEnCustomEmailSubscriptionRead(context context.Context, d *schema func resourceIBMEnCustomEmailSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -286,9 +299,11 @@ func resourceIBMEnCustomEmailSubscriptionUpdate(context context.Context, d *sche attributes := CustomEmailattributesupdateMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - _, response, err := enClient.UpdateSubscriptionWithContext(context, options) + _, _, err := enClient.UpdateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_custom_email", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnCustomEmailSubscriptionRead(context, d, meta) @@ -300,14 +315,17 @@ func resourceIBMEnCustomEmailSubscriptionUpdate(context context.Context, d *sche func resourceIBMEnCustomEmailSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_email", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -319,7 +337,9 @@ func resourceIBMEnCustomEmailSubscriptionDelete(context context.Context, d *sche d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription_custom_email", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_subscription_custom_sms.go b/ibm/service/eventnotification/resource_ibm_en_subscription_custom_sms.go index 6f86c8ed9e2..897840db7c5 100644 --- a/ibm/service/eventnotification/resource_ibm_en_subscription_custom_sms.go +++ b/ibm/service/eventnotification/resource_ibm_en_subscription_custom_sms.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -110,7 +111,9 @@ func ResourceIBMEnCustomSMSSubscription() *schema.Resource { func resourceIBMEnCustomSMSSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSubscriptionOptions{} @@ -128,9 +131,11 @@ func resourceIBMEnCustomSMSSubscriptionCreate(context context.Context, d *schema attributes, _ := CustomSMSattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_custom_sms", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -141,14 +146,17 @@ func resourceIBMEnCustomSMSSubscriptionCreate(context context.Context, d *schema func resourceIBMEnCustomSMSSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -160,7 +168,9 @@ func resourceIBMEnCustomSMSSubscriptionRead(context context.Context, d *schema.R d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_custom_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -191,10 +201,6 @@ func resourceIBMEnCustomSMSSubscriptionRead(context context.Context, d *schema.R return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_id: %s", err)) } - // if err = d.Set("destination_type", result.DestinationType); err != nil { - // return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_type: %s", err)) - // } - if result.DestinationName != nil { if err = d.Set("destination_name", result.DestinationName); err != nil { return diag.FromErr(fmt.Errorf("[ERROR] Error setting destination_name: %s", err)) @@ -221,14 +227,17 @@ func resourceIBMEnCustomSMSSubscriptionRead(context context.Context, d *schema.R func resourceIBMEnCustomSMSSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -244,9 +253,11 @@ func resourceIBMEnCustomSMSSubscriptionUpdate(context context.Context, d *schema _, attributes := SMSattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - _, response, err := enClient.UpdateSubscriptionWithContext(context, options) + _, _, err := enClient.UpdateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_custom_sms", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnSMSSubscriptionRead(context, d, meta) @@ -258,14 +269,17 @@ func resourceIBMEnCustomSMSSubscriptionUpdate(context context.Context, d *schema func resourceIBMEnCustomSMSSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_custom_sms", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -277,7 +291,9 @@ func resourceIBMEnCustomSMSSubscriptionDelete(context context.Context, d *schema d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription_custom_sms", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_subscription_email.go b/ibm/service/eventnotification/resource_ibm_en_subscription_email.go index 9ac61796583..790d468e2cd 100644 --- a/ibm/service/eventnotification/resource_ibm_en_subscription_email.go +++ b/ibm/service/eventnotification/resource_ibm_en_subscription_email.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -137,7 +138,9 @@ func ResourceIBMEnEmailSubscription() *schema.Resource { func resourceIBMEnEmailSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSubscriptionOptions{} @@ -155,9 +158,11 @@ func resourceIBMEnEmailSubscriptionCreate(context context.Context, d *schema.Res attributes := EmailattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_email", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -168,14 +173,17 @@ func resourceIBMEnEmailSubscriptionCreate(context context.Context, d *schema.Res func resourceIBMEnEmailSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -187,7 +195,9 @@ func resourceIBMEnEmailSubscriptionRead(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_email", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -248,14 +258,17 @@ func resourceIBMEnEmailSubscriptionRead(context context.Context, d *schema.Resou func resourceIBMEnEmailSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -271,9 +284,11 @@ func resourceIBMEnEmailSubscriptionUpdate(context context.Context, d *schema.Res attributes := EmailattributesupdateMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - _, response, err := enClient.UpdateSubscriptionWithContext(context, options) + _, _, err := enClient.UpdateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_email", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnEmailSubscriptionRead(context, d, meta) @@ -285,14 +300,17 @@ func resourceIBMEnEmailSubscriptionUpdate(context context.Context, d *schema.Res func resourceIBMEnEmailSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_email", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -304,7 +322,9 @@ func resourceIBMEnEmailSubscriptionDelete(context context.Context, d *schema.Res d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription_email", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_subscription_slack.go b/ibm/service/eventnotification/resource_ibm_en_subscription_slack.go index 52e6fe77038..d266a560bd8 100644 --- a/ibm/service/eventnotification/resource_ibm_en_subscription_slack.go +++ b/ibm/service/eventnotification/resource_ibm_en_subscription_slack.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -123,7 +124,9 @@ func ResourceIBMEnSlackSubscription() *schema.Resource { func resourceIBMEnSlackSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSubscriptionOptions{} @@ -141,9 +144,11 @@ func resourceIBMEnSlackSubscriptionCreate(context context.Context, d *schema.Res attributes, _ := slackattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_slack", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -154,14 +159,17 @@ func resourceIBMEnSlackSubscriptionCreate(context context.Context, d *schema.Res func resourceIBMEnSlackSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -173,7 +181,9 @@ func resourceIBMEnSlackSubscriptionRead(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_slack", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -234,14 +244,17 @@ func resourceIBMEnSlackSubscriptionRead(context context.Context, d *schema.Resou func resourceIBMEnSlackSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -256,7 +269,9 @@ func resourceIBMEnSlackSubscriptionUpdate(context context.Context, d *schema.Res attributes, err := resourceIBMEnSubscriptionMapToSubscriptionUpdateAttributes(d.Get("attributes.0").(map[string]interface{})) if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_slack", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options.SetAttributes(&attributes) @@ -274,14 +289,17 @@ func resourceIBMEnSlackSubscriptionUpdate(context context.Context, d *schema.Res func resourceIBMEnSlackSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_slack", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -293,7 +311,9 @@ func resourceIBMEnSlackSubscriptionDelete(context context.Context, d *schema.Res d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription_slack", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_subscription_sms.go b/ibm/service/eventnotification/resource_ibm_en_subscription_sms.go index e59be0a7e45..8b3d1104d72 100644 --- a/ibm/service/eventnotification/resource_ibm_en_subscription_sms.go +++ b/ibm/service/eventnotification/resource_ibm_en_subscription_sms.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -111,7 +112,9 @@ func ResourceIBMEnSMSSubscription() *schema.Resource { func resourceIBMEnSMSSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSubscriptionOptions{} @@ -129,9 +132,11 @@ func resourceIBMEnSMSSubscriptionCreate(context context.Context, d *schema.Resou attributes, _ := SMSattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_sms", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -142,14 +147,17 @@ func resourceIBMEnSMSSubscriptionCreate(context context.Context, d *schema.Resou func resourceIBMEnSMSSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -161,7 +169,9 @@ func resourceIBMEnSMSSubscriptionRead(context context.Context, d *schema.Resourc d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_sms", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -222,14 +232,17 @@ func resourceIBMEnSMSSubscriptionRead(context context.Context, d *schema.Resourc func resourceIBMEnSMSSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -245,9 +258,11 @@ func resourceIBMEnSMSSubscriptionUpdate(context context.Context, d *schema.Resou _, attributes := SMSattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - _, response, err := enClient.UpdateSubscriptionWithContext(context, options) + _, _, err := enClient.UpdateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_sms", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnSMSSubscriptionRead(context, d, meta) @@ -259,14 +274,17 @@ func resourceIBMEnSMSSubscriptionUpdate(context context.Context, d *schema.Resou func resourceIBMEnSMSSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_sms", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -278,7 +296,9 @@ func resourceIBMEnSMSSubscriptionDelete(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription_sms", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_subscription_webhook.go b/ibm/service/eventnotification/resource_ibm_en_subscription_webhook.go index fbb3edfce0a..ba8158b5eec 100644 --- a/ibm/service/eventnotification/resource_ibm_en_subscription_webhook.go +++ b/ibm/service/eventnotification/resource_ibm_en_subscription_webhook.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -105,7 +106,9 @@ func ResourceIBMEnWebhookSubscription() *schema.Resource { func resourceIBMEnWebhookSubscriptionCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateSubscriptionOptions{} @@ -123,9 +126,11 @@ func resourceIBMEnWebhookSubscriptionCreate(context context.Context, d *schema.R attributes, _ := webhookattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - result, response, err := enClient.CreateSubscriptionWithContext(context, options) + result, _, err := enClient.CreateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_webhook", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -136,14 +141,17 @@ func resourceIBMEnWebhookSubscriptionCreate(context context.Context, d *schema.R func resourceIBMEnWebhookSubscriptionRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -155,7 +163,9 @@ func resourceIBMEnWebhookSubscriptionRead(context context.Context, d *schema.Res d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_webhook", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -216,14 +226,17 @@ func resourceIBMEnWebhookSubscriptionRead(context context.Context, d *schema.Res func resourceIBMEnWebhookSubscriptionUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.UpdateSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -239,9 +252,11 @@ func resourceIBMEnWebhookSubscriptionUpdate(context context.Context, d *schema.R _, attributes := webhookattributesMapToAttributes(d.Get("attributes.0").(map[string]interface{})) options.SetAttributes(&attributes) - _, response, err := enClient.UpdateSubscriptionWithContext(context, options) + _, _, err := enClient.UpdateSubscriptionWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("UpdateSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("UpdateSubscriptionWithContext failed: %s", err.Error()), "ibm_en_subscription_webhook", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnWebhookSubscriptionRead(context, d, meta) @@ -253,14 +268,17 @@ func resourceIBMEnWebhookSubscriptionUpdate(context context.Context, d *schema.R func resourceIBMEnWebhookSubscriptionDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteSubscriptionOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -272,7 +290,9 @@ func resourceIBMEnWebhookSubscriptionDelete(context context.Context, d *schema.R d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteSubscriptionWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteSubscriptionWithContext: failed: %s", err.Error()), "ibm_en_subscription_webhook", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/ibm/service/eventnotification/resource_ibm_en_topic.go b/ibm/service/eventnotification/resource_ibm_en_topic.go index cf8b99fb357..6a93d3a9ef6 100644 --- a/ibm/service/eventnotification/resource_ibm_en_topic.go +++ b/ibm/service/eventnotification/resource_ibm_en_topic.go @@ -6,12 +6,14 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "github.com/IBM/event-notifications-go-admin-sdk/eventnotificationsv1" en "github.com/IBM/event-notifications-go-admin-sdk/eventnotificationsv1" "github.com/IBM/go-sdk-core/v5/core" ) @@ -66,7 +68,7 @@ func ResourceIBMEnTopic() *schema.Resource { }, "event_type_filter": { Type: schema.TypeString, - Required: true, + Optional: true, Description: "Event type filter.", }, "notification_filter": { @@ -75,6 +77,30 @@ func ResourceIBMEnTopic() *schema.Resource { Default: "", Description: "Notification filter.", }, + "event_schedule_filter": { + Type: schema.TypeList, + Optional: true, + Description: "Event Schedule Filter for periodic-timer source.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + "starts_at": { + Type: schema.TypeString, + Optional: true, + Description: "event schedule start time.", + }, + "ends_at": { + Type: schema.TypeString, + Required: true, + Description: "event schedule end time.", + }, + "expression": { + Type: schema.TypeString, + Optional: true, + Description: "cron schedule expression.", + }, + }, + }, + }, }, }, }, @@ -152,7 +178,9 @@ func ResourceIBMEnTopic() *schema.Resource { func resourceIBMEnTopicCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_subscription_webhook", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateTopicOptions{} @@ -174,10 +202,12 @@ func resourceIBMEnTopicCreate(context context.Context, d *schema.ResourceData, m options.SetSources(sources) } - result, response, err := enClient.CreateTopicWithContext(context, options) + result, _, err := enClient.CreateTopicWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateTopicWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateTopicWithContext failed: %s", err.Error()), "ibm_en_topic", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -188,14 +218,17 @@ func resourceIBMEnTopicCreate(context context.Context, d *schema.ResourceData, m func resourceIBMEnTopicRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_topic", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetTopicOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_topic", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -208,8 +241,9 @@ func resourceIBMEnTopicRead(context context.Context, d *schema.ResourceData, met d.SetId("") return nil } - - return diag.FromErr(fmt.Errorf("GetTopicWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTopicWithContext failed: %s", err.Error()), "ibm_en_topic", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.Set("instance_guid", options.InstanceID) @@ -262,14 +296,17 @@ func resourceIBMEnTopicRead(context context.Context, d *schema.ResourceData, met func resourceIBMEnTopicUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_topic", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ReplaceTopicOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_topic", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -292,9 +329,11 @@ func resourceIBMEnTopicUpdate(context context.Context, d *schema.ResourceData, m options.SetSources(sources) } - _, response, err := enClient.ReplaceTopicWithContext(context, options) + _, _, err = enClient.ReplaceTopicWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceTopicWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceTopicWithContext failed: %s", err.Error()), "ibm_en_topic", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnTopicRead(context, d, meta) @@ -303,14 +342,17 @@ func resourceIBMEnTopicUpdate(context context.Context, d *schema.ResourceData, m func resourceIBMEnTopicDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_topic", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteTopicOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_topic", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -322,7 +364,9 @@ func resourceIBMEnTopicDelete(context context.Context, d *schema.ResourceData, m d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteTopicWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteTopicWithContext: failed: %s", err.Error()), "ibm_en_topic", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") @@ -361,9 +405,39 @@ func resourceIBMEnTopicMapToRules(rulesMap map[string]interface{}) en.Rules { rules.NotificationFilter = core.StringPtr(rulesMap["notification_filter"].(string)) } + if rulesMap["event_schedule_filter"] != nil && len(rulesMap["event_schedule_filter"].([]interface{})) > 0 { + EventScheduleFilterModel, err := resourceIBMEnTopicsMapToEventScheduleFilterAttributes(rulesMap["event_schedule_filter"].([]interface{})[0].(map[string]interface{})) + if err != nil { + return rules + } + rules.EventScheduleFilter = EventScheduleFilterModel + } + return rules } +func resourceIBMEnTopicsMapToEventScheduleFilterAttributes(modelMap map[string]interface{}) (*eventnotificationsv1.EventScheduleFilterAttributes, error) { + model := &en.EventScheduleFilterAttributes{} + if modelMap["starts_at"] != nil { + dateTime, err := core.ParseDateTime(modelMap["starts_at"].(string)) + if err != nil { + return model, err + } + model.StartsAt = &dateTime + } + if modelMap["ends_at"] != nil { + dateTime, err := core.ParseDateTime(modelMap["ends_at"].(string)) + if err != nil { + return model, err + } + model.EndsAt = &dateTime + } + if modelMap["expression"] != nil && modelMap["expression"].(string) != "" { + model.Expression = core.StringPtr(modelMap["expression"].(string)) + } + return model, nil +} + func enTopicUpdateSourcesItemToMap(source en.SourcesListItems) map[string]interface{} { sourceMap := map[string]interface{}{} @@ -396,9 +470,31 @@ func resourceIBMEnTopicRulesToMap(rules en.RulesGet) map[string]interface{} { rulesMap["notification_filter"] = rules.NotificationFilter } + if rules.EventScheduleFilter != nil { + eventScheduleFilterMap, err := resourceIBMEnTopicsEventScheduleFilterAttributesToMap(rules.EventScheduleFilter) + if err != nil { + return rulesMap + } + rulesMap["event_schedule_filter"] = []map[string]interface{}{eventScheduleFilterMap} + } + return rulesMap } +func resourceIBMEnTopicsEventScheduleFilterAttributesToMap(model *eventnotificationsv1.EventScheduleFilterAttributes) (map[string]interface{}, error) { + modelMap := make(map[string]interface{}) + if model.StartsAt != nil { + modelMap["starts_at"] = model.StartsAt.String() + } + if model.EndsAt != nil { + modelMap["ends_at"] = model.EndsAt.String() + } + if model.Expression != nil { + modelMap["expression"] = model.Expression + } + return modelMap, nil +} + func enTopicSubscriptionToMap(subscriptionListItem en.SubscriptionListItem) map[string]interface{} { subscriptionMap := map[string]interface{}{} @@ -420,3 +516,21 @@ func enTopicSubscriptionToMap(subscriptionListItem en.SubscriptionListItem) map[ return subscriptionMap } + +// func enEventScheduleFilterMap(eventschedulerfilter en.EventScheduleFilterAttributes) map[string]interface{} { +// schedulerFilter := map[string]interface{}{} + +// if eventschedulerfilter.StartsAt != nil { +// schedulerFilter["enabled"] = eventschedulerfilter.StartsAt +// } + +// if eventschedulerfilter.EndsAt != nil { +// schedulerFilter["ends_at"] = eventschedulerfilter.EndsAt +// } + +// if eventschedulerfilter.Expression != nil { +// schedulerFilter["expression"] = eventschedulerfilter.Expression +// } + +// return schedulerFilter +// } diff --git a/ibm/service/eventnotification/resource_ibm_en_webhook_template.go b/ibm/service/eventnotification/resource_ibm_en_webhook_template.go index ce890decbbb..596ed899d68 100644 --- a/ibm/service/eventnotification/resource_ibm_en_webhook_template.go +++ b/ibm/service/eventnotification/resource_ibm_en_webhook_template.go @@ -6,6 +6,7 @@ package eventnotification import ( "context" "fmt" + "log" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/conns" "github.com/IBM-Cloud/terraform-provider-ibm/ibm/flex" @@ -89,7 +90,9 @@ func ResourceIBMEnWebhookTemplate() *schema.Resource { func resourceIBMEnWebhookTemplateCreate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.CreateTemplateOptions{} @@ -106,9 +109,11 @@ func resourceIBMEnWebhookTemplateCreate(context context.Context, d *schema.Resou params := WebhookTemplateParamsMap(d.Get("params.0").(map[string]interface{})) options.SetParams(¶ms) - result, response, err := enClient.CreateTemplateWithContext(context, options) + result, _, err := enClient.CreateTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("CreateTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("CreateTemplateWithContext failed: %s", err.Error()), "ibm_en_webhook_template", "create") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId(fmt.Sprintf("%s/%s", *options.InstanceID, *result.ID)) @@ -119,14 +124,17 @@ func resourceIBMEnWebhookTemplateCreate(context context.Context, d *schema.Resou func resourceIBMEnWebhookTemplateRead(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.GetTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "read") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -138,7 +146,9 @@ func resourceIBMEnWebhookTemplateRead(context context.Context, d *schema.Resourc d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("GetTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetTemplateWithContext failed: %s", err.Error()), "ibm_en_webhook_template", "read") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } if err = d.Set("instance_guid", options.InstanceID); err != nil { @@ -180,14 +190,17 @@ func resourceIBMEnWebhookTemplateRead(context context.Context, d *schema.Resourc func resourceIBMEnWebhookTemplateUpdate(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.ReplaceTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "update") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -203,9 +216,11 @@ func resourceIBMEnWebhookTemplateUpdate(context context.Context, d *schema.Resou params := WebhookTemplateParamsMap(d.Get("params.0").(map[string]interface{})) options.SetParams(¶ms) - _, response, err := enClient.ReplaceTemplateWithContext(context, options) + _, _, err := enClient.ReplaceTemplateWithContext(context, options) if err != nil { - return diag.FromErr(fmt.Errorf("ReplaceTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("ReplaceTemplateWithContext failed: %s", err.Error()), "ibm_en_webhook_template", "update") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } return resourceIBMEnWebhookTemplateRead(context, d, meta) @@ -217,14 +232,17 @@ func resourceIBMEnWebhookTemplateUpdate(context context.Context, d *schema.Resou func resourceIBMEnWebhookTemplateDelete(context context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { enClient, err := meta.(conns.ClientSession).EventNotificationsApiV1() if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } options := &en.DeleteTemplateOptions{} parts, err := flex.SepIdParts(d.Id(), "/") if err != nil { - return diag.FromErr(err) + tfErr := flex.TerraformErrorf(err, err.Error(), "ibm_en_webhook_template", "delete") + return tfErr.GetDiag() } options.SetInstanceID(parts[0]) @@ -236,7 +254,9 @@ func resourceIBMEnWebhookTemplateDelete(context context.Context, d *schema.Resou d.SetId("") return nil } - return diag.FromErr(fmt.Errorf("DeleteTemplateWithContext failed %s\n%s", err, response)) + tfErr := flex.TerraformErrorf(err, fmt.Sprintf("DeleteTemplateWithContext: failed: %s", err.Error()), "ibm_en_webhook_template", "delete") + log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage()) + return tfErr.GetDiag() } d.SetId("") diff --git a/website/docs/d/en_subscription_scheduler.html.markdown b/website/docs/d/en_subscription_scheduler.html.markdown new file mode 100644 index 00000000000..65c935e66b0 --- /dev/null +++ b/website/docs/d/en_subscription_scheduler.html.markdown @@ -0,0 +1,44 @@ +--- +subcategory: 'Event Notifications' +layout: 'ibm' +page_title: 'IBM : ibm_en_subscription_scheduler' +description: |- + Get information about a Scheduler subscription +--- + +# ibm_en_subscription_scheduler + +Provides a read-only data source for Scheduler subscription. You can then reference the fields of the data source in other resources within the same configuration using interpolation syntax. + +## Example usage + +```terraform +data "ibm_en_subscription_scheduler'" "scheduler_subscription" { + instance_guid = ibm_resource_instance.en_terraform_test_resource.guid + subscription_id = ibm_en_subscription_scheduler.scheduler_subscription.subscription_id +} +``` + +## Argument reference + +Review the argument reference that you can specify for your data source. + +- `instance_guid` - (Required, Forces new resource, String) Unique identifier for IBM Cloud Event Notifications instance. + +- `subscription_id` - (Required, String) Unique identifier for Subscription. + +## Attribute reference + +In addition to all argument references listed, you can access the following attribute references after your data source is created. + +- `id` - The unique identifier of the ios_subscription. + +- `name` - (String) Subscription name. + +- `description` - (String) Subscription description. + +- `destination_id` - (String) The destination ID. + +- `topic_id` - (String) Topic ID. + +- `updated_at` - (String) Last updated time. diff --git a/website/docs/r/en_destination_slack.html.markdown b/website/docs/r/en_destination_slack.html.markdown index 8c9f36c6496..7c50727b51b 100644 --- a/website/docs/r/en_destination_slack.html.markdown +++ b/website/docs/r/en_destination_slack.html.markdown @@ -76,7 +76,7 @@ Review the argument reference that you can specify for your resource. In addition to all argument references listed, you can access the following attribute references after your resource is created. -- `id` - (String) The unique identifier of the `webhook_en_destination`. +- `id` - (String) The unique identifier of the `slack_en_destination`. - `destination_id` - (String) The unique identifier of the created destination. - `subscription_count` - (Integer) Number of subscriptions. - Constraints: The minimum value is `0`. diff --git a/website/docs/r/en_subscription_scheduler.html.markdown b/website/docs/r/en_subscription_scheduler.html.markdown new file mode 100644 index 00000000000..2f9416fa1f6 --- /dev/null +++ b/website/docs/r/en_subscription_scheduler.html.markdown @@ -0,0 +1,67 @@ +--- +subcategory: 'Event Notifications' +layout: 'ibm' +page_title: 'IBM : ibm_en_subscription_scheduler' +description: |- + Manages Event Notifications Scheduler subscription. +--- + +# ibm_en_subscription_scheduler + +Create, update, or delete a Scheduler subscription by using IBM Cloud™ Event Notifications. + +## Example usage + +```terraform +resource "ibm_en_subscription_scheduler" "scheduler_subscription" { + instance_guid = ibm_resource_instance.en_terraform_test_resource.guid + name = "Scheduler Subscription" + description = Scheduler subscription for periodic timer as a source" + destination_id = ibm_en_destination_slack.destinationslack.destination_id + topic_id = ibm_en_topic.topic1.topic_id +} + +ibm_en_subscription_scheduler +``` + +## Argument reference + +Review the argument reference that you can specify for your resource. + +- `instance_guid` - (Required, Forces new resource, String) Unique identifier for IBM Cloud Event Notifications instance. + +- `name` - (Requires, String) Subscription name. + +- `description` - (Optional, String) Subscription description. + +- `destination_id` - (Requires, String) Destination ID. + +- `topic_id` - (Required, String) Topic ID. + +## Attribute reference + +In addition to all argument references listed, you can access the following attribute references after your resource is created. + +- `id` - (String) The unique identifier of the `scheduler_subscription`. + +- `subscription_id` - (String) The unique identifier of the created subscription. + +- `updated_at` - (String) Last updated time. + +## Import + +You can import the `ibm_en_subscription_scheduler` resource by using `id`. +The `id` property can be formed from `instance_guid`, and `subscription_id` in the following format: + +``` +/ +``` + +- `instance_guid`: A string. Unique identifier for IBM Cloud Event Notifications instance. +- `subscription_id`: A string. Unique identifier for Subscription. + +**Example** + +``` +$ terraform import ibm_en_subscription_scheduler.scheduler_subscription / +``` diff --git a/website/docs/r/en_topic.html.markdown b/website/docs/r/en_topic.html.markdown index f427a125c5c..638a952be3e 100644 --- a/website/docs/r/en_topic.html.markdown +++ b/website/docs/r/en_topic.html.markdown @@ -12,6 +12,8 @@ Create, update, or delete a topic by using IBM Cloud™ Event Notifications. ## Example usage +Subscription example for Topic for other than scheduler source + ```terraform resource "ibm_en_topic" "en_topic" { instance_guid = ibm_resource_instance.en_terraform_test_resource.guid @@ -29,6 +31,28 @@ resource "ibm_en_topic" "en_topic" { } ``` +Subscription example for Topic periodic-timer source + +```terraform +resource "ibm_en_topic" "en_topic" { + instance_guid = ibm_resource_instance.en_terraform_test_resource.guid + name = "Scheduler Topic" + description = "Topic for periodic-timer as source" + sources { + id = [for s in toset(data.ibm_en_sources.en_sources.sources): s.id if s.type == "periodic-timer"].0 + + rules { + enabled = true + event_schedule_filter { + starts_at = "2024-12-23T05:00:00.000Z" + ends_at = "2024-12-23T22:50:00.000Z" + expression = "* * * * *" + } + } + } +} +``` + ## Argument reference Review the argument reference that you can specify for your resource. @@ -49,9 +73,17 @@ Review the argument reference that you can specify for your resource. - `enabled` - (Boolean) Whether the rule is enabled or not. The default value is `true`. - - `event_type_filter` - (Required, String) Event type filter. The default value is `$.*`. The maximum length is `255`characters. The minimum length is`3`characters. The value must match regular expression`/[a-zA-Z 0-9-_$.=']_/`. + - `event_type_filter` - (Optional, String) Event type filter. The default value is `$.*`. The maximum length is `255`characters. The minimum length is`3`characters. The value must match regular expression`/[a-zA-Z 0-9-_$.=']_/`. + + - `notification_filter` - (Optional, String) Notification filter. The minimum length is`0`characters. The value must match regular + expression`/[a-zA-Z 0-9-_$.=']-/`. - - `notification_filter` - (Optional, String) Notification filter. The minimum length is`0`characters. The value must match regular expression`/[a-zA-Z 0-9-_$.=']-/`. + * `event_schedule_filter` - (Optional, List) Event schedule filter attributes. + Nested schema for **event_schedule_filter**: + * `ends_at` - (Optional, String) event schedule end time. + * `expression` - (Optional, String) cron schedule expression. + * Constraints: The maximum length is `100` characters. The minimum length is `1` character. The value must match regular expression `/.*/`. + * `starts_at` - (Optional, String) event schedule start time. ## Attribute reference