summaryrefslogtreecommitdiff
path: root/roles/web/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'roles/web/tasks')
-rw-r--r--roles/web/tasks/certificate.yml15
-rw-r--r--roles/web/tasks/sites/ip.yml7
2 files changed, 22 insertions, 0 deletions
diff --git a/roles/web/tasks/certificate.yml b/roles/web/tasks/certificate.yml
new file mode 100644
index 0000000..5d25a63
--- /dev/null
+++ b/roles/web/tasks/certificate.yml
@@ -0,0 +1,15 @@
+- name: Request SSL certificate from Let's Encrypt
+ shell: |
+ # Make task independent: if nginx is already running, stop it and then
+ # start back on exit.
+ [ -f /var/run/nginx.pid ] && systemctl stop nginx
+ trap "systemctl start nginx" EXIT
+ certbot certonly \
+ --standalone \
+ --agree-tos \
+ --renew-by-default \
+ --email webmaster@ilvokhin.com \
+ --rsa-key-size 4096 \
+ -d {{ domains | join(' -d ') }}
+ args:
+ creates: '/etc/letsencrypt/live/{{ domains | first }}/fullchain.pem'
diff --git a/roles/web/tasks/sites/ip.yml b/roles/web/tasks/sites/ip.yml
new file mode 100644
index 0000000..a9d2d32
--- /dev/null
+++ b/roles/web/tasks/sites/ip.yml
@@ -0,0 +1,7 @@
+- name: Configure nginx for ip.ilvokhin.com
+ ansible.builtin.copy:
+ src: roles/web/files/sites/ip.ilvokhin.com
+ dest: /etc/nginx/sites-available
+ owner: root
+ group: root
+ mode: u+rw,g+r,o+r