60 lines
1.3 KiB
YAML
60 lines
1.3 KiB
YAML
---
|
|
# tasks file for haproxy
|
|
|
|
- name: Install packages
|
|
ansible.builtin.apt:
|
|
name:
|
|
- haproxy
|
|
- rsync
|
|
- sudo
|
|
become: true
|
|
|
|
- name: Make dhparams.pem
|
|
community.crypto.openssl_dhparam:
|
|
path: "{{ haproxy_dhparams_path }}"
|
|
size: 2048
|
|
owner: root
|
|
group: root
|
|
mode: u=rw,g=r,o=r
|
|
become: true
|
|
|
|
- name: Deploy error files
|
|
ansible.posix.synchronize:
|
|
src: "{{ haproxy_errorfiles_src }}"
|
|
dest: "{{ haproxy_errorfiles_dst }}"
|
|
recursive: true
|
|
rsync_opts:
|
|
- "--chmod=u=rwX,g=rX,o=rX"
|
|
- "--chown=root:root"
|
|
- "--exclude=.git"
|
|
- "--exclude=.gitignore"
|
|
- "--exclude=LICENSE"
|
|
- "--exclude=README.md"
|
|
when: haproxy_errorfiles_src | length > 0
|
|
become: true
|
|
notify: Restart haproxy.service
|
|
|
|
- name: Create certificates path
|
|
ansible.builtin.file:
|
|
path: "{{ haproxy_certs_path }}"
|
|
owner: root
|
|
group: root
|
|
mode: u=rwX,g=,o=
|
|
state: directory
|
|
|
|
- name: Import tasks to manage certificates with acme.sh
|
|
ansible.builtin.import_tasks:
|
|
file: acmesh.yml
|
|
when: haproxy_acmesh | length > 0
|
|
|
|
- name: Deploy haproxy.cfg
|
|
ansible.builtin.template:
|
|
src: haproxy.cfg.j2
|
|
dest: /etc/haproxy/haproxy.cfg
|
|
owner: root
|
|
group: root
|
|
mode: u=rw,g=r,o=r
|
|
validate: haproxy -f %s -c
|
|
become: true
|
|
notify: Restart haproxy.service
|