Module to dynamically update DNS records from multiple services like Hetzner, Amazon, Microsoft...
Project description
dynami
dynami
is a Python package that provides a simple interface for managing DNS records through various providers. Currently, it supports Hetzner as a DNS provider, with more providers to come in future updates.
Installation
You can install dynami via pip:
pip install dynami
Usage
To use dynami
, you must first instantiate a provider and client. Here's an example for Hetzner:
from dynami.provider import Hetzner
from dynami.ext import Client
api_key = "YOUR_API_KEY"
zone = "yourdomain.local"
provider = Hetzner(api_key=api_key, zone=zone)
client = Client(provider)
result = client.set(record="www", type="A", value="0.0.0.0")
if result.status_code < 299 and result.status_code > 199:
print("Success!")
else:
print("Failed!")
This will create an A record for the www subdomain pointing to 0.0.0.0.
Providers
Currently, dynami
only supports Hetzner as a DNS provider. More providers will be added in future updates.
- Hetzner
- Amazon Web Services (AWS)
- Cloudflare
- DigitalOcean
- Google Cloud Platform (GCP)
- Microsoft Azure
Provider configuration
To configure a provider, pass the provider-specific options to its constructor. For Hetzner, these options are:
api_key
: your Hetzner DNS API keyzone
: the name of the DNS zone you want to manage
Client methods
Client
provides the following methods for managing DNS records:
set
: creates or updates a DNS record
Project details
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
File details
Details for the file dynami-1.0.7.tar.gz
.
File metadata
- Download URL: dynami-1.0.7.tar.gz
- Upload date:
- Size: 8.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a44daf8cfc2cbcd4a8b1f1debf7040a88bf12ccc6dcff83803eba6721263d62c |
|
MD5 | b7beaeae8c5dbdbc3d1dafde744e4102 |
|
BLAKE2b-256 | cb1a3b3e267a35ee73e5a514593491877807690ab8daab661c6cc0712753b8da |
File details
Details for the file dynami-1.0.7-py3-none-any.whl
.
File metadata
- Download URL: dynami-1.0.7-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | de7af4e86f96c73f6f8c2d41e119dac3f020936c929ba968a99f8050cd96bbdb |
|
MD5 | 3fc64279c1d9a2a18ded7e344866fe06 |
|
BLAKE2b-256 | 7c3632f9962c0a3c16d04ac03dacb1f85abc36c4e16506fcb9180ae6440f40ae |