{"id":38503277,"url":"https://github.com/rolehippie/letsencrypt","last_synced_at":"2026-01-17T06:03:36.859Z","repository":{"id":43183881,"uuid":"358197282","full_name":"rolehippie/letsencrypt","owner":"rolehippie","description":"Ansible role to fetch and publish Let's Encrypt certificates","archived":false,"fork":false,"pushed_at":"2026-01-12T12:23:14.000Z","size":267,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-12T18:25:37.802Z","etag":null,"topics":["ansible","ansible-role","hacktoberfest","role"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rolehippie.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-04-15T09:12:37.000Z","updated_at":"2026-01-12T12:23:17.000Z","dependencies_parsed_at":"2023-02-12T02:46:29.500Z","dependency_job_id":"c73b20a0-ebca-492b-a320-7b4fc3156e51","html_url":"https://github.com/rolehippie/letsencrypt","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/rolehippie/letsencrypt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolehippie%2Fletsencrypt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolehippie%2Fletsencrypt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolehippie%2Fletsencrypt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolehippie%2Fletsencrypt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rolehippie","download_url":"https://codeload.github.com/rolehippie/letsencrypt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolehippie%2Fletsencrypt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28501460,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T04:31:57.058Z","status":"ssl_error","status_checked_at":"2026-01-17T04:31:45.816Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","ansible-role","hacktoberfest","role"],"created_at":"2026-01-17T06:03:35.650Z","updated_at":"2026-01-17T06:03:36.845Z","avatar_url":"https://github.com/rolehippie.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# letsencrypt\n\n[![Source Code](https://img.shields.io/badge/github-source%20code-blue?logo=github\u0026logoColor=white)](https://github.com/rolehippie/letsencrypt)\n[![General Workflow](https://github.com/rolehippie/letsencrypt/actions/workflows/general.yml/badge.svg)](https://github.com/rolehippie/letsencrypt/actions/workflows/general.yml)\n[![Readme Workflow](https://github.com/rolehippie/letsencrypt/actions/workflows/docs.yml/badge.svg)](https://github.com/rolehippie/letsencrypt/actions/workflows/docs.yml)\n[![Galaxy Workflow](https://github.com/rolehippie/letsencrypt/actions/workflows/galaxy.yml/badge.svg)](https://github.com/rolehippie/letsencrypt/actions/workflows/galaxy.yml)\n[![License: Apache-2.0](https://img.shields.io/github/license/rolehippie/letsencrypt)](https://github.com/rolehippie/letsencrypt/blob/master/LICENSE)\n[![Ansible Role](https://img.shields.io/badge/role-rolehippie.letsencrypt-blue)](https://galaxy.ansible.com/rolehippie/letsencrypt)\n\nAnsible role to fetch and publish Let's Encrypt certificates.\n\n## Sponsor\n\nBuilding and improving this Ansible role have been sponsored by my current and previous employers like **[Cloudpunks GmbH](https://cloudpunks.de)** and **[Proact Deutschland GmbH](https://www.proact.eu)**.\n\n## Table of contents\n\n- [Requirements](#requirements)\n- [Default Variables](#default-variables)\n  - [letsencrypt_account_email](#letsencrypt_account_email)\n  - [letsencrypt_account_key](#letsencrypt_account_key)\n  - [letsencrypt_cert_city](#letsencrypt_cert_city)\n  - [letsencrypt_cert_country](#letsencrypt_cert_country)\n  - [letsencrypt_cert_organization](#letsencrypt_cert_organization)\n  - [letsencrypt_cert_paths](#letsencrypt_cert_paths)\n  - [letsencrypt_cert_province](#letsencrypt_cert_province)\n  - [letsencrypt_certificates](#letsencrypt_certificates)\n  - [letsencrypt_challenge_mapping](#letsencrypt_challenge_mapping)\n  - [letsencrypt_cluster_enabled](#letsencrypt_cluster_enabled)\n  - [letsencrypt_cluster_nodes](#letsencrypt_cluster_nodes)\n  - [letsencrypt_extra_certs](#letsencrypt_extra_certs)\n  - [letsencrypt_nsupdate_algorithm](#letsencrypt_nsupdate_algorithm)\n  - [letsencrypt_nsupdate_name](#letsencrypt_nsupdate_name)\n  - [letsencrypt_nsupdate_secret](#letsencrypt_nsupdate_secret)\n  - [letsencrypt_nsupdate_server](#letsencrypt_nsupdate_server)\n  - [letsencrypt_production_armed](#letsencrypt_production_armed)\n  - [letsencrypt_reload_services](#letsencrypt_reload_services)\n  - [letsencrypt_request_output](#letsencrypt_request_output)\n  - [letsencrypt_restart_services](#letsencrypt_restart_services)\n- [Discovered Tags](#discovered-tags)\n- [Dependencies](#dependencies)\n- [License](#license)\n- [Author](#author)\n\n---\n\n## Requirements\n\n- Minimum Ansible version: `2.10`\n\n## Default Variables\n\n### letsencrypt_account_email\n\nEmail address used for Let's Encrypt\n\n#### Default value\n\n```YAML\nletsencrypt_account_email: hostmaster@localhost\n```\n\n### letsencrypt_account_key\n\nPath to Let's Encrypt account key\n\n#### Default value\n\n```YAML\nletsencrypt_account_key: account.key\n```\n\n### letsencrypt_cert_city\n\nCity used for the SSL configuration\n\n#### Default value\n\n```YAML\nletsencrypt_cert_city: Nuremberg\n```\n\n### letsencrypt_cert_country\n\nCountry used for the SSL configuration\n\n#### Default value\n\n```YAML\nletsencrypt_cert_country: DE\n```\n\n### letsencrypt_cert_organization\n\nOrganization used for the SSL configuration\n\n#### Default value\n\n```YAML\nletsencrypt_cert_organization: DevOps Team\n```\n\n### letsencrypt_cert_paths\n\nPaths to store the certificates\n\n#### Default value\n\n```YAML\nletsencrypt_cert_paths:\n  - /etc/ssl/letsencrypt\n```\n\n#### Example usage\n\n```YAML\nletsencrypt_cert_paths:\n  - /etc/haproxy/ssl\n  - path: /etc/caddy\n    owner: caddy\n    group: caddy\n    mode: u=rwx,g=x,o=x\n```\n\n### letsencrypt_cert_province\n\nProvince used for the SSL configuration\n\n#### Default value\n\n```YAML\nletsencrypt_cert_province: Bavaria\n```\n\n### letsencrypt_certificates\n\nList of certificate definitions\n\n#### Default value\n\n```YAML\nletsencrypt_certificates: []\n```\n\n#### Example usage\n\n```YAML\nletsencrypt_certificates:\n  - name: foobar\n    challenge: nsupdate\n    common_name: foobar.com\n    alternate_names:\n      - '*.foobar.com'\n  - name: example\n    challenge: http\n    common_name: example.com\n    alternate_names:\n      - sub1.example.com\n      - sub2.example.com\n      - sub3.example.com\n```\n\n### letsencrypt_challenge_mapping\n\nMapping of challenge types\n\n#### Default value\n\n```YAML\nletsencrypt_challenge_mapping:\n  http: http-01\n  nsupdate: dns-01\n```\n\n### letsencrypt_cluster_enabled\n\nEnable clustered mode\n\n#### Default value\n\n```YAML\nletsencrypt_cluster_enabled: false\n```\n\n### letsencrypt_cluster_nodes\n\nList of nodes part of the cluster\n\n#### Default value\n\n```YAML\nletsencrypt_cluster_nodes: []\n```\n\n#### Example usage\n\n```YAML\nletsencrypt_cluster_nodes:\n  - node01\n  - node02\n  - node03\n```\n\n### letsencrypt_extra_certs\n\nAdditional certificates to add\n\n#### Default value\n\n```YAML\nletsencrypt_extra_certs: []\n```\n\n#### Example usage\n\n```YAML\nletsencrypt_extra_certs:\n  - foobar.pem\n  - name: general.pem\n    owner: root\n    group: haproxy\n    mode: u=rwx,g=x,o=x\n```\n\n### letsencrypt_nsupdate_algorithm\n\nTSIG algorithm for nsupdate DNS challenges\n\n#### Default value\n\n```YAML\nletsencrypt_nsupdate_algorithm: hmac-sha512\n```\n\n### letsencrypt_nsupdate_name\n\nTSIG name for nsupdate DNS challenges\n\n#### Default value\n\n```YAML\nletsencrypt_nsupdate_name:\n```\n\n### letsencrypt_nsupdate_secret\n\nTSIG secret for nsupdate DNS challenges\n\n#### Default value\n\n```YAML\nletsencrypt_nsupdate_secret:\n```\n\n### letsencrypt_nsupdate_server\n\nServer used for nsupdate DNS challenges\n\n#### Default value\n\n```YAML\nletsencrypt_nsupdate_server:\n```\n\n### letsencrypt_production_armed\n\nEnable production authority\n\n#### Default value\n\n```YAML\nletsencrypt_production_armed: false\n```\n\n### letsencrypt_reload_services\n\nList of services to reload\n\n#### Default value\n\n```YAML\nletsencrypt_reload_services: []\n```\n\n#### Example usage\n\n```YAML\nletsencrypt_reload_services:\n  - haproxy\n  - apache\n```\n\n### letsencrypt_request_output\n\nPrint cert information after request\n\n#### Default value\n\n```YAML\nletsencrypt_request_output: true\n```\n\n### letsencrypt_restart_services\n\nList of services to restart\n\n#### Default value\n\n```YAML\nletsencrypt_restart_services: []\n```\n\n#### Example usage\n\n```YAML\nletsencrypt_restart_services:\n  - traefik\n```\n\n## Discovered Tags\n\n**_letsencrypt_**\n\n**_skip_ansible_later_**\n\n## Dependencies\n\n- [community.crypto](https://github.com/ansible-collections/community.crypto)\n\n## License\n\nApache-2.0\n\n## Author\n\n[Thomas Boerger](https://github.com/tboerger)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frolehippie%2Fletsencrypt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frolehippie%2Fletsencrypt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frolehippie%2Fletsencrypt/lists"}