zepheiryan opened a new pull request #1323: Add Gandi LiveDNS driver
URL: https://github.com/apache/libcloud/pull/1323
 
 
   ## Add Gandi LiveDNS driver
   
   [Gandi](https://gandi.net) released an API for their DNS service completely 
different from their previous XMLRPC implementation.  This contribution adds a 
driver to cover the new service, per 
[LIBCLOUD-949](https://issues.apache.org/jira/browse/LIBCLOUD-949).
   
   ### Description
   
   This is a new driver and does not touch on any of the previous Gandi XMLRPC 
driver code.  The implementation is similar to other providers that use HTTP 
and JSON.
   
   Gandi's [documentation](https://doc.livedns.gandi.net/) is the overall basis 
for the implementation though there are some minor discrepancies in it that 
don't match up to usage experience.  They also left out any documentation of 
errors.
   
   One point of possible confusion is that zones and domains are separate 
classes in this service, which enables reuse of one zone file for multiple 
domains but becomes somewhat difficult to shoehorn into Libcloud's classes, 
especially since what's referred to as a Libcloud zone corresponds to a Gandi 
domain, and nothing really corresponds to a Gandi zone.  There is precedence 
since this is also true of the existing Gandi XMLRPC implementation, which 
appears to me to have chosen to go with ignoring Gandi zones as much as 
possible in favor of domains.  The new Gandi API does allow for this (actions 
taken on a domain will apply to the zone and all related domains behind the 
scenes), but it means things like `delete_zone` and `update_zone` have no real 
meaning - one cannot delete a Gandi domain from the API, and it is basically 
immutable if ignoring Gandi zones - so I didn't implement those methods.
   
   ### Status
   
   Done, ready for review
   
   ### Checklist (tick everything that applies)
   
   - [x] [Code 
linting](http://libcloud.readthedocs.org/en/latest/development.html#code-style-guide)
 (required, can be done after the PR checks)
   - [x] Documentation
   - [x] [Tests](http://libcloud.readthedocs.org/en/latest/testing.html)
   - [x] 
[ICLA](http://libcloud.readthedocs.org/en/latest/development.html#contributing-bigger-changes)
 (required for bigger changes)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to