SSL certificates monitoring, renewal and deployment.
Project description
.. image:: https://github.com/AmadeusITGroup/AutoSSL/actions/workflows/test.yaml/badge.svg?branch=master :target: https://github.com/AmadeusITGroup/AutoSSL/actions
.. image:: https://coveralls.io/repos/AmadeusITGroup/AutoSSL/badge.svg?branch=master :target: https://coveralls.io/r/AmadeusITGroup/AutoSSL?branch=master
.. image:: https://badge.fury.io/py/autossl.svg :target: https://badge.fury.io/py/autossl
.. image:: https://readthedocs.org/projects/autossl/badge?version=latest :target: https://autossl.readthedocs.io?badge=latest
.. image:: https://pepy.tech/badge/autossl :target: https://pepy.tech/badge/autossl
:AutoSSL: Python module to automate SSL certificates monitoring, renewal and deployment
:Copyright: Copyright (c) 2019 Amadeus sas
:License: MIT <https://github.com/AmadeusITGroup/AutoSSL/blob/master/LICENSE>
_
:Documentation: https://autossl.readthedocs.io
:Development: https://github.com/AmadeusITGroup/AutoSSL
What
autossl
is a module for Python 2.7+/3.5+ that can be used to to automate SSL certificate monitoring, renewal and deployment.
This module can be customized with plugins mechanism to support any type of:
- server: where the certificate is deployed, can be 1 or more server, potentially of different types
- storage: where to store your artifacts (private key, public certificate, ...)
- tracking mechanism: how to track renewal process (ticket creation)
- renewal method: how to get a new certificate (local CA, ACME protocol, ....)
It's providing a command line interface with simple actions: check
, renew
, deploy
.
All configuration is provided thanks to blueprints in Yaml
It can then be run by any tool able to use a command line (cron, jenkins pipeline, ...) to manage all your certificates from a central place.
Installation
For a basic installation, just run
$ pip install autossl
to support optional features, you may need extra dependencies, for that install autossl with corresponding keyword
:
$ pip install autossl[keyword]
See available keywords
and associated extra dependencies in table below:
+------------+--------------------------+--------------------------------------+ | keyword | additional dependencies | extra features | +============+==========================+======================================+ | all | all packages below | all features below | +------------+--------------------------+--------------------------------------+ | acme | acme | renewal using ACME protocol | +------------+--------------------------+--------------------------------------+ | git | GitPython | artifacts storage in git repository | +------------+--------------------------+--------------------------------------+
Tests
tests require few more python packages. To install them, run:
$ pip install -r requirements_dev.txt
Clone the repository, then to execute the test suite with your current python version, run:
$ pytest -sv tests
Contributing
Bug Reports
^^^^^^^^^^^
Bug reports are hugely important! Before you raise one, though,
please check through the GitHub issues <https://github.com/AmadeusITGroup/AutoSSL/issues>
_,
both open and closed, to confirm that the bug hasn't been reported before.
Feature Requests
^^^^^^^^^^^^^^^^
If you think a feature is missing and could be useful in this module, feel free to raise a feature request through the
GitHub issues <https://github.com/AmadeusITGroup/AutoSSL/issues>
_
Code Contributions
^^^^^^^^^^^^^^^^^^
When contributing code, please follow this project-agnostic contribution guide <http://contribution-guide.org/>
_.
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 autossl-0.9.5.tar.gz
.
File metadata
- Download URL: autossl-0.9.5.tar.gz
- Upload date:
- Size: 53.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bb93f96c10e5508f1d9e39230ad1a0c2a6e003a7111b22dd3f12ec8d4157add |
|
MD5 | a320eaa791ab1bf6861dfb33a579ccca |
|
BLAKE2b-256 | 5b2161be45c37cb1faebabd98ed5e5d67515ba29a20ca0823174091136c4cca2 |
File details
Details for the file autossl-0.9.5-py3-none-any.whl
.
File metadata
- Download URL: autossl-0.9.5-py3-none-any.whl
- Upload date:
- Size: 68.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1a72a5b3adb5ee1c9aee5ecc536ea24ab2e1228ff670e54172d54a2d06ac126 |
|
MD5 | 6d481ab11249e57ec076478c3375005f |
|
BLAKE2b-256 | 8c000e1e77605be5b9ee6c9b5e0869cda96fb9e39baa19db0ce35b37988b4048 |