Skip to content

Commit

Permalink
Fix for DKIM Response parameter for SMTP Configuration (#5355)
Browse files Browse the repository at this point in the history
* updating code for EventNotifications destination code engine configuration parameters

* Update resource for smtp configurations and smtp users resources and data sources

* Updated event notifications sdk version

* Update go.mod

Remove reference to local SDK

* updated go.mod with sync with master branch

* fixed resources and docs, removed timeouts

* updated parameter type and doc

* removed log statements

* Fix for DKIM Response parameter for SMTP Configuration

* Update resource_ibm_en_smtp_user.go

updated password parameter as sensitive
  • Loading branch information
Divya-Singh1693 authored May 17, 2024
1 parent 69bdfc3 commit f8be101
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 41 deletions.
3 changes: 2 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ require (
github.com/IBM/code-engine-go-sdk v0.0.0-20231106200405-99e81b3ee752
github.com/IBM/container-registry-go-sdk v1.1.0
github.com/IBM/continuous-delivery-go-sdk v1.5.0
github.com/IBM/event-notifications-go-admin-sdk v0.6.0
github.com/IBM/event-notifications-go-admin-sdk v0.6.1
github.com/IBM/eventstreams-go-sdk v1.4.0
github.com/IBM/go-sdk-core/v3 v3.2.4
github.com/IBM/go-sdk-core/v5 v5.17.0
Expand Down Expand Up @@ -239,6 +239,7 @@ replace github.com/dgrijalva/jwt-go v3.2.0+incompatible => github.com/golang-jwt
// add sdk changes.
replace github.com/portworx/sched-ops v0.0.0-20200831185134-3e8010dc7056 => github.com/portworx/sched-ops v0.20.4-openstorage-rc3 // required by rook v1.7


exclude (
github.com/kubernetes-incubator/external-storage v0.20.4-openstorage-rc2
k8s.io/client-go v11.0.1-0.20190409021438-1a26190bd76a+incompatible
Expand Down
6 changes: 4 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -138,8 +138,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 v1.5.0 h1:FHSRruNt9WK7SavpIVuV6N+xll90UgZsuQjZvQ+slB4=
github.com/IBM/continuous-delivery-go-sdk v1.5.0/go.mod h1:nZdKUnubXNLo+zo28R4Rd+TGDqiJ/xoE8WO/A3kLw1E=
github.com/IBM/event-notifications-go-admin-sdk v0.6.0 h1:nzoHQF2IXmTVFavIZXbYiKf1SiY4HfPtK5Vtr9UmVm4=
github.com/IBM/event-notifications-go-admin-sdk v0.6.0/go.mod h1:xRsMCxmPLXvmmWEXF8rshZlZgMrllPSiT9MBi4+Q6cs=
github.com/IBM/event-notifications-go-admin-sdk v0.6.1 h1:85gB9evVX8AmNyd4Fh1O2G/0mgpt2HIQpyeWOoftEb4=
github.com/IBM/event-notifications-go-admin-sdk v0.6.1/go.mod h1:xRsMCxmPLXvmmWEXF8rshZlZgMrllPSiT9MBi4+Q6cs=
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=
Expand Down Expand Up @@ -1641,8 +1641,10 @@ github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI
github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs=
github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g=
github.com/xdg-go/scram v1.1.2/go.mod h1:RT/sEzTbU5y00aCK8UOx6R7YryM0iF1N2MOmC3kKLN4=
github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM=
github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8=
github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gijq1dTyGkM=
github.com/xdg/scram v0.0.0-20180814205039-7eeb5667e42c/go.mod h1:lB8K/P019DLNhemzwFU4jHLhdvlE6uDZjXFejJXr49I=
github.com/xdg/stringprep v0.0.0-20180714160509-73f8eece6fdc/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y=
github.com/xdg/stringprep v1.0.0/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y=
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,15 +57,15 @@ func DataSourceIBMEnSMTPConfiguration() *schema.Resource {
Description: "The DKIM attributes.",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"public_key": &schema.Schema{
"txt_name": &schema.Schema{
Type: schema.TypeString,
Computed: true,
Description: "dkim public key.",
Description: "DMIM text name.",
},
"selector": &schema.Schema{
"txt_value": &schema.Schema{
Type: schema.TypeString,
Computed: true,
Description: "dkim selector.",
Description: "DMIM text value.",
},
"verification": &schema.Schema{
Type: schema.TypeString,
Expand Down Expand Up @@ -128,9 +128,6 @@ 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 {
// tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_configuration", "read")
// log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage())
// return tfErr.GetDiag()
return diag.FromErr(err)
}

Expand All @@ -141,51 +138,36 @@ func dataSourceIBMEnSMTPConfigurationRead(context context.Context, d *schema.Res

smtpConfiguration, _, err := eventNotificationsClient.GetSMTPConfigurationWithContext(context, getSMTPConfigurationOptions)
if err != nil {
// tfErr := flex.TerraformErrorf(err, fmt.Sprintf("GetSMTPConfigurationWithContext failed: %s", err.Error()), "(Data) ibm_en_smtp_configuration", "read")
// log.Printf("[DEBUG]\n%s", tfErr.GetDebugMessage())
return diag.FromErr(err)
// return tfErr.GetDiag()
}

d.SetId(fmt.Sprintf("%s/%s", *getSMTPConfigurationOptions.InstanceID, *getSMTPConfigurationOptions.ID))

if err = d.Set("name", smtpConfiguration.Name); err != nil {
// tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting name: %s", err), "(Data) ibm_en_smtp_configuration", "read")
// return tfErr.GetDiag()
return diag.FromErr(err)
}

if err = d.Set("description", smtpConfiguration.Description); err != nil {
// tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting description: %s", err), "(Data) ibm_en_smtp_configuration", "read")
// return tfErr.GetDiag()
return diag.FromErr(err)
}

if err = d.Set("domain", smtpConfiguration.Domain); err != nil {
// tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting domain: %s", err), "(Data) ibm_en_smtp_configuration", "read")
// return tfErr.GetDiag()
return diag.FromErr(err)
}

config := []map[string]interface{}{}
if smtpConfiguration.Config != nil {
modelMap, err := dataSourceIBMEnSMTPConfigurationSMTPConfigToMap(smtpConfiguration.Config)
if err != nil {
// tfErr := flex.TerraformErrorf(err, err.Error(), "(Data) ibm_en_smtp_configuration", "read")
// return tfErr.GetDiag()
return diag.FromErr(err)
}
config = append(config, modelMap)
}
if err = d.Set("config", config); err != nil {
// tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting config: %s", err), "(Data) ibm_en_smtp_configuration", "read")
// return tfErr.GetDiag()
return diag.FromErr(err)
}

if err = d.Set("updated_at", flex.DateTimeToString(smtpConfiguration.UpdatedAt)); err != nil {
// tfErr := flex.TerraformErrorf(err, fmt.Sprintf("Error setting updated_at: %s", err), "(Data) ibm_en_smtp_configuration", "read")
// return tfErr.GetDiag()
return diag.FromErr(err)
}

Expand Down Expand Up @@ -218,13 +200,13 @@ func dataSourceIBMEnSMTPConfigurationSMTPConfigToMap(model *en.SMTPConfig) (map[
return modelMap, nil
}

func dataSourceIBMEnSMTPConfigurationDkimAttributesToMap(model *en.DkimAttributes) (map[string]interface{}, error) {
func dataSourceIBMEnSMTPConfigurationDkimAttributesToMap(model *en.SmtpdkimAttributes) (map[string]interface{}, error) {
modelMap := make(map[string]interface{})
if model.PublicKey != nil {
modelMap["public_key"] = model.PublicKey
if model.TxtName != nil {
modelMap["txt_name"] = model.TxtName
}
if model.Selector != nil {
modelMap["selector"] = model.Selector
if model.TxtValue != nil {
modelMap["txt_value"] = model.TxtValue
}
if model.Verification != nil {
modelMap["verification"] = model.Verification
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ func TestAccIBMEnSMTPUserDataSourceBasic(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "id"),
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "instance_id"),
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "en_smtp_user_id"),
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "en_smtp_config_id"),
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "user_id"),
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "smtp_config_id"),
resource.TestCheckResourceAttrSet("data.ibm_en_smtp_user.en_smtp_user_instance", "description"),
Expand Down
20 changes: 10 additions & 10 deletions ibm/service/eventnotification/resource_ibm_en_smtp_configuration.go
Original file line number Diff line number Diff line change
Expand Up @@ -68,15 +68,15 @@ func ResourceIBMEnSMTPConfiguration() *schema.Resource {
Description: "The DKIM attributes.",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"public_key": &schema.Schema{
"txt_name": &schema.Schema{
Type: schema.TypeString,
Computed: true,
Description: "dkim public key.",
Description: "DMIM text name.",
},
"selector": &schema.Schema{
"txt_value": &schema.Schema{
Type: schema.TypeString,
Computed: true,
Description: "dkim selector.",
Description: "DMIM text value.",
},
"verification": &schema.Schema{
Type: schema.TypeString,
Expand Down Expand Up @@ -349,7 +349,7 @@ func resourceIBMEnSMTPConfigurationDelete(context context.Context, d *schema.Res
func resourceIBMEnSMTPConfigurationSMTPConfigToMap(model *en.SMTPConfig) (map[string]interface{}, error) {
modelMap := make(map[string]interface{})
if model.Dkim != nil {
dkimMap, err := resourceIBMEnSMTPConfigurationDkimAttributesToMap(model.Dkim)
dkimMap, err := resourceIBMEnSMTPConfigurationSmtpdkimAttributesToMap(model.Dkim)
if err != nil {
return modelMap, err
}
Expand All @@ -372,13 +372,13 @@ func resourceIBMEnSMTPConfigurationSMTPConfigToMap(model *en.SMTPConfig) (map[st
return modelMap, nil
}

func resourceIBMEnSMTPConfigurationDkimAttributesToMap(model *en.DkimAttributes) (map[string]interface{}, error) {
func resourceIBMEnSMTPConfigurationSmtpdkimAttributesToMap(model *en.SmtpdkimAttributes) (map[string]interface{}, error) {
modelMap := make(map[string]interface{})
if model.PublicKey != nil {
modelMap["public_key"] = model.PublicKey
if model.TxtName != nil {
modelMap["txt_name"] = model.TxtName
}
if model.Selector != nil {
modelMap["selector"] = model.Selector
if model.TxtValue != nil {
modelMap["txt_value"] = model.TxtValue
}
if model.Verification != nil {
modelMap["verification"] = model.Verification
Expand Down
10 changes: 10 additions & 0 deletions ibm/service/eventnotification/resource_ibm_en_smtp_user.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,12 @@ func ResourceIBMEnSMTPUser() *schema.Resource {
Computed: true,
Description: "Updated time.",
},
"password": &schema.Schema{
Type: schema.TypeString,
Sensitive: true,
Computed: true,
Description: "SMTP user password.",
},
"updated_at": &schema.Schema{
Type: schema.TypeString,
Computed: true,
Expand Down Expand Up @@ -119,6 +125,10 @@ func resourceIBMEnSMTPUserCreate(context context.Context, d *schema.ResourceData
return diag.FromErr(err)
}

if err = d.Set("password", smtpUserResponse.Password); err != nil {
return diag.FromErr(fmt.Errorf("Error setting password: %s", err))
}

d.SetId(fmt.Sprintf("%s/%s/%s", *createSMTPUserOptions.InstanceID, *createSMTPUserOptions.ID, *smtpUserResponse.ID))

return resourceIBMEnSMTPUserRead(context, d, meta)
Expand Down

0 comments on commit f8be101

Please sign in to comment.