Manipulate DNS records on various DNS providers in a standardized/agnostic way
Project description
Manipulate DNS records on various DNS providers in a standardized/agnostic way.
Why using Lexicon?
Lexicon provides a way to manipulate DNS records on multiple DNS providers in a standardized way.
Lexicon can be used as:
a CLI tool:
# Create a TXT entry in domain.net zone hosted by CloudFlare
lexicon cloudflare create domain.net TXT --name foo --content bar
or a Python library:
# Create a TXT entry in domain.net zone hosted by CloudFlare
from lexicon.client import Client
from lexicon.config import ConfigResolver
config = ConfigResolver().with_env().with_dict({
"provider_name" : "cloudflare",
"domain": "domain.net",
})
with Client(config) as operations:
operations.create_record("TXT", "foo", "bar")
Lexicon was designed to be used in automation, specifically letsencrypt.
Supported providers
Only DNS providers who have an API can be supported by lexicon.
The current supported providers are:
Documentation
Online documentation (user guide, configuration reference) is available in the Lexicon documentation.
For a quick start, please have a look in particular at the User guide.
Contributing
If you want to help in the Lexicon development, you are welcome!
Please have a look at the Developer guide page to know how to start.
Licensing
MIT
Logo: transform by Mike Rowe from the Noun Project
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for dns_lexicon-3.18.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aabe320093b4f9a7f7e0e430551ae49c38c9cf99b45ef7e28da238c50106b1a0 |
|
MD5 | 1339074db3b78cd6b1415846a65d22f1 |
|
BLAKE2b-256 | 1d22fc8c9facb428beaa33607f9bb5b09e4b409ef2b22f18f60ca33df6fd9e6d |