diff --git a/roles/os_agent_auto_update/defaults/main.yml b/roles/os_agent_auto_update/defaults/main.yml index ce349b0..3186767 100644 --- a/roles/os_agent_auto_update/defaults/main.yml +++ b/roles/os_agent_auto_update/defaults/main.yml @@ -1,5 +1,5 @@ --- # defaults file for os_agent_auto_update os_agent_auto_update_playbook_dir: /home/homeassistant/playbooks/ -os_agent_ansible_playbook_cmd_dir: /root/.local/bin/ +os_agent_ansible_playbook_cmd_dir: /usr/bin/ os_agent_auto_update_install_ansible: true diff --git a/roles/os_agent_auto_update/files/update_os_agent.yml b/roles/os_agent_auto_update/files/update_os_agent.yml index ad9a9ed..330731c 100644 --- a/roles/os_agent_auto_update/files/update_os_agent.yml +++ b/roles/os_agent_auto_update/files/update_os_agent.yml @@ -20,11 +20,9 @@ register: os_agent_latest_url failed_when: os_agent_latest_url.stdout is not search('os-agent_.*_linux_.*.deb') changed_when: false - check_mode: no - args: - warn: false + check_mode: false - name: Install os-agent apt: deb: "{{ os_agent_latest_url.stdout|trim }}" - become: true \ No newline at end of file + become: true diff --git a/roles/os_agent_auto_update/tasks/main.yml b/roles/os_agent_auto_update/tasks/main.yml index 000f172..c2f8838 100644 --- a/roles/os_agent_auto_update/tasks/main.yml +++ b/roles/os_agent_auto_update/tasks/main.yml @@ -13,10 +13,12 @@ mode: 0700 - name: ensure ansible is installed - pip: - name: ansible<=2.10 - extra_args: --user - executable: pip3 + apt: + name: + - python3-ansible + state: present + update_cache: yes + become: true when: os_agent_auto_update_install_ansible|bool - name: schedule periodic update of OS Agent diff --git a/roles/supervised_install/README.md b/roles/supervised_install/README.md index 794794e..87d1795 100644 --- a/roles/supervised_install/README.md +++ b/roles/supervised_install/README.md @@ -6,19 +6,27 @@ Install Home Assistant Supervised on Raspberry Pi 4 running Debian 11 (bullseye) Requirements ------------ -Python Packages: - -- docker - OS Packages: - python3-apt +- python3-docker - debconf - debconf-utils Role Variables -------------- +Optional variables with example configurations + +```yaml +# Used to create overrides for resolve.conf to fix DNS resolution +# If not set, then no resolve.conf overrides will be created +# ref: https://github.com/home-assistant/supervised-installer/issues/339 +supervised_install_resolve_conf_overrides: | + DNS=192.168.68.1 + DNSStubListener=no +``` + Variables used from fact gathering - ansible_pkg_mgr: Used to validate that apt is available, since it is used by this role to install OS packages diff --git a/roles/supervised_install/tasks/main.yml b/roles/supervised_install/tasks/main.yml index b0286d0..bbce5c4 100644 --- a/roles/supervised_install/tasks/main.yml +++ b/roles/supervised_install/tasks/main.yml @@ -12,15 +12,20 @@ - name: Install OS package prereqs # noqa 403 apt: name: - - jq - - wget + - apparmor + - bluez + - cifs-utils - curl - - udisks2 + - dbus + - jq - libglib2.0-bin + - lsb-release - network-manager - - dbus - - apparmor-utils + - nfs-common - systemd-journal-remote + - systemd-resolved + - udisks2 + - wget state: latest update_cache: yes @@ -54,6 +59,30 @@ regex: 'precedence ::ffff:0:0/96 100' line: 'precedence ::ffff:0:0/96 100' +- name: Configure DNS resolution + block: + - name: Create resolve.conf drop in directory + ansible.builtin.file: + path: /etc/systemd/resolve.conf.d + state: directory + mode: 0755 + + - name: Create resolve.conf override config + ansible.builtin.copy: + content: | + [Resolve] + {{ supervised_install_resolve_conf_overrides }} + dest: /etc/systemd/resolve.conf.d/resolve.conf + mode: 0644 + register: resolve_conf_override_result + + - name: Restart systemd-resolved + ansible.builtin.service: + name: systemd-resolved + state: restarted + when: resolve_conf_override_result is changed + when: supervised_install_resolve_conf_overrides is defined + - name: Get download url for latest os-agent .deb release shell: | curl -s https://api.github.com/repos/home-assistant/os-agent/releases/latest \ diff --git a/roles/supervised_install/tasks/requirements.yml b/roles/supervised_install/tasks/requirements.yml index 0290d59..cad3040 100644 --- a/roles/supervised_install/tasks/requirements.yml +++ b/roles/supervised_install/tasks/requirements.yml @@ -1,10 +1,11 @@ --- -- name: Install pip requirements for supervised_install - pip: +- name: Install python package requirements for supervised_install + apt: name: - - docker - executable: pip3 - extra_args: --user + - python3-docker + state: present + update_cache: yes + become: true - name: Install OS package requirements for supervised_install # noqa 403 apt: