From 208dafdbcf5ba5eab47f00dfefad2749bd775faa Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Tue, 4 Jun 2024 19:06:12 +0200 Subject: switch form apt-cacher-ng to approx --- roles/approx/tasks/main.yml | 85 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 roles/approx/tasks/main.yml (limited to 'roles/approx/tasks') diff --git a/roles/approx/tasks/main.yml b/roles/approx/tasks/main.yml new file mode 100644 index 00000000..f913120f --- /dev/null +++ b/roles/approx/tasks/main.yml @@ -0,0 +1,85 @@ +--- +- name: prepare storage volume for approx + when: approx_storage is defined + vars: + storage_volume: "{{ approx_storage | combine({'dest': approx_basepath}) }}" + include_role: + name: "storage/{{ approx_storage.type }}/volume" + +- name: install approx + apt: + name: approx + state: present + +- name: make sure cache and tmp directories exist + loop: + - cache + - tmp + file: + state: directory + path: "{{ approx_basepath }}/{{ item }}" + mode: 0700 + owner: approx + group: approx + +- name: generate approx config + copy: + content: | + # ansible managed + + {% for name, remote in approx_backends.items() %} + {{ name }} {{ remote }} + {% endfor %} + + $cache {{ approx_basepath }}/cache + dest: /etc/approx/approx.conf + +- name: create override directories for approx systemd units + loop: + - approx@.service + - approx.socket + file: + state: directory + path: "/etc/systemd/system/{{ item }}.d" + +- name: create appprox service override + copy: + content: | + # ansible managed + [Unit] + CollectMode=inactive-or-failed + + [Service] + Environment=TMPDIR="{{ approx_basepath }}/tmp" + dest: /etc/systemd/system/approx@.service.d/ansible.conf + notify: restart approx socket + +- name: create appprox socket override + copy: + content: | + # ansible managed + [Socket] + ListenStream= + ListenStream=127.0.0.1:19999 + dest: /etc/systemd/system/approx.socket.d/ansible.conf + notify: restart approx socket + +- name: make sure approx socket is started + systemd: + daemon_reload: yes + name: approx.socket + state: started + +- name: configure nginx vhost + vars: + nginx_vhost: + default: yes + name: approx + template: generic + hostnames: + - "{{ approx_hostname }}" + locations: + '/': + proxy_pass: http://127.0.0.1:19999 + include_role: + name: nginx/vhost -- cgit v1.2.3