1
0
Fork 0

Use homeassistant_become and homeassistant_become_user variables

This commit is contained in:
Daniele Tricoli 2021-05-28 00:38:38 +02:00
parent 3a4e7c0e24
commit 4526839207
2 changed files with 92 additions and 84 deletions

View File

@ -1,4 +1,7 @@
---
homeassistant_become: true
homeassistant_become_user: root
homeassistant_dir: /srv/homeassistant
is_a_raspberrypi: false

View File

@ -1,5 +1,7 @@
---
- name: install homeassistant dependencies
- block:
- name: install homeassistant dependencies
apt:
name:
- autoconf
@ -15,12 +17,12 @@
update_cache: true
cache_valid_time: 3600
- name: ensure homeassistant group exits
- name: ensure homeassistant group exits
group:
name: homeassistant
system: true
- name: ensure homeassistant user exists and has restrictive settings
- name: ensure homeassistant user exists and has restrictive settings
user:
name: homeassistant
groups: homeassistant
@ -29,11 +31,11 @@
system: true
shell: /usr/sbin/nologin
- name: get available groups
- name: get available groups
getent:
database: group
- name: add homeassistant user to ssl-cert group
- name: add homeassistant user to ssl-cert group
user:
name: homeassistant
groups: ssl-cert
@ -41,21 +43,21 @@
become: true
when: homeassistant_add_to_ssl_cert_group and "ssl-cert" in ansible_facts.getent_group
- name: add homeassistant user to dialout, gpio and i2c groups
- name: add homeassistant user to dialout, gpio and i2c groups
user:
name: homeassistant
groups: dialout,gpio,i2c
append: true
when: is_a_raspberrypi
- name: install wheel and homeassistant inside a virtualenv
- name: install wheel and homeassistant inside a virtualenv
pip:
name:
- wheel
- homeassistant
virtualenv: "{{ homeassistant_dir }}"
- name: ensure homeassistant owns "{{ homeassistant_dir }}"
- name: ensure homeassistant owns "{{ homeassistant_dir }}"
file:
path: "{{ homeassistant_dir }}"
state: directory
@ -63,29 +65,29 @@
owner: homeassistant
group: homeassistant
- name: install homeassistant systemd unit file
- name: install homeassistant systemd unit file
template:
src: etc/systemd/system/homeassistant.service.j2
dest: /etc/systemd/system/homeassistant.service
notify:
- systemctl daemon-reload
- name: systemctl enable homeassistant
- name: systemctl enable homeassistant
systemd:
name: homeassistant
enabled: true
- name: ensure homeassistant is running
- name: ensure homeassistant is running
systemd:
name: homeassistant
state: started
- name: Wait for port 8123
- name: Wait for port 8123
wait_for:
port: 8123
delay: 10
- name: add custom TLS settings in configuration.yaml
- name: add custom TLS settings in configuration.yaml
blockinfile:
path: /srv/homeassistant/.homeassistant/configuration.yaml
marker: "# {mark} ANSIBLE TLS SETTINGS"
@ -95,3 +97,6 @@
ssl_key: /var/lib/dehydrated/certs/{{ domains[0].cname }}/privkey.pem
when: homeassistant_add_to_ssl_cert_group and "ssl-cert" in ansible_facts.getent_group
notify: systemctl restart homeassistant
become: "{{ homeassistant_become }}"
become_user: "{{ homeassistant_become_user }}"