{ "info": { "author": "Joel Gerber", "author_email": "joel@grrbrr.ca", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6", "Topic :: Internet :: Name Service (DNS)", "Topic :: Security :: Cryptography", "Topic :: System :: Systems Administration", "Topic :: Utilities" ], "description": "lets-do-dns\n===========\nThis program's purpose is to function as a manual authentication and\ncleanup hook for the Let's Encrypt EFF_\\'s certbot_ client program when you\nwish to use ACME-DNS authentication during the certificate authentication\nprocess, while also using DigitalOcean_\\'s DNS infrastructure for the\ncreation and removal of the ACME-DNS required DNS TXT records. This program\nalso supports being passed a command string that will be called during the\ncleanup hook stage of the authentication process.\n\nInstallation\n------------\nInstallation of this program is quite easy, as it only has one external\ndependency, and this program includes this dependency in its setup.py\nfile.\n\nThat said, there are 4 ways that you can install this program;\n\n* The first is via the normal means, that is, PyPI via PIP as so:\n\n .. code-block:: bash\n\n pip install lets-do-dns\n\n* You can also install this program from a clone of the source\n repository, as so (remember, if you want to modify the source code\n without re-installing, pass the ``-e`` flag to PIP):\n\n .. code-block:: bash\n\n pip install .\n\n* You can also use Docker to install/run this program. You can do this\n like so when grabbing from the Docker Hub:\n\n .. code-block:: bash\n\n docker pull jitsusama/lets-do-dns\n\n* Finally, you can build the image from a clone of the source\n repository like so:\n\n .. code-block:: bash\n\n docker build -t jitsusama/lets-do-dns .\n\nUsage\n-----\nMake sure you pass the ``DO_APIKEY`` and ``DO_DOMAIN`` environment\nvariables to certbot when it is called. Tell certbot to load this program\nby passing its name to certbot via the ``--manual-auth-hook`` and the\n``--manual-cleanup-hook`` CLI arguments.\n\nIf you would also like for this program to call your own program during\nthe cleanup hook stage, make sure you pass the ``LETS_DO_POSTCMD``\nenvironment variable to certbot as well, specifying the invocation string\nof your program.\n\nHere's an example of how you can use this program from the CLI when\nyou installed the program via PIP:\n\n.. code-block:: bash\n\n DO_APIKEY=super-secret-key \\\n DO_DOMAIN=mydomain.com \\\n LETS_DO_POSTCMD='echo ${CERTBOT_DOMAIN} > command_output.txt' \\\n certbot certonly --manual -d myhostname.mydomain.com \\\n --preferred-challenges dns \\\n --manual-auth-hook lets-do-dns \\\n --manual-cleanup-hook lets-do-dns\n\nHere's an example of how you can use this program from Docker when\nyou pulled the image from the Docker Hub:\n\n.. code-block:: bash\n\n docker run -v \"$(pwd)/my-cert-dir:/etc/letsencrypt\" \\\n -e \"DO_APIKEY=super-secret-key\" \\\n -e \"DO_DOMAIN=mydomain.com\" \\\n -e 'LETS_DO_POSTCMD=\"echo ${CERTBOT_DOMAIN} > /etc/letsencrypt/command_output.txt\"' \\\n jitsusama/lets-do-dns \\\n certonly --manual -d myhostname.mydomain.com \\\n --preferred-challenges dns \\\n --manual-auth-hook lets-do-dns \\\n --manual-cleanup-hook lets-do-dns\n\n.. _EFF: https://eff.org\n.. _certbot: https://certbot.eff.org\n.. _ACME-DNS: https://tools.ietf.org/html/draft-ietf-acme-acme-06#section-8.4\n.. _DigitalOcean: https://digitalocean.com\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/jitsusama/lets-do-dns/releases/download/v0.10.3/lets-do-dns-0.10.3.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jitsusama/lets-do-dns", "keywords": "certbot,letsencrypt,DigitalOcean,DNS,SSL", "license": "Apache-2.0", "maintainer": "", "maintainer_email": "", "name": "lets-do-dns", "package_url": "https://pypi.org/project/lets-do-dns/", "platform": "", "project_url": "https://pypi.org/project/lets-do-dns/", "project_urls": { "Download": "https://github.com/jitsusama/lets-do-dns/releases/download/v0.10.3/lets-do-dns-0.10.3.tar.gz", "Homepage": "https://github.com/jitsusama/lets-do-dns" }, "release_url": "https://pypi.org/project/lets-do-dns/0.10.3/", "requires_dist": [ "dnspython", "requests" ], "requires_python": "", "summary": "A letsencrypt certbot auth/cleanup hook program engineered to handle hostname ownership authentication via DigitalOcean's DNS system.", "version": "0.10.3" }, "last_serial": 3038326, "releases": { "0.10.1": [ { "comment_text": "", "digests": { "md5": "a071137115b6b488c62393fd53c36638", "sha256": "e30e2c6ecd1f762d36c393b92fd7085f365c7bb6ecb7665286c5aed13236fd1e" }, "downloads": -1, "filename": "lets_do_dns-0.10.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "a071137115b6b488c62393fd53c36638", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13922, "upload_time": "2017-06-09T02:49:43", "url": "https://files.pythonhosted.org/packages/af/31/5cb36a9bb75100b8c08b4e41859e473f5e3c0be4c34445954ea78f58d547/lets_do_dns-0.10.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8b77a49ebf6c076876ea8722c7520cf3", "sha256": "d1cf01a933b24a70edff7eb1753ffbcfa8a9511f52d99f49a8eee8acdd2ae33a" }, "downloads": -1, "filename": "lets-do-dns-0.10.1.tar.gz", "has_sig": true, "md5_digest": "8b77a49ebf6c076876ea8722c7520cf3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7477, "upload_time": "2017-06-09T02:49:29", "url": "https://files.pythonhosted.org/packages/09/15/d7860257361a4495145d8186299711274a712fbe2ba6dbe3980873028d3d/lets-do-dns-0.10.1.tar.gz" } ], "0.10.2": [ { "comment_text": "", "digests": { "md5": "50ef048b7b98b5d4d0e66a566fc78a8f", "sha256": "3683b46b757de0ca41e43ea6cc165083002f8f24c7735f17c04f63b353d9ccfd" }, "downloads": -1, "filename": "lets_do_dns-0.10.2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "50ef048b7b98b5d4d0e66a566fc78a8f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13361, "upload_time": "2017-07-21T02:29:09", "url": "https://files.pythonhosted.org/packages/40/8f/014b052877d3b5bef4fcb703300f5ef21789fd490969b88d2c7d31a1b028/lets_do_dns-0.10.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44671ef6a3f97e4bfe2b097ad4e02c94", "sha256": "8b9196ca8c02eea0178d372dbfdcf25973c54e2ff1c68ec5733c477c113c5ab0" }, "downloads": -1, "filename": "lets-do-dns-0.10.2.tar.gz", "has_sig": true, "md5_digest": "44671ef6a3f97e4bfe2b097ad4e02c94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7498, "upload_time": "2017-07-21T02:28:50", "url": "https://files.pythonhosted.org/packages/c2/2c/4c35eb04b0c599035a996ab21d6f00a9225fe07769454e7adbcfc85e3b74/lets-do-dns-0.10.2.tar.gz" } ], "0.10.3": [ { "comment_text": "", "digests": { "md5": "443951617057090c93f03164b92b6817", "sha256": "3428cad4b8540a5d4281c6c583200b8228be75254583bfbe4f1f2fd3f3ae5821" }, "downloads": -1, "filename": "lets_do_dns-0.10.3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "443951617057090c93f03164b92b6817", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13408, "upload_time": "2017-07-21T03:14:37", "url": "https://files.pythonhosted.org/packages/4e/6c/0252b672fb14a6c13ad19ce7c64d7520a62fbede21ff666f386c26ed7b99/lets_do_dns-0.10.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d50bd6b2e85fc7ee6f2278ac9eeb98d2", "sha256": "532e9f9f81f85ce688047957b7c322929215b32fba3055b1e17ab6a3221acb12" }, "downloads": -1, "filename": "lets-do-dns-0.10.3.tar.gz", "has_sig": true, "md5_digest": "d50bd6b2e85fc7ee6f2278ac9eeb98d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7545, "upload_time": "2017-07-21T03:14:48", "url": "https://files.pythonhosted.org/packages/16/d6/186f5fa105372bf32d1fe132046f21e658640f6c6b0d69c649557a22150c/lets-do-dns-0.10.3.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "886c61f8e5ad185ff4c8a46c7dd1263b", "sha256": "e9fa803317f4dda4fe3d400a78b3fec3e59dc9a12425d25985c344d641e80d72" }, "downloads": -1, "filename": "lets_do_dns-0.9.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "886c61f8e5ad185ff4c8a46c7dd1263b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12607, "upload_time": "2017-06-07T01:57:12", "url": "https://files.pythonhosted.org/packages/c9/8a/2e0416c4a3b7b427a7f34e140691bec139a932f75175b428be827ec2e2f7/lets_do_dns-0.9.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "699e5770561a5301a69056fd4786597b", "sha256": "66a34565b224a72d32ac40727729679b4cf54f00c6d0d6b1636c4d40ffa5a480" }, "downloads": -1, "filename": "lets-do-dns-0.9.0.tar.gz", "has_sig": true, "md5_digest": "699e5770561a5301a69056fd4786597b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7055, "upload_time": "2017-06-07T01:57:15", "url": "https://files.pythonhosted.org/packages/72/1b/536dca9114e559c950cc8119e37e9a92dae1b4593e226c6b266444ff24e3/lets-do-dns-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "443951617057090c93f03164b92b6817", "sha256": "3428cad4b8540a5d4281c6c583200b8228be75254583bfbe4f1f2fd3f3ae5821" }, "downloads": -1, "filename": "lets_do_dns-0.10.3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "443951617057090c93f03164b92b6817", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13408, "upload_time": "2017-07-21T03:14:37", "url": "https://files.pythonhosted.org/packages/4e/6c/0252b672fb14a6c13ad19ce7c64d7520a62fbede21ff666f386c26ed7b99/lets_do_dns-0.10.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d50bd6b2e85fc7ee6f2278ac9eeb98d2", "sha256": "532e9f9f81f85ce688047957b7c322929215b32fba3055b1e17ab6a3221acb12" }, "downloads": -1, "filename": "lets-do-dns-0.10.3.tar.gz", "has_sig": true, "md5_digest": "d50bd6b2e85fc7ee6f2278ac9eeb98d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7545, "upload_time": "2017-07-21T03:14:48", "url": "https://files.pythonhosted.org/packages/16/d6/186f5fa105372bf32d1fe132046f21e658640f6c6b0d69c649557a22150c/lets-do-dns-0.10.3.tar.gz" } ] }