adguard-home/tasks/main.yaml
author Luke Hoersten <luke@hoersten.org>
Sun, 05 Feb 2023 11:01:26 -0600
changeset 208 88a7fee5effe
parent 204 fd38efd8f637
child 226 ce33bf94045f
permissions -rw-r--r--
Add jellyfin role.

---

- name: unarchive adguard home
  become: yes
  unarchive:
    remote_src: yes
    src: "{{adguard_home_tar}}"
    dest: "/tmp/"
    creates: "/tmp/AdGuardHome/"
    owner: "root"
    group: "root"

- name: install adguard home binary
  become: yes
  copy:
    src: "/tmp/AdGuardHome/AdGuardHome"
    dest: "/usr/local/bin/"
    remote_src: yes
    owner: "root"
    group: "root"
    mode: "0755"
  notify: restart adguard home

- name: create dirs
  become: yes
  file:
    path: "{{item}}"
    state: "directory"
    owner: "root"
    group: "root"
    mode: "0755"
  loop:
    - "/etc/AdGuardHome"
    - "{{adguard_home_data_dir}}"
  notify: restart adguard home

- name: configure adguard home service
  become: yes
  template: src="AdGuardHome.service.j2" dest="/etc/systemd/system/AdGuardHome.service"
  notify: restart adguard home

- name: configure adguard home
  become: yes
  template: src="AdGuardHome.yaml.j2" dest="/etc/AdGuardHome/AdGuardHome.yaml"
  notify: restart adguard home

- name: check if resolv.conf exists
  stat: path="/etc/resolv.conf"
  register: sym

- name: replace systemd-resolved conf stub
  become: yes
  copy:
    remote_src: yes
    src:  "/run/systemd/resolve/resolv.conf"
    dest: "/etc/resolv.conf"
  when: sym.stat.islnk is defined and sym.stat.islnk

- name: ensure nameserver is self
  become: yes
  lineinfile:
    path: "/etc/resolv.conf"
    regexp: "^nameserver"
    line: "nameserver {{ansible_default_ipv4.address}}"

- name: disable systemd-resolved service
  become: yes
  systemd: name="systemd-resolved.service" enabled="no" state="stopped"

- name: ensure adguard home is started
  become: yes
  systemd: name="AdGuardHome.service" enabled="yes" state="started"