]>
Commit | Line | Data |
---|---|---|
e17f219a AG |
1 | package mailgun |
2 | ||
3 | import ( | |
4 | "github.com/hashicorp/terraform/helper/schema" | |
5 | "github.com/hashicorp/terraform/terraform" | |
6 | "github.com/mailgun/mailgun-go" | |
7 | ) | |
8 | ||
9 | func Provider() terraform.ResourceProvider { | |
10 | return &schema.Provider{ | |
11 | Schema: map[string]*schema.Schema{ | |
12 | "domain": { | |
13 | Type: schema.TypeString, | |
14 | Required: true, | |
15 | DefaultFunc: schema.EnvDefaultFunc("MAILGUN_DOMAIN", nil), | |
16 | Description: "domain for mailgun.", | |
17 | }, | |
18 | "apikey": { | |
19 | Type: schema.TypeString, | |
20 | Required: true, | |
21 | DefaultFunc: schema.EnvDefaultFunc("MAILGUN_APIKEY", nil), | |
22 | Description: "API Key for mailgun", | |
23 | }, | |
24 | }, | |
25 | ||
26 | ResourcesMap: map[string]*schema.Resource{}, | |
27 | ||
28 | ConfigureFunc: providerConfigure, | |
29 | } | |
30 | } | |
31 | ||
32 | func providerConfigure(d *schema.ResourceData) (interface{}, error) { | |
33 | return mailgun.NewMailgun(d.Get("domain").(string), d.Get("apikey").(string)), nil | |
34 | } |