Skip to content

Commit

Permalink
provider/clc: vendor deps, update to match latest SDK API
Browse files Browse the repository at this point in the history
  • Loading branch information
phinze authored and ack committed Mar 21, 2016
1 parent 7775cc8 commit c4b2322
Show file tree
Hide file tree
Showing 24 changed files with 1,890 additions and 16 deletions.
49 changes: 49 additions & 0 deletions Godeps/Godeps.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 12 additions & 8 deletions builtin/providers/clc/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package clc
import (
"fmt"
"log"
"net/url"
"strconv"

clc "github.com/CenturyLinkCloud/clc-sdk"
Expand Down Expand Up @@ -59,18 +60,21 @@ func Provider() terraform.ResourceProvider {
func providerConfigure(d *schema.ResourceData) (interface{}, error) {
un := d.Get("username").(string)
pw := d.Get("password").(string)
ac := d.Get("account").(string)
url := d.Get("url").(string)

config, config_err := api.NewConfig(un, pw, ac, url)
if config_err != nil {
return nil, fmt.Errorf("Failed to create CLC config with provided details: %v", config_err)
config, err := api.NewConfig(un, pw)
if err != nil {
return nil, fmt.Errorf("Failed to create CLC config with provided details: %v", err)
}
if urlStr := d.Get("url").(string); urlStr != "" {
uri, err := url.Parse(urlStr)
if err == nil {
config.BaseURL = uri
}
}
config.UserAgent = "terraform-clc"
config.UserAgent = fmt.Sprintf("terraform-clc terraform/%s", terraform.Version)

client := clc.New(config)
err := client.Authenticate()
if err != nil {
if err := client.Authenticate(); err != nil {
return nil, fmt.Errorf("Failed authenticated with provided credentials: %v", err)
}

Expand Down
12 changes: 8 additions & 4 deletions builtin/providers/clc/resource_clc_group.go
Original file line number Diff line number Diff line change
Expand Up @@ -137,12 +137,16 @@ func resourceCLCGroupUpdate(d *schema.ResourceData, meta interface{}) error {
if err != nil {
return fmt.Errorf("Failed updating group %v: %v", id, err)
}
return resource.Retry(1*time.Minute, func() error {
return resource.Retry(1*time.Minute, func() *resource.RetryError {
_, err := client.Group.Get(id)
if err == nil {
return resourceCLCGroupRead(d, meta)
if err != nil {
return resource.RetryableError(err)
}
return &resource.RetryError{Err: err}
err = resourceCLCGroupRead(d, meta)
if err != nil {
return resource.NonRetryableError(err)
}
return nil
})
}

Expand Down
12 changes: 8 additions & 4 deletions builtin/providers/clc/resource_clc_load_balancer.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,16 @@ func resourceCLCLoadBalancerCreate(d *schema.ResourceData, meta interface{}) err
return fmt.Errorf("Failed creating load balancer under %v/%v: %v", dc, name, err)
}
d.SetId(l.ID)
return resource.Retry(1*time.Minute, func() error {
return resource.Retry(1*time.Minute, func() *resource.RetryError {
_, err := client.LB.Get(dc, l.ID)
if err == nil {
return resourceCLCLoadBalancerRead(d, meta)
if err != nil {
return resource.RetryableError(err)
}
err = resourceCLCLoadBalancerRead(d, meta)
if err != nil {
return resource.NonRetryableError(err)
}
return &resource.RetryError{Err: err}
return nil
})
}

Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit c4b2322

Please sign in to comment.