2018-04-25 20:19:34 +02:00
|
|
|
from flask import current_app
|
2018-04-20 23:49:54 +02:00
|
|
|
from lemur import database
|
2018-04-11 01:04:07 +02:00
|
|
|
from lemur.dns_providers.models import DnsProviders
|
|
|
|
|
|
|
|
|
2018-04-20 23:49:54 +02:00
|
|
|
def render(args):
|
2018-04-11 01:04:07 +02:00
|
|
|
"""
|
2018-04-20 23:49:54 +02:00
|
|
|
Helper that helps us render the REST Api responses.
|
|
|
|
:param args:
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
query = database.session_query(DnsProviders)
|
|
|
|
|
|
|
|
return database.sort_and_page(query, DnsProviders, args)
|
|
|
|
|
|
|
|
|
|
|
|
def get(dns_provider_id):
|
|
|
|
"""
|
|
|
|
Retrieves a dns provider by its lemur assigned ID.
|
2018-04-11 01:04:07 +02:00
|
|
|
|
2018-04-20 23:49:54 +02:00
|
|
|
:param dns_provider_id: Lemur assigned ID
|
|
|
|
:rtype : DnsProvider
|
2018-04-11 01:04:07 +02:00
|
|
|
:return:
|
|
|
|
"""
|
2018-04-20 23:49:54 +02:00
|
|
|
return database.get(DnsProviders, dns_provider_id)
|
|
|
|
|
|
|
|
|
|
|
|
def delete(dns_provider_id):
|
|
|
|
"""
|
|
|
|
Deletes a DNS provider.
|
|
|
|
|
|
|
|
:param dns_provider_id: Lemur assigned ID
|
|
|
|
"""
|
2018-04-24 18:38:57 +02:00
|
|
|
database.delete(get(dns_provider_id))
|
2018-04-25 20:19:34 +02:00
|
|
|
|
|
|
|
|
|
|
|
def get_types():
|
|
|
|
provider_config = current_app.config.get('ACME_DNS_PROVIDER_TYPES')
|
|
|
|
if not provider_config:
|
|
|
|
raise Exception("No DNS Provider configuration specified.")
|
|
|
|
return provider_config
|