git clone https://github.com/henriquebol/ansible-update-bbb.git
Ansible (ubuntu)
sudo apt update
sudo apt install software-properties-common
sudo apt-add-repository --yes --update ppa:ansible/ansible
sudo apt install ansible
Role
ansible-galaxy install n0emis.bigbluebutton
Vars
bbb_state: latest
bbb_coturn_enable: no
bbb_mute_on_start: no
bbb_letsencrypt_email:
bbb_greenlight_enable: no
bbb_freeswitch_external_ip: "{{ inventory_hostname }}"
bbb_turn_servers:
- server:
port:
secret:
tls: false
- server:
port:
secret:
tls: true
Tasks
- name: "Debug facts"
- name: Check/Modify /etc/hosts (commented)
- name: Setting timezone
- name: Debug /etc/hosts
- name: Update apt repo and cache on all Debian/Ubuntu boxes
# In case of invalid signature in the update:
# sudo apt-key list | grep -A 1 expired
# sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys <KEY>
- name: Upgrade all packages on servers
- name: configurando FQDN
- name: Alterando hosts
- name: Check if a reboot is needed on all servers
- name: Reboot the box if kernel updated
- name: BigBluebutton install
- name: Copy default pdf
- name: Copy favicon
- name: Copy logo
- name: Copy and extract audio (pt_BR)
- name: Recursively change ownership of audio directory
- name: Copy cron bbb-recording-cleanup
- name: install rest-client gem
- name: Copy ruby download script
- name: Copy download script
- name: Modify bigbluebutton.properties (defaultWelcomeMessage, logoutURL, joinViaHTML5Client, muteOnStart)
- name: Modify settings.yml (clientTitle, copyright, helpLink)
- name: Modify layout (head.html)
- name: Add cron job for certbot/Letsencrypt renewal (commented)
# Manual installation:
# sudo crontab -e
# 30 2 * * 1 /usr/bin/certbot renew >> /var/log/le-renew.log
# 35 2 * * 1 /bin/systemctl reload nginx
- name: Add cron job for restart nginx (commented)
- name: Check crontab (letsencrypt)
- name: Remove bbb-demo
- name: Restart bbb-html5
- name: Restart bbb
- name: Check bbb
- name: Debug Result
- name: criando grupo
- name: Adicionando o user bigbluebutton no grupo scalelite-spool
- name: Criando o diretório /mnt/scalelite-recordings
- name: Montando o NFS
- name: Download script scalelite_post_publish
- name: Download export_presentation.rb # bbb-recording-exporter
- name: Download interval_tree.rb
- name: Criando scalelite.yml
- name: Create a directory if it does not exist # BigBlueButton Exporter
- name: Install aptitude using apt
- name: Install required system packages
- name: Add Docker GPG apt Key
- name: Add Docker Repository
- name: Update apt and install docker-ce
- name: Update apt and install docker-compose
- name: Create docker-compose file
- name: print secret
- name: captura a saida secret
- name: Criando secrets.env
- name: docker-compose
- name: adicionadn user
- name: Copy monitoring.nginx
- name: Create a directory if it does not exist # BigBlueButton Exporter - node_exporter
- name: Create docker-compose file
- name: docker-compose
- name: Nginx exporter
SSH
sh-copy-id -i ~/.ssh/id_rsa.pub user@ip
Run
ansible all -m ping
ansible-playbook -i hosts playbook.yml -K