mirror of
https://git.lapiole.org/dani/ansible-roles.git
synced 2025-08-03 23:26:58 +02:00
Update to 2024-07-22 23:00
This commit is contained in:
@@ -3,10 +3,9 @@
|
||||
jitsi_root_dir: /opt/jitsi
|
||||
jitsi_jibri_user: jibri
|
||||
|
||||
jitsi_jibri_git_url: https://github.com/jitsi/jibri.git
|
||||
|
||||
# Should ansible manage upgrades or only initial install
|
||||
jitsi_jibri_manage_upgrade: "{{ jitsi_manage_upgrade | default(True) }}"
|
||||
jitsi_jibri_version: "{{ jitsi_version | default('9584') }}"
|
||||
# Jibri as no release, nor tag, so use master
|
||||
jitsi_jibri_archive_url: https://github.com/jitsi/jibri/archive/refs/heads/master.tar.gz
|
||||
|
||||
jitsi_jibri_domain: "{{ jitsi_domain | default(inventory_hostname) }}"
|
||||
jitsi_jibri_auth_domain: "{{ jitsi_auth_domain | default('auth.' ~ jitsi_domain) }}"
|
||||
|
@@ -5,4 +5,6 @@
|
||||
loop:
|
||||
- "{{ jitsi_root_dir }}/tmp/chromedriver-linux64.zip"
|
||||
- "{{ jitsi_root_dir }}/tmp/chromedriver-linux64"
|
||||
- "{{ jitsi_root_dir }}/tmp/jibri-master.tar.gz"
|
||||
- "{{ jitsi_root_dir }}/tmp/jibri-master"
|
||||
tags: jitsi
|
||||
|
@@ -1,5 +1,15 @@
|
||||
---
|
||||
|
||||
# Detect jibri version, if already installed
|
||||
- block:
|
||||
- import_tasks: ../includes/webapps_set_install_mode.yml
|
||||
vars:
|
||||
- root_dir: "{{ jitsi_root_dir }}"
|
||||
- version: "{{ jitsi_jibri_version }}"
|
||||
- version_file: ansible_jibri_version
|
||||
- set_fact: jitsi_jibri_install_mode={{ install_mode }}
|
||||
tags: jitsi
|
||||
|
||||
- name: Generate a random pass for jibri
|
||||
block:
|
||||
- import_tasks: ../includes/get_rand_pass.yml
|
||||
@@ -18,11 +28,6 @@
|
||||
when: jitsi_jibri_recorder_xmpp_pass is not defined
|
||||
tags: jitsi
|
||||
|
||||
- name: Check if jibri is built
|
||||
stat: path={{ jitsi_root_dir }}/jibri/jibri.jar
|
||||
register: jitsi_jibri_jar
|
||||
tags: jitsi
|
||||
|
||||
- name: Check if ChromeDriver is installed
|
||||
stat: path=/usr/local/bin/chromedriver
|
||||
register: jitsi_jibri_chromedriver_bin
|
||||
|
@@ -3,7 +3,7 @@
|
||||
- name: Install dependencies
|
||||
package:
|
||||
name:
|
||||
- java-11-openjdk
|
||||
- java-17-openjdk
|
||||
- git
|
||||
- ffmpeg
|
||||
- curl
|
||||
@@ -23,51 +23,14 @@
|
||||
state: latest
|
||||
tags: jitsi
|
||||
|
||||
- name: Detect exact JRE version
|
||||
command: rpm -q java-11-openjdk
|
||||
changed_when: False
|
||||
register: jitsi_jre11_version
|
||||
tags: jitsi
|
||||
|
||||
- name: Select JRE 11 as default version
|
||||
alternatives:
|
||||
name: "{{ item.name }}"
|
||||
link: "{{ item.link }}"
|
||||
path: "{{ item.path }}"
|
||||
loop:
|
||||
- name: java
|
||||
link: /usr/bin/java
|
||||
path: /usr/lib/jvm/{{ jitsi_jre11_version.stdout | trim }}/bin/java
|
||||
- name: javac
|
||||
link: /usr/bin/javac
|
||||
path: /usr/lib/jvm/{{ jitsi_jre11_version.stdout | trim }}/bin/javac
|
||||
- name: jre_openjdk
|
||||
link: /usr/lib/jvm/jre-openjdk
|
||||
path: /usr/lib/jvm/{{ jitsi_jre11_version.stdout | trim }}
|
||||
- name: java_sdk_openjdk
|
||||
link: /usr/lib/jvm/java-openjdk
|
||||
path: /usr/lib/jvm/{{ jitsi_jre11_version.stdout | trim }}
|
||||
tags: jitsi
|
||||
|
||||
# If the repo changed since the last run, we rebuild and restart the bridge
|
||||
- name: Clone jibri repo
|
||||
git:
|
||||
repo: "{{ jitsi_jibri_git_url }}"
|
||||
dest: "{{ jitsi_root_dir }}/src/jibri"
|
||||
force: True
|
||||
depth: 1
|
||||
single_branch: True
|
||||
become_user: "{{ jitsi_jibri_user }}"
|
||||
register: jitsi_jibri_git
|
||||
tags: jitsi
|
||||
|
||||
- name: Get Chrome version
|
||||
command: rpm -q google-chrome-stable --qf %{VERSION}
|
||||
register: jitsi_jibri_chrome_version
|
||||
changed_when: false
|
||||
tags: jitsi
|
||||
|
||||
- name: Install or update ChromeDriver
|
||||
# Ensure we're using the ChromeDriver corresponding to our current Chrome version
|
||||
- when: not jitsi_jibri_chromedriver_bin.stat.exists or jitsi_jibri_chromedriver_current_version.stdout != jitsi_jibri_chrome_version.stdout
|
||||
block:
|
||||
- name: Download ChromeDriver
|
||||
get_url:
|
||||
@@ -78,37 +41,54 @@
|
||||
unarchive:
|
||||
src: "{{ jitsi_root_dir }}/tmp/chromedriver-linux64.zip"
|
||||
dest: "{{ jitsi_root_dir }}/tmp"
|
||||
remote_src: True
|
||||
remote_src: true
|
||||
|
||||
- name: Move ChromeDriver bin
|
||||
copy:
|
||||
src: "{{ jitsi_root_dir }}/tmp/chromedriver-linux64/chromedriver"
|
||||
dest: /usr/local/bin/chromedriver
|
||||
mode: 755
|
||||
remote_src: True
|
||||
remote_src: true
|
||||
|
||||
when: not jitsi_jibri_chromedriver_bin.stat.exists or jitsi_jibri_chromedriver_current_version.stdout != jitsi_jibri_chrome_version.stdout
|
||||
tags: jitsi
|
||||
|
||||
- name: Install or update jibri
|
||||
- when: jitsi_jibri_install_mode != 'none'
|
||||
block:
|
||||
|
||||
- name: Download Jitsi Jibri archive
|
||||
get_url:
|
||||
url: "{{ jitsi_jibri_archive_url }}"
|
||||
dest: "{{ jitsi_root_dir }}/tmp/"
|
||||
become_user: "{{ jitsi_user }}"
|
||||
|
||||
- name: Extract Jitsi Jibri archive
|
||||
unarchive:
|
||||
src: "{{ jitsi_root_dir }}/tmp/jibri-master.tar.gz"
|
||||
dest: "{{ jitsi_root_dir }}/tmp/"
|
||||
remote_src: true
|
||||
become_user: "{{ jitsi_user }}"
|
||||
|
||||
- name: Build jibri
|
||||
command: /opt/maven/apache-maven/bin/mvn package -DskipTests -Dassembly.skipAssembly=false
|
||||
args:
|
||||
chdir: "{{ jitsi_root_dir }}/src/jibri"
|
||||
become_user: "{{ jitsi_jibri_user }}"
|
||||
chdir: "{{ jitsi_root_dir }}/tmp/jibri-master"
|
||||
environment:
|
||||
JAVA_HOME: /usr/lib/jvm/java-17
|
||||
become_user: "{{ jitsi_user }}"
|
||||
|
||||
- name: Move jibri to its final directory
|
||||
- name: Install Jitsi Jibri JAR
|
||||
copy:
|
||||
src: "{{ jitsi_root_dir }}/src/jibri/target/jibri-8.0-SNAPSHOT-jar-with-dependencies.jar"
|
||||
src: "{{ jitsi_root_dir }}/tmp/jibri-master/target/jibri-8.0-SNAPSHOT-jar-with-dependencies.jar"
|
||||
dest: "{{ jitsi_root_dir }}/jibri/jibri.jar"
|
||||
remote_src: True
|
||||
remote_src: true
|
||||
notify: restart jitsi-jibri
|
||||
|
||||
when: (jitsi_jibri_git.changed and jitsi_jibri_manage_upgrade) or not jitsi_jibri_jar.stat.exists
|
||||
- name: Write installed version
|
||||
copy: content={{ jitsi_jibri_version }} dest={{ jitsi_root_dir }}/meta/ansible_jibri_version
|
||||
|
||||
tags: jitsi
|
||||
|
||||
- name: Deploy systemd units
|
||||
- name: Install systemd unit
|
||||
template: src=jitsi-{{ item }}.j2 dest=/etc/systemd/system/jitsi-{{ item }}
|
||||
loop:
|
||||
- jibri.service
|
||||
|
@@ -12,6 +12,8 @@ PrivateTmp=true
|
||||
Restart=always
|
||||
StartLimitInterval=0
|
||||
RestartSec=30
|
||||
Environment=JAVA_HOME=/usr/lib/jvm/java-17
|
||||
Environment=PATH=/usr/lib/jvm/java-17/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
|
||||
ExecStart=/bin/java -Dconfig.file={{ jitsi_root_dir }}/etc/jibri/jibri.conf -jar {{ jitsi_root_dir }}/jibri/jibri.jar
|
||||
SyslogIdentifier=jibri
|
||||
|
||||
|
Reference in New Issue
Block a user