twindb_cloudflare package¶
Submodules¶
twindb_cloudflare.twindb_cloudflare module¶
-
class
twindb_cloudflare.twindb_cloudflare.
CloudFlare
(email, auth_key, api_endpoint='https://api.cloudflare.com/client/v4')[source]¶ Bases:
object
Class to work with CloudFlare API https://api.cloudflare.com/
-
auth_key
¶ See “API Key” on https://www.cloudflare.com/a/account/my-account
Returns: CloudFlare email
-
create_dns_record
(name, zone, content, data=None, record_type='A', ttl=1)[source]¶ Create a new DNS record for a zone.
Parameters: - name – DNS record name - “example.com”
- zone – zone name
- content – DNS record content - “127.0.0.1”
- data –
Optional parameters for DNS record. For example, an SRV record for etcd server needs this:
{ "name": "twindb.com", "port": 2380, "priority": 0, "proto": "_tcp", "service": "_etcd-server", "target": "node0.twindb.com", "weight": 0 }
- record_type – DNS record type - “A”.
- ttl – Time to live for DNS record. Value of 1 is ‘automatic’
Raise: CloudFlareException if error
-
delete_dns_record
(name, zone)[source]¶ Delete DNS record
Parameters: - name – DNS record name
- zone – zone name
Raise: CloudFlareException if error
-
email
¶ See “API Key” on https://www.cloudflare.com/a/account/my-account
Returns: CloudFlare authentication key
-
get_record_id
(domain_name, zone_id)[source]¶ Get record id by its name
Parameters: - domain_name – DNS record name “example.com”
- zone_id – zone identified (returned by get_zone_id())
Returns: id of the record
Raise: CloudFlareException if record is not found or other error
-
get_zone_id
(name)[source]¶ Get zone id of a given zone
Parameters: name – zone name Returns: id of the zone Raise: CloudFlareException if zone is not found or other error
-
update_dns_record
(name, zone, content, record_type='A', ttl=1)[source]¶ Update DNS record
Parameters: - name – domain name
- zone – zone identifier
- content – content of DNS record. For A records that would be IP address
- record_type – DNS record type. “A” by default
- ttl – TTL of DNS record. 1 by default
Raise: CloudFlareException if record is not found or other error
-