mirror of
https://github.com/github/octodns.git
synced 2024-05-11 05:55:00 +00:00
added HetznerClient._replace_at to address the "@"/"" record name problem
This commit is contained in:
@@ -77,24 +77,34 @@ class HetznerClient(object):
|
||||
def zone_delete(self, zone_id):
|
||||
return self._do('DELETE', '/zones/' + zone_id)
|
||||
|
||||
def _replace_at(self, record):
|
||||
record['name'] = '' if record['name'] == '@' else record['name']
|
||||
return record
|
||||
|
||||
def zone_records_get(self, zone_id):
|
||||
params = {'zone_id': zone_id}
|
||||
# No need to handle pagination as it returns all records by default.
|
||||
return self._do('GET', '/records', params=params)['records']
|
||||
return [
|
||||
self._replace_at(record)
|
||||
for record in self._do('GET', '/records', params=params)['records']
|
||||
]
|
||||
|
||||
def zone_record_get(self, record_id):
|
||||
return self._do('GET', '/records/' + record_id)['record']
|
||||
record = self._do('GET', '/records/' + record_id)['record']
|
||||
return self._replace_at(record)
|
||||
|
||||
def zone_record_create(self, zone_id, name, _type, value, ttl=None):
|
||||
data = {'name': name, 'ttl': ttl, 'type': _type, 'value': value,
|
||||
data = {'name': name or '@', 'ttl': ttl, 'type': _type, 'value': value,
|
||||
'zone_id': zone_id}
|
||||
return self._do('POST', '/records', data=data)['record']
|
||||
record = self._do('POST', '/records', data=data)['record']
|
||||
return self._replace_at(record)
|
||||
|
||||
def zone_record_update(self, zone_id, record_id, name, _type, value,
|
||||
ttl=None):
|
||||
data = {'name': name, 'ttl': ttl, 'type': _type, 'value': value,
|
||||
data = {'name': name or '@', 'ttl': ttl, 'type': _type, 'value': value,
|
||||
'zone_id': zone_id}
|
||||
return self._do('PUT', '/records/' + record_id, data=data)['record']
|
||||
record = self._do('PUT', '/records/' + record_id, data=data)['record']
|
||||
return self._replace_at(record)
|
||||
|
||||
def zone_record_delete(self, zone_id, record_id):
|
||||
return self._do('DELETE', '/records/' + record_id)
|
||||
|
||||
Reference in New Issue
Block a user