NEW PROVIDER: AkamaiEdgeDNS#1174
Conversation
tlimoncelli
left a comment
There was a problem hiding this comment.
It's awesome to see a new provider, especially coming from the company themselves!
Everything looks good so far. I have one big request about the name. See below.
| "api_key": "$DNSMADEEASY_API_KEY", | ||
| "secret_key": "$DNSMADEEASY_SECRET_KEY" | ||
| }, | ||
| "EDGEDNS": { |
There was a problem hiding this comment.
Would you be open to a name that includes Akamai? Outsiders are more familiar with the name Akamai than EdgeDNS.
We learned the hard way that these names are difficult to change. As a result we have "GCLOUD" and "oracle" and "route53" which aren't optimal names. I'd like to make sure we put a lot of thought into any new names.
There was a problem hiding this comment.
Done. Now "akamaiedgedns".
| } | ||
|
|
||
| // AuditRecords returns an error if any records are not supportable by this provider. | ||
| func AuditRecords(records []*models.RecordConfig) error { |
There was a problem hiding this comment.
Please move the function AuditRecords to a file called auditrecords.go`
| ) | ||
|
|
||
| // EDInitialize initializes the "Akamai OPEN EdgeGrid" library | ||
| func EDInitialize(clientSecret string, host string, accessToken string, clientToken string) { |
There was a problem hiding this comment.
Do the the ED* functions need to be exported? They might... I'm just not seeing why right off the bat. You might try changing one and see if go-lint or go-vet complain.
If they don't need to be exported, consider calling the functions initialize, zoneDoesExist, createZone, etc.
There was a problem hiding this comment.
Done. Thanks for catching that!
| zone := &dnsv2.ZoneCreate{ | ||
| Zone: zonename, | ||
| Type: "PRIMARY", | ||
| Comment: "This zone created by DNSControl (https://stackexchange.github.io/dnscontrol/)", |
There was a problem hiding this comment.
Please use the url http://dnscontrol.org instead.
|
I forgot to run 'go generate' before the previous commit. My apologies. |
|
Hi. Is there anything that I need to do before this PR can be merged? Thanks! |
tlimoncelli
left a comment
There was a problem hiding this comment.
Hi! Sorry for the delay. It's been quite a week!
This is nearly ready. I made a few inline comments. One additional thing:
docs/provider-list.mdAdd AKAMAIEDGEDNS along with your git name.
I think that's it!
| layout: default | ||
| jsId: AKAMAIEDGEDNS | ||
| --- | ||
| # Akamai Edge DNS Provider |
There was a problem hiding this comment.
Please leave a blank line before and after any # and before and after any code fence (three ` in a row)
|
|
||
| ## Usage | ||
| A new zone created by DNSControl: | ||
| ``` |
There was a problem hiding this comment.
add a blank line before this and others like it.
|
I think that I made all of the required corrections. If not, I'm happy to do so. |
|
Thank you for contributing this new provider! I'm excited to have Akamai join the DNSControl family! |
|
Tom,
Thank you so much for your expertise and direction!
DNSControl is quite impressive. The documentation is outstanding. The code is outstanding. The test framework is outstanding.
It was a pleasure to code the provider.
Akamai is excited to offer DNSControl to our customers.
Thanks again!
/Steve
|
This PR introduces a provider for Akamai EdgeDNS.
This PR also includes a change to downcase TLSA data. TLSA data is a hexadecimal string and is case insensitive. See pull request 1171.