228 lines
5.7 KiB
YAML
228 lines
5.7 KiB
YAML
- name: Test playbook
|
|
hosts: P01
|
|
|
|
# vars_files:
|
|
# - secret
|
|
vars:
|
|
# addr: "192.168.122.245"
|
|
|
|
handlers:
|
|
- name: restart NM
|
|
ansible.builtin.service:
|
|
name: NetworkManager
|
|
state: restarted
|
|
|
|
tasks:
|
|
- name: Ping hosts
|
|
ansible.builtin.ping:
|
|
|
|
|
|
- name: set eth0 static IP
|
|
become: true
|
|
community.general.nmcli:
|
|
conn_name: "Multimedia network"
|
|
ifname: eth0
|
|
type: ethernet
|
|
ip4: "{{ static_ip }}/{{ static_mask }}"
|
|
gw4: "{{ static_routers }}"
|
|
state: present
|
|
#notify: restart NM
|
|
|
|
|
|
- name: Install pkgs
|
|
become: true
|
|
apt:
|
|
name:
|
|
- python3-pip
|
|
- mosquitto
|
|
- nginx
|
|
state: latest
|
|
|
|
- name: pip install
|
|
pip:
|
|
break_system_packages: true
|
|
name:
|
|
- poetry
|
|
|
|
|
|
- name: check for script directory
|
|
file:
|
|
path: "/home/pi/pyServices"
|
|
state: directory
|
|
|
|
|
|
- name: Copy poetry conf
|
|
#become: true
|
|
ansible.builtin.copy:
|
|
#seuser: root
|
|
src: "../{{ item }}"
|
|
dest: "/home/pi/pyServices/{{ item }}"
|
|
owner: pi
|
|
group: pi
|
|
mode: '0644'
|
|
backup: yes
|
|
loop:
|
|
- poetry.lock
|
|
- pyproject.toml
|
|
- README.md
|
|
|
|
|
|
- name: template config.toml
|
|
ansible.builtin.template:
|
|
src: ./conf.j2
|
|
dest: /home/pi/pyServices/malinaConfig.toml
|
|
|
|
- name: copy python scripts
|
|
#become: true
|
|
ansible.builtin.copy:
|
|
src: "../{{ item }}"
|
|
dest: "/home/pi/pyServices"
|
|
owner: pi
|
|
group: pi
|
|
mode: '0644'
|
|
backup: yes
|
|
loop:
|
|
- barco_telnet/barco_G62_control.py
|
|
- extron_audio_matrix/extron_audio_matrix_telnet_control.py
|
|
- extron_audio_matrix/extron_audio_matrix_telnet_interpreter.py
|
|
- projector_motors/projector_motors.py
|
|
- tse_serial/tse_serial_controler.py
|
|
- tse_serial/tse_serial_interpreter.py
|
|
# - config.toml # bruh
|
|
|
|
|
|
- name: poetry installation
|
|
ansible.builtin.shell:
|
|
cmd: "poetry install"
|
|
chdir: "/home/pi/pyServices"
|
|
|
|
- name: mosquitto service and reload
|
|
become: true
|
|
ansible.builtin.systemd_service:
|
|
name: mosquitto.service
|
|
state: started
|
|
daemon_reload: true
|
|
|
|
|
|
- name: generate systemd services
|
|
become: true
|
|
block:
|
|
- name: barco services
|
|
when: barco_G62 is defined
|
|
block:
|
|
- name: template service
|
|
vars:
|
|
script_file: "/home/pi/pyServices/barco_G62_control.py %i"
|
|
ansible.builtin.template:
|
|
src: ./service.j2
|
|
dest: /lib/systemd/system/barco@.service
|
|
- name: enable service
|
|
ansible.builtin.systemd_service:
|
|
name: "{{item}}"
|
|
enabled: true
|
|
state: started
|
|
loop:
|
|
- barco@main.service
|
|
- barco@side.service
|
|
|
|
- name: template projector motors service
|
|
when: projector_motors is defined
|
|
block:
|
|
- name: template service
|
|
vars:
|
|
script_file: "/home/pi/pyServices/projector_motors.py"
|
|
ansible.builtin.template:
|
|
src: ./service.j2
|
|
dest: /lib/systemd/system/projector_motors.service
|
|
- name: enable service
|
|
ansible.builtin.systemd_service:
|
|
name: projector_motors.service
|
|
enabled: true
|
|
state: started
|
|
|
|
- name: template tse serial box service
|
|
when: tse_box is defined
|
|
block:
|
|
- name: template service
|
|
vars:
|
|
script_file: "/home/pi/pyServices/tse_serial_controler.py"
|
|
ansible.builtin.template:
|
|
src: ./service.j2
|
|
dest: /lib/systemd/system/tse_box.service
|
|
- name: enable service
|
|
ansible.builtin.systemd_service:
|
|
name: tse_box.service
|
|
enabled: true
|
|
state: started
|
|
|
|
|
|
|
|
# - name: Copy barco config
|
|
# become: true
|
|
# ansible.builtin.copy:
|
|
# #seuser: root
|
|
# src: "./{{ item }}"
|
|
# dest: /lib/systemd/system
|
|
# owner: root
|
|
# group: root
|
|
# mode: '0644'
|
|
# #backup: yes
|
|
# loop:
|
|
# - barco@.service
|
|
# #- extron_audio.service
|
|
# # - mqtt_init.service
|
|
# - projector_motors.service
|
|
# # - tse_box.service
|
|
|
|
|
|
|
|
- name: Copy mosqitconfig
|
|
become: true
|
|
ansible.builtin.copy:
|
|
#seuser: root
|
|
src: ../mosquitto.conf
|
|
dest: /etc/mosquitto/conf.d
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
backup: yes
|
|
|
|
# - name: set env
|
|
# become: true
|
|
# ansible.builtin.lineinfile:
|
|
# dest: "/etc/environment"
|
|
# state: present
|
|
# regexp: "^{{ item.key }}="
|
|
# line: "{{ item.key }}={{ item.value }}"
|
|
# with_items: "{{ os_environment }}"
|
|
|
|
- name: copy frontend to webroot
|
|
become: true
|
|
|
|
ansible.builtin.copy:
|
|
src: /home/kat/Documents/polzp/fri_multimedia_rework/frontend/vju_display/dist/
|
|
#src: /home/kat/fri_multimedia_rework/frontend/vju_display/dist
|
|
#remote_src: true
|
|
#dest: /srv/www
|
|
dest: /var/www/html/
|
|
#dest: /home/kat/testoa
|
|
owner: root
|
|
group: root
|
|
mode: '0755'
|
|
backup: yes
|
|
|
|
# - name: enable modules
|
|
# become: true
|
|
# ansible.builtin.systemd_service:
|
|
# #name: "{{[ 'barco@main.service', 'barco@side.service' ]}}"
|
|
# name: "{{ item }}"
|
|
# state: stopped
|
|
# enabled: false
|
|
# loop:
|
|
# - barco@main.service
|
|
# - barco@side.service
|
|
# # - extron_audio.service
|
|
# # - mqtt_init.service
|
|
# - projector_motors.service
|
|
# # - tse_box.service
|
|
|