StackExchange / dnscontrol

Infrastructure as code for DNS!
https://dnscontrol.org/
MIT License
3.08k stars 390 forks source link

Route53 SDK Update Breaks our Code #210

Closed captncraig closed 6 years ago

captncraig commented 6 years ago

On updating the aws package with govendor fetch github.com/aws/aws-sdk-go/... in the vendor directory, dnscontrol fails to build:

providers\route53\route53Provider.go:16:2: cannot find package "github.com/aws/aws-sdk-go/private/waiter" in any of:
        D:\gopath\src\github.com\StackExchange\dnscontrol\vendor\github.com\aws\aws-sdk-go\private\waiter (vendor tree)
        C:\Go\src\github.com\aws\aws-sdk-go\private\waiter (from $GOROOT)
        D:\gopath\src\github.com\aws\aws-sdk-go\private\waiter (from $GOPATH)

It appears that the sdk removed the waiter package. It breaks our code that waits for nameserver changes to propagate. Alternate functionality may be available with the this package (but the warnings there don't help me, and I can't seem to find the right way to use that), or by calling GetOperationDetail yourself in a loop.

I'm really not sure what the best practice is for this. The api seems real odd to me. I'm also not opposed to just removing the wait code if its too much hassle.

I don't have any domains with them, or I'd be very interested in testing actual latency to see how big a concern this waiting actually is. If the worst case is we make a few redundant corrections because they lag, I may be ok with that.

cc @maclennann

maclennann commented 6 years ago

:cry: though I'm not surprised.

The general latency for operations I ran into in the handful of tests I ran while writing the original PR was 1 minute at most (generally 30-45 seconds).

I have no issue with simply removing the wait code and documenting the oddity with an eye toward potentially adding an alternate waiter if it ends up becoming confusing and/or a problem for folks.

tlimoncelli commented 6 years ago

Any volunteers? R53 is a very popular provider and we don't want to diverge too far from their SDK.

maclennann commented 6 years ago

I can take it if no one else gets to it first, but I won't have time until early next week. If no one else has officially claimed it by then, I'll start in on it.

captncraig commented 6 years ago

It's really just removing some code. I'll take care of it real quick.

tlimoncelli commented 6 years ago

Status?

masterzen commented 6 years ago

@tlimoncelli it seems it has been done in commit ccf28349ceac9a32fce5d406ce777b6371d285a3.

tlimoncelli commented 6 years ago

Great! I'm closing this.