mirror of
https://gitlab.sectorq.eu/jaydee/ansible.git
synced 2025-01-23 12:38:11 +00:00
139 lines
4.5 KiB
YAML
Executable File
139 lines
4.5 KiB
YAML
Executable File
- hosts: datacenter
|
|
name: Install mqtt_srv
|
|
ignore_unreachable: false
|
|
ignore_errors: true
|
|
vars:
|
|
dest_folder: "/share/Public/ans_repo"
|
|
tasks:
|
|
# - name: Install python3-pip
|
|
# ansible.builtin.apt:
|
|
# name:
|
|
# - python3-pip
|
|
# update_cache: yes
|
|
|
|
# when: inventory_hostname not in groups['nas'] and inventory_hostname not in groups['router']
|
|
# become: "{{ 'no' if inventory_hostname in groups['nas'] else 'yes' }}"
|
|
- name: include vault
|
|
ansible.builtin.include_vars:
|
|
file: ../jaydee.yml
|
|
- name: Delete content & directory
|
|
ansible.builtin.file:
|
|
state: absent
|
|
path: "{{ dest_folder }}"
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
- name: GIT pull
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
tags:
|
|
- git_pull
|
|
git:
|
|
repo: "https://{{ git_user | urlencode }}:{{ git_password_mqtt | urlencode }}@gitlab.sectorq.eu/jaydee/mqtt_srv.git"
|
|
dest: "{{ dest_folder }}"
|
|
update: yes
|
|
clone: yes
|
|
version: main
|
|
- debug:
|
|
msg: "{{ inventory_hostname }}"
|
|
|
|
- name: Upload service config
|
|
ansible.builtin.copy:
|
|
src: "{{ dest_folder }}/mqtt_srv.service"
|
|
dest: /etc/systemd/system/mqtt_srv.service
|
|
remote_src: true
|
|
when: inventory_hostname != 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|
|
|
|
|
|
- name: Upload service script
|
|
ansible.builtin.copy:
|
|
src: "{{ dest_folder }}/mqtt_srv.py"
|
|
dest: /usr/bin/mqtt_srv.py
|
|
mode: '755'
|
|
owner: root
|
|
remote_src: true
|
|
when: inventory_hostname != 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|
|
- name: Upload service script config
|
|
ansible.builtin.copy:
|
|
src: "{{ dest_folder }}/mqtt_srv.cfg"
|
|
dest: /etc/mqtt_srv/mqtt_srv.cfg
|
|
mode: '755'
|
|
owner: root
|
|
remote_src: true
|
|
when: inventory_hostname != 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|
|
# - name: Upload service script1
|
|
# ansible.builtin.copy:
|
|
# src: scripts/mqtt_srv.sh
|
|
# dest: /jffs/scripts/mqtt_srv/
|
|
# mode: '755'
|
|
# owner: admin
|
|
# when: inventory_hostname in groups['router']
|
|
# become: false
|
|
|
|
|
|
# - name: Upload service script
|
|
# ansible.builtin.copy:
|
|
# src: scripts/mqtt_srv.py
|
|
# dest: /jffs/scripts/mqtt_srv/
|
|
# mode: '755'
|
|
# owner: admin
|
|
# when: inventory_hostname in groups['router']
|
|
# become: false
|
|
|
|
- name: Upload service script1
|
|
ansible.builtin.copy:
|
|
src: "{{ dest_folder }}/mqtt_srv.sh"
|
|
dest: /etc/init.d/
|
|
mode: '755'
|
|
owner: admin
|
|
remote_src: true
|
|
when: inventory_hostname == 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
- debug:
|
|
msg: "{{ dest_folder }}"
|
|
- name: Upload service script2
|
|
ansible.builtin.copy:
|
|
src: "{{ dest_folder }}/mqtt_srv.py"
|
|
dest: /usr/bin/mqtt_srv.py
|
|
mode: '755'
|
|
owner: admin
|
|
remote_src: true
|
|
when: inventory_hostname == 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
- name: Install bottle python package
|
|
ansible.builtin.shell: pip install {{ item }} --break-system-packages
|
|
loop:
|
|
- paho-mqtt
|
|
- getmac
|
|
- ping3
|
|
- psutil
|
|
- autorandr
|
|
when: inventory_hostname != 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|
|
- name: Just force systemd to reread configs (2.4 and above)
|
|
ansible.builtin.systemd:
|
|
daemon_reload: true
|
|
when: inventory_hostname != 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|
|
|
|
- name: Restart mqtt_srv service
|
|
ansible.builtin.service:
|
|
name: mqtt_srv.service
|
|
state: restarted
|
|
enabled: true
|
|
when: inventory_hostname != 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|
|
- name: Restart mqtt service
|
|
ansible.builtin.shell: "(/etc/init.d/mqtt_srv.sh restart >/dev/null 2>&1 &)"
|
|
async: 10
|
|
poll: 0
|
|
when: inventory_hostname == 'nas.home.lan'
|
|
become: "{{ 'no' if inventory_hostname == 'nas.home.lan' else 'yes' }}"
|
|
|