X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=mailgun%2Fresource_mailgun_domain.go;h=f859230d964bc24dd37c1ece9eea3dadb72bcbf4;hb=d564d146deaa5e5c5e66a7407efce8e16933f921;hp=eaf00fa51fae04ed69bb8ff45426fc8eada39890;hpb=5c1feb2c5fe3962a8c5c1caffb81d6526eedf992;p=github%2Ffretlink%2Fterraform-provider-mailgun.git diff --git a/mailgun/resource_mailgun_domain.go b/mailgun/resource_mailgun_domain.go index eaf00fa..f859230 100644 --- a/mailgun/resource_mailgun_domain.go +++ b/mailgun/resource_mailgun_domain.go @@ -107,29 +107,29 @@ func resourceMailgunDomain() *schema.Resource { "open_tracking_settings_active": &schema.Schema{ Type: schema.TypeBool, Optional: true, - Computed: true, + Default: false, }, "click_tracking_settings_active": &schema.Schema{ Type: schema.TypeBool, Optional: true, - Computed: true, + Default: false, }, "unsubscribe_tracking_settings_active": &schema.Schema{ Type: schema.TypeBool, Optional: true, - Computed: true, + Default: false, }, "unsubscribe_tracking_settings_html_footer": &schema.Schema{ Type: schema.TypeString, Optional: true, - Computed: true, + Default: "\n
\n

unsubscribe

\n", }, "unsubscribe_tracking_settings_text_footer": &schema.Schema{ Type: schema.TypeString, Optional: true, - Computed: true, + Default: "\n\nTo unsubscribe click: <%unsubscribe_url%>\n\n", }, "require_tls": &schema.Schema{ @@ -205,6 +205,14 @@ func resourceMailgunDomain() *schema.Resource { } } +func interfaceToStringTab(i interface{}) []string { + aInterface := i.([]interface{}) + aString := make([]string, len(aInterface)) + for i, v := range aInterface { + aString[i] = v.(string) + } + return aString +} func CreateDomain(d *schema.ResourceData, meta interface{}) error { mg := meta.(*mailgun.MailgunImpl) ctx, cancel := context.WithTimeout(context.Background(), time.Second*30) @@ -218,7 +226,7 @@ func CreateDomain(d *schema.ResourceData, meta interface{}) error { Wildcard: d.Get("wildcard").(bool), ForceDKIMAuthority: d.Get("force_dkim_authority").(bool), DKIMKeySize: d.Get("dkim_key_size").(int), - IPS: d.Get("ips").([]string), + IPS: interfaceToStringTab(d.Get("ips")), }) if err != nil { @@ -417,9 +425,12 @@ func ReadDomain(d *schema.ResourceData, meta interface{}) error { d.Set("unsubscribe_tracking_settings_html_footer", domainTracking.Unsubscribe.HTMLFooter) d.Set("unsubscribe_tracking_settings_text_footer", domainTracking.Unsubscribe.TextFooter) + time.Sleep(25 * time.Second) + ipAddress, err := mg.ListDomainIPS(ctx) + if err != nil { - return fmt.Errorf("Error Getting mailgun domain ips for %s: Error: %s", d.Id(), err) + return fmt.Errorf("Error Getting mailgun domain ips1 for %s: Error: %s", d.Id(), err) } ips := make([]string, len(ipAddress)) for i, r := range ipAddress { @@ -432,7 +443,7 @@ func ReadDomain(d *schema.ResourceData, meta interface{}) error { if err != nil { return fmt.Errorf("Error Getting mailgun credentials for %s: Error: %s", d.Id(), err) } - + credentials := make([]map[string]interface{}, len(credentialsResponse)) for i, r := range credentialsResponse { credentials[i] = make(map[string]interface{})