19 lines
848 B
YAML
19 lines
848 B
YAML
---
|
|
# This role sets up a Let's Encrypt certificate for the
|
|
# Mastodon instance
|
|
|
|
- name: Make TLS certificate storage directory
|
|
file: name=/etc/ssl/letsencrypt/ state=directory
|
|
- name: Make sure /opt exists
|
|
file: name=/opt state=directory
|
|
- name: Clone acme.sh repository
|
|
git:
|
|
repo: https://github.com/Neilpang/acme.sh.git
|
|
dest: /opt/acme.sh
|
|
- name: Install acme.sh
|
|
shell: cd /opt/acme.sh && ./acme.sh --install
|
|
- name: Generate certificate using acme.sh
|
|
shell: /root/.acme.sh/acme.sh --issue --standalone -d {{ LOCAL_DOMAIN }} --pre-hook "service nginx stop"
|
|
- name: Install certificate in storage directory
|
|
shell: /root/.acme.sh/acme.sh --install-cert -d {{ LOCAL_DOMAIN }} --key-file /etc/ssl/letsencrypt/{{ LOCAL_DOMAIN }}.pem --fullchain-file /etc/ssl/letsencrypt/{{ LOCAL_DOMAIN }}.crt --reloadcmd "service nginx restart"
|