69 lines
1.8 KiB
YAML
69 lines
1.8 KiB
YAML
---
|
|
|
|
# mediamtx automatically makes video files from rtmp streams
|
|
|
|
- name: MediaMTX - stop mediamtx_service if running
|
|
systemd:
|
|
name: mediamtx_service.service
|
|
state: stopped
|
|
ignore_errors: yes
|
|
|
|
# Create service Folders
|
|
- name: MediaMTX - create mediamtx_working_folder folder
|
|
file:
|
|
path: "{{ mediamtx_working_folder }}"
|
|
state: directory
|
|
mode: '0755'
|
|
owner: root
|
|
group: root
|
|
|
|
- name: MediaMTX - check for arm
|
|
when: '"arm" in cpu_architecture'
|
|
set_fact:
|
|
mediamtx_architecture: "arm64"
|
|
|
|
- name: MediaMTX - get current release URL
|
|
shell: |
|
|
curl -sL https://api.github.com/repos/bluenviron/mediamtx/releases/latest | \
|
|
grep browser_download_url | grep linux_{{ mediamtx_architecture }} | cut -d\" -f 4
|
|
register: mediamtx_latest_url
|
|
- debug:
|
|
msg: "Current Release URL: {{ mediamtx_latest_url.stdout_lines[0] }}"
|
|
|
|
- name: MediaMTX - get current release archive
|
|
shell: "curl -s -o {{ mediamtx_working_folder }}/mediamtx.tar.gz -L {{ mediamtx_latest_url.stdout_lines[0] }}"
|
|
|
|
- name: MediaMTX - extract archive
|
|
unarchive:
|
|
src: "{{ mediamtx_working_folder }}/mediamtx.tar.gz"
|
|
dest: "{{ mediamtx_working_folder }}"
|
|
mode: '0755'
|
|
remote_src: yes
|
|
|
|
- name: MediaMTX - update configs
|
|
lineinfile:
|
|
path: "{{ mediamtx_working_folder }}/mediamtx.yml"
|
|
search_string: "{{ mediamtx_configs_item.search_string }}"
|
|
line: "{{ mediamtx_configs_item.line }}"
|
|
loop: "{{ mediamtx_configs }}"
|
|
loop_control:
|
|
loop_var: mediamtx_configs_item
|
|
|
|
- name: MediaMTX - create service file
|
|
template:
|
|
src: mediamtx_service.service.j2
|
|
dest: "/etc/systemd/system/mediamtx_service.service"
|
|
mode: 0644
|
|
|
|
- name: MediaMTX - daemon reload
|
|
systemd:
|
|
daemon_reload: yes
|
|
|
|
- name: MediaMTX - enable and start mediamtx_service
|
|
systemd:
|
|
name: mediamtx_service.service
|
|
state: started
|
|
enabled: yes
|
|
|
|
|
|
... |