--- /dev/null
+- name: homeassistant
+ hosts: domoticamachines
+ tasks:
+ - name: create HA user
+ user:
+ name: "domotica"
+ comment: "Home Assistant"
+ system: yes
+ shell: "/sbin/nologin"
+ become: true
+ - name: create HA directory
+ file:
+ path: "/home/domotica/ha/"
+ state: directory
+ mode: 02775
+ owner: "domotica"
+ group: "domotica"
+ become: true
+
+ - name: install required python modules (pre-install)
+ pip:
+ name: "{{ item }}"
+ extra_args: "--upgrade"
+ virtualenv: "/home/domotica/ha/"
+ with_items:
+ - colorlog
+ become: true
+ - name: install defined version of Home Assistant
+ pip:
+ name: homeassistant
+ version: "2024.2.2"
+ virtualenv: "/home/domotica/ha/"
+ when: ha_version is defined
+ become: true
+ - name: install latest version of Home Assistant
+ pip:
+ name: homeassistant
+ extra_args: "--upgrade"
+ virtualenv: "/home/domotica/ha/"
+ when: ha_version is undefined
+ become: true
+ - name: install homeassistant startup script
+ template:
+ src: homeassistant
+ dest: "/usr/local/etc/rc.d/homeassistant"
+ owner: root
+ group: wheel
+ mode: 0755
+ become: true
+ - name: start home assistant
+ community.general.sysrc:
+ name: homeassistant_enable
+ value: "YES"
+ become: true
+ - name: Start homeassistant
+ ansible.builtin.service:
+ name: homeassistant
+ state: started
+ become: true
--- /dev/null
+- name: Install libs7comm.so
+ hosts: domoticamachines
+ tasks:
+ - name: Install git
+ community.general.pkgng:
+ name: git
+ state: present
+ become: true
+ - name: Install gmake
+ community.general.pkgng:
+ name: gmake
+ state: present
+ become: true
+ - name: Git checkout
+ ansible.builtin.git:
+ repo: 'https://github.com/kprovost/libs7comm.git'
+ dest: /home/kp/libs7comm
+ - name: Build libs7comm
+ ansible.builtin.command:
+ cmd: /usr/local/bin/gmake -C /home/kp/libs7comm/src CC=cc LD=cc CXX=c++ s7get/s7get
+ creates: /home/kp/libs7comm/src/s7get/s7get
+ - name: Install libs7comm.so.0.0.1
+ ansible.builtin.copy:
+ src: /home/kp/libs7comm/src/lib/libs7comm.so.0.0.1
+ dest: /usr/local/lib/libs7comm.so.0.0.1
+ remote_src: yes
+ become: true
+ - name: Install libs7comm.so.0.0
+ ansible.builtin.file:
+ src: libs7comm.so.0.0.1
+ dest: /usr/local/lib/libs7comm.so.0.0
+ state: link
+ become: true
-- name: Install packages
- hosts: domoticamachines
- tasks:
- - name: create HA user
- user:
- name: "domotica"
- comment: "Home Assistant"
- system: yes
- shell: "/sbin/nologin"
- become: true
- - name: create HA directory
- file:
- path: "/home/domotica/ha/"
- state: directory
- mode: 02775
- owner: "domotica"
- group: "domotica"
- become: true
-
- - name: install required python modules (pre-install)
- pip:
- name: "{{ item }}"
- extra_args: "--upgrade"
- virtualenv: "/home/domotica/ha/"
- with_items:
- - colorlog
- become: true
- - name: install defined version of Home Assistant
- pip:
- name: homeassistant
- version: "2024.2.2"
- virtualenv: "/home/domotica/ha/"
- when: ha_version is defined
- become: true
- - name: install latest version of Home Assistant
- pip:
- name: homeassistant
- extra_args: "--upgrade"
- virtualenv: "/home/domotica/ha/"
- when: ha_version is undefined
- become: true
- - name: install homeassistant startup script
- template:
- src: homeassistant
- dest: "/usr/local/etc/rc.d/homeassistant"
- owner: root
- group: wheel
- mode: 0755
- become: true
- - name: start home assistant
- community.general.sysrc:
- name: homeassistant_enable
- value: "YES"
- become: true
- - name: Start homeassistant
- ansible.builtin.service:
- name: homeassistant
- state: started
- become: true
+- name: homeassistant
+ import_playbook: homeassistant.yaml
+- name: libs7comm
+ import_playbook: libs7comm.yaml