--- # 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