mirror of
https://github.com/github/octodns.git
synced 2024-05-11 05:55:00 +00:00
f-strings for SelectelProvider
This commit is contained in:
@@ -39,7 +39,7 @@ class SelectelProvider(BaseProvider):
|
||||
API_URL = 'https://api.selectel.ru/domains/v1'
|
||||
|
||||
def __init__(self, id, token, *args, **kwargs):
|
||||
self.log = getLogger('SelectelProvider[{}]'.format(id))
|
||||
self.log = getLogger(f'SelectelProvider[{id}]')
|
||||
self.log.debug('__init__: id=%s', id)
|
||||
super(SelectelProvider, self).__init__(id, *args, **kwargs)
|
||||
|
||||
@@ -55,7 +55,7 @@ class SelectelProvider(BaseProvider):
|
||||
def _request(self, method, path, params=None, data=None):
|
||||
self.log.debug('_request: method=%s, path=%s', method, path)
|
||||
|
||||
url = '{}{}'.format(self.API_URL, path)
|
||||
url = f'{self.API_URL}{path}'
|
||||
resp = self._sess.request(method, url, params=params, json=data)
|
||||
|
||||
self.log.debug('_request: status=%s', resp.status_code)
|
||||
@@ -69,7 +69,7 @@ class SelectelProvider(BaseProvider):
|
||||
return resp.json()
|
||||
|
||||
def _get_total_count(self, path):
|
||||
url = '{}{}'.format(self.API_URL, path)
|
||||
url = f'{self.API_URL}{path}'
|
||||
resp = self._sess.request('HEAD', url)
|
||||
return int(resp.headers['X-Total-Count'])
|
||||
|
||||
@@ -101,12 +101,11 @@ class SelectelProvider(BaseProvider):
|
||||
zone_name = desired.name[:-1]
|
||||
for change in changes:
|
||||
class_name = change.__class__.__name__
|
||||
getattr(self, '_apply_{}'.format(class_name).lower())(zone_name,
|
||||
change)
|
||||
getattr(self, f'_apply_{class_name}'.lower())(zone_name, change)
|
||||
|
||||
def _apply_create(self, zone_name, change):
|
||||
new = change.new
|
||||
params_for = getattr(self, '_params_for_{}'.format(new._type))
|
||||
params_for = getattr(self, f'_params_for_{new._type}')
|
||||
for params in params_for(new):
|
||||
self.create_record(zone_name, params)
|
||||
|
||||
@@ -178,7 +177,7 @@ class SelectelProvider(BaseProvider):
|
||||
return {
|
||||
'ttl': records[0]['ttl'],
|
||||
'type': _type,
|
||||
'values': ['{}.'.format(r['content']) for r in records],
|
||||
'values': [f'{r["content"]}.' for r in records],
|
||||
}
|
||||
|
||||
def _data_for_MX(self, _type, records):
|
||||
@@ -186,7 +185,7 @@ class SelectelProvider(BaseProvider):
|
||||
for record in records:
|
||||
values.append({
|
||||
'preference': record['priority'],
|
||||
'exchange': '{}.'.format(record['content']),
|
||||
'exchange': f'{record["content"]}.',
|
||||
})
|
||||
return {
|
||||
'ttl': records[0]['ttl'],
|
||||
@@ -199,7 +198,7 @@ class SelectelProvider(BaseProvider):
|
||||
return {
|
||||
'ttl': only['ttl'],
|
||||
'type': _type,
|
||||
'value': '{}.'.format(only['content'])
|
||||
'value': f'{only["content"]}.',
|
||||
}
|
||||
|
||||
def _data_for_TXT(self, _type, records):
|
||||
@@ -216,7 +215,7 @@ class SelectelProvider(BaseProvider):
|
||||
'priority': record['priority'],
|
||||
'weight': record['weight'],
|
||||
'port': record['port'],
|
||||
'target': '{}.'.format(record['target']),
|
||||
'target': f'{record["target"]}.',
|
||||
})
|
||||
|
||||
return {
|
||||
@@ -239,7 +238,7 @@ class SelectelProvider(BaseProvider):
|
||||
values[name][record['type']].append(record)
|
||||
for name, types in values.items():
|
||||
for _type, records in types.items():
|
||||
data_for = getattr(self, '_data_for_{}'.format(_type))
|
||||
data_for = getattr(self, f'_data_for_{_type}')
|
||||
data = data_for(_type, records)
|
||||
record = Record.new(zone, name, data, source=self,
|
||||
lenient=lenient)
|
||||
@@ -260,7 +259,7 @@ class SelectelProvider(BaseProvider):
|
||||
return domains
|
||||
|
||||
def zone_records(self, zone):
|
||||
path = '/{}/records/'.format(zone.name[:-1])
|
||||
path = f'/{zone.name[:-1]}/records/'
|
||||
zone_records = []
|
||||
|
||||
total_count = self._get_total_count(path)
|
||||
@@ -288,24 +287,24 @@ class SelectelProvider(BaseProvider):
|
||||
else:
|
||||
domain_id = self.create_domain(zone_name)['id']
|
||||
|
||||
path = '/{}/records/'.format(domain_id)
|
||||
path = f'/{domain_id}/records/'
|
||||
return self._request('POST', path, data=data)
|
||||
|
||||
def delete_record(self, domain, _type, zone):
|
||||
self.log.debug('Delete record. Domain: %s, Type: %s', domain, _type)
|
||||
|
||||
domain_id = self._domain_list[domain]['id']
|
||||
records = self._zone_records.get('{}.'.format(domain), False)
|
||||
records = self._zone_records.get(f'{domain}.', False)
|
||||
if not records:
|
||||
path = '/{}/records/'.format(domain_id)
|
||||
path = f'/{domain_id}/records/'
|
||||
records = self._request('GET', path)
|
||||
|
||||
for record in records:
|
||||
full_domain = domain
|
||||
if zone:
|
||||
full_domain = '{}{}'.format(zone, domain)
|
||||
full_domain = f'{zone}{domain}'
|
||||
if record['type'] == _type and record['name'] == full_domain:
|
||||
path = '/{}/records/{}'.format(domain_id, record['id'])
|
||||
path = f'/{domain_id}/records/{record["id"]}'
|
||||
return self._request('DELETE', path)
|
||||
|
||||
self.log.debug('Delete record failed (Record not found)')
|
||||
|
Reference in New Issue
Block a user