systemli.mumble

Ansible Role for Mumble

Build Status Ansible Galaxy

This role installs and sets up a Mumble server (murmur). It can also install mumble-web, which requires systemd version 235 or higher and npm to be installed.

Variables Used in the Role

  murmur_database: "/var/lib/mumble-server/mumble-server.sqlite"
  murmur_dbdriver: ""
  murmur_ice: "tcp -h 127.0.0.1 -p 6502"
  murmur_icesecretread: ""
  murmur_icesecretwrite: ""
  murmur_autobanattempts: "10"
  murmur_autobantimeframe: "120"
  murmur_autobantime: "300"
  murmur_logfile: "/var/log/mumble-server/mumble-server.log"
  murmur_pidfile: "/var/run/mumble-server/mumble-server.pid"
  murmur_welcometext: "Welcome to my Mumble server!"
  murmur_port: "64738"
  murmur_host: ""
  murmur_serverpassword: ""
  murmur_bandwidth: "72000"
  murmur_users: "100"
  murmur_opusthreshold: "100"
  murmur_channelcountlimit: "1000"
  murmur_channelnestinglimit: "10"
  
  # Regex to check channel or usernames
  murmur_channelname: ""
  
  murmur_username: ""
  murmur_textmessagelength: "5000"
  murmur_imagemessagelength: "131072"
  murmur_allowhtml: "True"
  
  # Set to "-1" to disable logging to database
  murmur_logdays: "-1"
  
  # Name for main channel
  murmur_registername: "MyMumbleServerRegisterName"
  
  murmur_registerpassword: "password"
  
  murmur_registerurl: "https://mymumbleserverurl.org"
  murmur_registerhostname: "mymumblehostname.domain.org"
  
  # For development
  murmur_bonjour: "False"
  murmur_uname: "mumble-server"
  murmur_certrequired: "False"
  murmur_sendversion: "True"
  murmur_icewarnunknownproperties: "1"
  murmur_icemessagesizemax: "65536"
  
  murmur_sslcert: "/etc/ssl/mumble-server-cert.pem"
  murmur_sslkey: "/etc/ssl/mumble-server-key.pem"
  murmur_sslciphers: "EECDH+AESGCM:EDH+aRSA+AESGCM"
  
  murmur_monitoring_monit_enabled: False
  murmur_monitoring_munin_enabled: False
  murmur_monitoring_munin_packages:
    - python3-zeroc-ice
    - zeroc-ice-slice
  
  # Settings for mumble-web
  mumble_web: False
  mumble_web_path: /usr/lib/node_modules/mumble-web/
  mumble_web_config: ""
  mumble_web_listen: "443"
  mumble_web_ssl_activated: True
  mumble_web_ssl_target: True

How to Download

Get the latest version of the role using ansible-galaxy:

ansible-galaxy install systemli.mumble

Example Playbook

Here's an example of how to use this role in an Ansible playbook:

- hosts: mumbleservers
  roles:
     - { role: geerlingguy.nodejs }
     - { role: systemli.letsencrypt }
     - { role: systemli.mumble }
  vars:
    letsencrypt_cert:
      name: "{{ murmur_registerhostname }}"
      domains:
        - "{{ murmur_registerhostname }}"
      challenge: dns
      users:
        - "{{ murmur_uname }}"
      services:
        - mumble-server

Testing & Development

Tests

To develop and test the role, we use GitHub Actions, Molecule, and Vagrant. You can easily test the role locally by running:

molecule test

Make sure you have Molecule, Vagrant, and the necessary dependencies (python-vagrant, molecule-goss, molecule-vagrant) installed.

License

This project is licensed under GPLv3.

Author Information

For more details, visit Systemli.

Informazioni sul progetto

Install and maintain mumble-server. Contains tests for Molecule.

Installa
ansible-galaxy install systemli.mumble
Licenza
Unknown
Download
2.7k
Proprietario
Your friendly tech collective