f5-rahm / sewer

Let's Encrypt(ACME) client. Python library & CLI app.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sewer

Codacy Badge CircleCI codecov Code style: black

Sewer is a Let's Encrypt(ACME) client.
It's name is derived from Kenyan hip hop artiste, Kitu Sewer.

Note that with 0.8.3, the promise made elsewhere about stuff changing is starting to come true. --action is still accepted but deprecated, and will be dropped soon. Likewise --dns, replaced by --provider. Some new options have been added, and more of both additional features and breaking changes lie ahead.

PYTHON compatibility: 3.5 is nominally still supported, and with assistance from Github's multi-version Python linting I've caught a couple things. I believe that the main code is 3.5 clean, but there are a few legacy DNS drivers that may not run under 3.5. For 0.8.3 I will fix any reported 3.5 issues, but I suspect this will be the last release to promies that.

sewer maintainer @mmaney can often be found on freenode in ##sewer for those who remember IRC. Don't ask to ask!

Features

Installation

pip3 install sewer

# with All DNS Provider support, include aliyun, Hurricane Electric, Aurora, ACME ...
# pip3 install sewer[alldns]

# with Cloudflare support
# pip3 install sewer[cloudflare]

# with Aliyun support
# pip3 install sewer[aliyun]

# with HE DNS(Hurricane Electric DNS) support
# pip3 install sewer[hurricane]

# with Aurora DNS Support
# pip3 install sewer[aurora]

# with ACME DNS Support
# pip3 install sewer[acmedns]

# with Rackspace DNS Support
# pip3 install sewer[rackspace]

# with DNSPod DNS Support
# pip3 install sewer[dnspod]

# with DuckDNS DNS Support
# pip3 install sewer[duckdns]

# with ClouDNS DNS Support
# pip3 install sewer[cloudns]

# with AWS Route 53 DNS Support
# pip3 install sewer[route53]

# with PowerDNS DNS Support
# pip3 install sewer[powerdns]

sewer(since version 0.5.0) is now python3 only. To install the (now unsupported) python2 version:

pip install sewer==0.3.0

Sewer is in active development and it's API will change in backward incompatible ways. https://pypi.python.org/pypi/sewer

Development setup

See the how to contribute documentation

FAQ

  • Why another ACME client?
    I wanted an ACME client that I could use to programmatically(as a library) acquire/get certificates. However I could not find anything satisfactory for use in Python code.
  • Why is it called Sewer? I really like the Kenyan hip hop artiste going by the name of Kitu Sewer.

About

Let's Encrypt(ACME) client. Python library & CLI app.

License:MIT License


Languages

Language:Python 98.7%Language:Makefile 1.1%Language:Shell 0.2%