Skip to main content

Library that implements the acme-dns client communication and persistent account storage on the client host

Project description

A client library to handle acme-dns client communication and persistent account storage.

Installation

Install from PyPI

$ pip install pyacmedns

Usage

The following is a complete example of handling the validation using this library.

#!/usr/bin/env python

from pyacmedns import Client, Storage

whitelisted_networks = ["192.168.11.0/24", "[::1]/128"]
domain = "your.example.org"

# Initialize the client. Point it towards your acme-dns instance.
client = Client("https://auth.acme-dns.io")
# Initialize the storage. If the file does not exist, it will be
# automatically created.
storage = Storage("/path/to/storage.json")

# Check if credentials were previously saved for your domain
account = storage.fetch("your.example.org")
if not account:
    # Account did not exist. Let's create a new one
    # The whitelisted networks parameter is optional
    account = client.register_account(whitelisted_networks)
    # Save it
    storage.put(domain, account)
    storage.save()

# Update the acme-dns TXT record.
client.update_txt_record(account, "___validation_token_recieved_from_the_ca___")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyacmedns, version 0.4
Filename, size File type Python version Upload date Hashes
Filename, size pyacmedns-0.4.tar.gz (3.9 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page