]>
Commit | Line | Data |
---|---|---|
478e1338 | 1 | package statuscake |
2 | ||
3 | import ( | |
4eeeab64 | 4 | "github.com/DreamItGetIT/statuscake" |
478e1338 | 5 | "github.com/hashicorp/terraform/helper/schema" |
6 | "github.com/hashicorp/terraform/terraform" | |
7 | ) | |
8 | ||
9 | func Provider() terraform.ResourceProvider { | |
10 | return &schema.Provider{ | |
11 | Schema: map[string]*schema.Schema{ | |
689f520e | 12 | "username": { |
478e1338 | 13 | Type: schema.TypeString, |
14 | Required: true, | |
15 | DefaultFunc: schema.EnvDefaultFunc("STATUSCAKE_USERNAME", nil), | |
16 | Description: "Username for StatusCake Account.", | |
17 | }, | |
689f520e | 18 | "apikey": { |
478e1338 | 19 | Type: schema.TypeString, |
20 | Required: true, | |
21 | DefaultFunc: schema.EnvDefaultFunc("STATUSCAKE_APIKEY", nil), | |
22 | Description: "API Key for StatusCake", | |
23 | }, | |
24 | }, | |
25 | ||
26 | ResourcesMap: map[string]*schema.Resource{ | |
27 | "statuscake_test": resourceStatusCakeTest(), | |
82cbfd58 | 28 | "statuscake_ssl": resourceStatusCakeSsl(), |
478e1338 | 29 | }, |
30 | ||
31 | ConfigureFunc: providerConfigure, | |
32 | } | |
33 | } | |
34 | ||
35 | func providerConfigure(d *schema.ResourceData) (interface{}, error) { | |
4eeeab64 | 36 | auth := statuscake.Auth{ |
b8f05dfc | 37 | Username: d.Get("username").(string), |
38 | Apikey: d.Get("apikey").(string), | |
39 | } | |
4eeeab64 | 40 | return statuscake.New(auth) |
478e1338 | 41 | } |