diff --git a/defaults/main.yml b/defaults/main.yml index 642ab5b..e868968 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -6,7 +6,6 @@ acme_domains: hooks: | {{ ( 'systemctl reload nginx' if mumble_web_enabled else None, - 'systemctl restart umurmur' if umurmur_enabled else None, 'systemctl restart mumble-server' if murmur_enabled else None ) | reject("none") | list }} acme_directory_url: https://acme-v02.api.letsencrypt.org/directory @@ -133,39 +132,4 @@ murmur_channels: - MakeTempChannel - group: admin allow: - - MakeTempChannel - -umurmur_enabled: no -umurmur_domain: "{{ mumble_domain }}" -umurmur_max_bandwidth: 48000 -umurmur_max_users: 100 -umurmur_server_password: "" -umurmur_channels: - - name: Root - description: Root channel. No entry. - noenter: yes - - name: Welcome - parent: Root - description: Welcome channel - position: 0 - - name: Silent - parent: Root - description: Silent channel - silent: yes - position: 1 -umurmur_default_channel: Welcome -umurmur_welcome_text: "Welcome on the {{ inventory_hostname }} Mumble server!" -umurmur_channel_links: - - source: "{{ umurmur_default_channel }}" - destinations: >- - {{ umurmur_channels - | selectattr('parent', 'defined') - | selectattr('parent', '==', umurmur_default_channel) - | map(attribute='name') - | list - }} -umurmur_ssl_group: "{{ acme_ssl_group }}" -umurmur_certificate: "{{ acme_certs_dir }}/{{ umurmur_domain }}.d/{{ acme_enabled | ternary('fullchain', 'cert') }}.pem" -umurmur_private_key: "{{ acme_keys_dir }}/{{ umurmur_domain }}.key" -umurmur_version: master -umurmur_port: 64738 + - MakeTempChannel \ No newline at end of file diff --git a/handlers/main.yml b/handlers/main.yml index e2c4a57..63b3539 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -3,15 +3,6 @@ daemon_reload: yes register: systemd_reloaded -# In order to take into account rooms config changes, umurmur must be restarted. -# A simple reload won't work for rooms positionning, for instance. -- name: restart umurmur - service: - name: umurmur - state: restarted - when: - - not (umurmur_started.changed | default(false)) - - name: restart murmur service: name: mumble-server diff --git a/meta/main.yml b/meta/main.yml index 2c1a29d..ec81461 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -10,7 +10,7 @@ dependencies: galaxy_info: role_name: mumble author: HgO - description: Ansible role to install umurmur, the minimalistic Mumble server, and mumble-web client. + description: Ansible role to install murmur (mumble server) and mumble-web client. company: PPBe # If the issue tracker for your role is not on github, uncomment the @@ -50,7 +50,7 @@ galaxy_info: versions: - all - galaxy_tags: [mumble,voip,umurmur] + galaxy_tags: [mumble,voip,murmur,mumble-web] # List tags for your role here, one per line. A tag is a keyword that describes # and categorizes the role. Users find roles by searching for tags. Be sure to # remove the '[]' above, if you add tags to this list. diff --git a/molecule/default/converge.yml b/molecule/default/converge.yml index 16fe642..acb941d 100644 --- a/molecule/default/converge.yml +++ b/molecule/default/converge.yml @@ -6,8 +6,6 @@ vars: mumble_web_enabled: yes murmur_enabled: yes - umurmur_enabled: yes - umurmur_port: 64739 acme_enabled: no roles: diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml index a7c6836..83195f2 100644 --- a/molecule/default/molecule.yml +++ b/molecule/default/molecule.yml @@ -30,15 +30,6 @@ platforms: guest: 64738 host: 14738 protocol: tcp - # Umurmur server - - network_name: forwarded_port - guest: 64739 - host: 14739 - protocol: udp - - network_name: forwarded_port - guest: 64739 - host: 14739 - protocol: tcp - name: focal-mumble-molecule box: ubuntu/focal64 <<: *hardware @@ -59,15 +50,6 @@ platforms: guest: 64738 host: 24738 protocol: tcp - # Umurmur server - - network_name: forwarded_port - guest: 64739 - host: 24739 - protocol: udp - - network_name: forwarded_port - guest: 64739 - host: 24739 - protocol: tcp provisioner: name: ansible config_options: diff --git a/molecule/mumble-web/converge.yml b/molecule/mumble-web/converge.yml index 2f3911c..acb941d 100644 --- a/molecule/mumble-web/converge.yml +++ b/molecule/mumble-web/converge.yml @@ -6,7 +6,6 @@ vars: mumble_web_enabled: yes murmur_enabled: yes - umurmur_enabled: no acme_enabled: no roles: diff --git a/molecule/murmur/converge.yml b/molecule/murmur/converge.yml index da7913e..7e2c743 100644 --- a/molecule/murmur/converge.yml +++ b/molecule/murmur/converge.yml @@ -6,8 +6,6 @@ vars: mumble_web_enabled: no murmur_enabled: yes - umurmur_enabled: no - umurmur_port: 64739 acme_enabled: no roles: diff --git a/molecule/umurmur/INSTALL.rst b/molecule/umurmur/INSTALL.rst deleted file mode 100644 index 0c4bf5c..0000000 --- a/molecule/umurmur/INSTALL.rst +++ /dev/null @@ -1,23 +0,0 @@ -********************************* -Vagrant driver installation guide -********************************* - -Requirements -============ - -* Vagrant -* Virtualbox, Parallels, VMware Fusion, VMware Workstation or VMware Desktop - -Install -======= - -Please refer to the `Virtual environment`_ documentation for installation best -practices. If not using a virtual environment, please consider passing the -widely recommended `'--user' flag`_ when invoking ``pip``. - -.. _Virtual environment: https://virtualenv.pypa.io/en/latest/ -.. _'--user' flag: https://packaging.python.org/tutorials/installing-packages/#installing-to-the-user-site - -.. code-block:: bash - - $ pip install 'molecule_vagrant' diff --git a/molecule/umurmur/converge.yml b/molecule/umurmur/converge.yml deleted file mode 100644 index cd7c341..0000000 --- a/molecule/umurmur/converge.yml +++ /dev/null @@ -1,13 +0,0 @@ ---- -- name: Converge - hosts: all - become: yes - - vars: - mumble_web_enabled: no - murmur_enabled: no - umurmur_enabled: yes - acme_enabled: no - - roles: - - ansible-role-mumble \ No newline at end of file diff --git a/molecule/umurmur/molecule.yml b/molecule/umurmur/molecule.yml deleted file mode 100644 index 651da13..0000000 --- a/molecule/umurmur/molecule.yml +++ /dev/null @@ -1,47 +0,0 @@ ---- -.hardware: &hardware - memory: 1024 - cpu: 2 - -dependency: - name: galaxy -driver: - name: vagrant - provider: - name: virtualbox -platforms: - - name: buster-mumble-molecule - box: debian/buster64 - <<: *hardware - interfaces: - # Umurmur server - - network_name: forwarded_port - guest: 64738 - host: 14738 - protocol: udp - - network_name: forwarded_port - guest: 64738 - host: 14738 - protocol: tcp - - name: focal-mumble-molecule - box: ubuntu/focal64 - <<: *hardware - interfaces: - # Umurmur server - - network_name: forwarded_port - guest: 64738 - host: 24738 - protocol: udp - - network_name: forwarded_port - guest: 64738 - host: 24738 - protocol: tcp -provisioner: - name: ansible - config_options: - defaults: - interpreter_python: /usr/bin/python3 - ssh_connection: - pipelining: true -verifier: - name: ansible \ No newline at end of file diff --git a/molecule/umurmur/prepare.yml b/molecule/umurmur/prepare.yml deleted file mode 100644 index bc3a569..0000000 --- a/molecule/umurmur/prepare.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: Prepare - hosts: all - become: yes - - tasks: - - name: Update apt cache - apt: - update_cache: yes - cache_valid_time: 3600 \ No newline at end of file diff --git a/tasks/main.yml b/tasks/main.yml index 1bf3fa9..d4fa871 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -20,11 +20,6 @@ - certificate - self_signed -- name: Deploy uMurmur server - import_tasks: umurmur.yml - when: umurmur_enabled - tags: umurmur - - name: Deploy Murmur server import_tasks: murmur.yml when: murmur_enabled diff --git a/tasks/umurmur.yml b/tasks/umurmur.yml deleted file mode 100644 index e026e0c..0000000 --- a/tasks/umurmur.yml +++ /dev/null @@ -1,86 +0,0 @@ -- name: Install umurmur build dependencies - package: - name: "{{ package }}" - state: present - loop: - - git - - build-essential - - cmake - - libconfig-dev - - libprotobuf-c-dev - - libmbedtls-dev - - ssl-cert - loop_control: - loop_var: package - -- name: Clone umurmur git repository - git: - repo: https://github.com/umurmur/umurmur.git - dest: /opt/umurmur - version: "{{ umurmur_version }}" - -- name: Change umurmur git repository's permissions - file: - path: /opt/umurmur - owner: root - group: root - mode: "775" - state: directory - -- name: Create the build directory - file: - path: /opt/umurmur/build - owner: root - group: root - mode: "775" - state: directory - -- name: Generate the Makefile with cmake - shell: cd /opt/umurmur/build && cmake .. -DSSL=mbedtls - changed_when: no - -- name: Build umurmur from source - make: - chdir: /opt/umurmur/build - changed_when: _umurmur_built.stdout_lines | length > 1 - register: _umurmur_built - -- name: Install umurmur - make: - chdir: /opt/umurmur/build - target: install - changed_when: "'Installing' in _umurmur_installed.stdout" - register: _umurmur_installed - notify: restart umurmur - -- name: Copy umurmur config file - template: - src: umurmur/umurmur.conf.j2 - dest: /usr/local/etc/umurmur.conf - owner: root - group: "{{ umurmur_ssl_group }}" - mode: "640" - validate: /usr/local/bin/umurmurd -t -c %s - notify: restart umurmur - tags: umurmur_config - -- name: Copy umurmur systemd service - template: - src: umurmur/umurmur.service.j2 - dest: /etc/systemd/system/umurmur.service - owner: root - group: root - mode: "644" - notify: - - reload systemd - - restart umurmur - -- name: Start umurmur service - service: - name: umurmur - enabled: yes - state: started - register: umurmur_started - -- name: Trigger umurmur handlers - meta: flush_handlers \ No newline at end of file diff --git a/templates/mumble-web/config.js.j2 b/templates/mumble-web/config.js.j2 index e118056..cff5a0f 100644 --- a/templates/mumble-web/config.js.j2 +++ b/templates/mumble-web/config.js.j2 @@ -13,7 +13,7 @@ let config = window.mumbleWebConfig // eslint-disable-line no-unused-vars config.connectDialog.address = false config.connectDialog.port = false config.connectDialog.token = false -config.connectDialog.password = {{ (umurmur_server_password != '') | lower }} +config.connectDialog.password = {{ (murmur_server_password != '') | lower }} // Default values for user settings // You can see your current value by typing `localStorage.getItem('mumble.$setting')` in the web console. diff --git a/templates/mumble-web/mumble-web.service.j2 b/templates/mumble-web/mumble-web.service.j2 index dc1b40d..4169d1c 100644 --- a/templates/mumble-web/mumble-web.service.j2 +++ b/templates/mumble-web/mumble-web.service.j2 @@ -1,7 +1,7 @@ [Unit] Description=Mumble web client using websockets -After=network.target umurmur.service -Wants=umurmur.service +After=network.target murmur.service +Wants=murmur.service [Service] Type=simple @@ -9,7 +9,7 @@ User=nobody Group=nogroup Restart=always RestartSec=3 -ExecStart=/usr/bin/websockify --ssl-target {{ mumble_web_websockify_port }} localhost:{{ umurmur_port }} +ExecStart=/usr/bin/websockify --ssl-target {{ mumble_web_websockify_port }} localhost:{{ murmur_port }} ExecReload=/bin/kill -HUP $MAINPID [Install] diff --git a/templates/umurmur/umurmur.conf.j2 b/templates/umurmur/umurmur.conf.j2 deleted file mode 100644 index 50c67f8..0000000 --- a/templates/umurmur/umurmur.conf.j2 +++ /dev/null @@ -1,73 +0,0 @@ -{{ ansible_managed | comment }} -max_bandwidth = {{ umurmur_max_bandwidth }}; -{% if umurmur_welcome_text is string %} -welcometext = {{ umurmur_welcome_text | to_json }}; -{% else %} -welcometext = {{ umurmur_welcome_text | join('
') | to_json }}; -{% endif %} -certificate = {{ umurmur_certificate | to_json }}; -private_key = {{ umurmur_private_key | to_json }}; -password = {{ umurmur_server_password | to_json }}; -{% if umurmur_admin_password is defined %} -admin_password = {{ umurmur_admin_password | to_json }}; # Set to enable admin functionality. -{% endif %} -# ban_length = 0; # Length in seconds for a ban. Default is 0. 0 = forever. -# enable_ban = false; # Default is false -# banfile = "banfile.txt"; # File to save bans to. Default is to not save bans to file. -# sync_banfile = false; # Keep banfile synced. Default is false, which means it is saved to at shutdown only. -allow_textmessage = true; # Default is true -# opus_threshold = 100; # Percentage of users supporting Opus codec for it to be chosen. Default is 100. -# show_addresses = true; # Whether to show client's IP addresses under user information -max_users = {{ umurmur_max_users }}; - -bindport = {{ umurmur_port }}; -# bindaddr = "0.0.0.0"; - -# username and groupname for privilege dropping. -# Will attempt to switch user if set. -# username = ""; -# If groupname not set the user's default login group will be used -# groupname = ""; - -# Log to file option. Default is logging to syslog. -# umurmurd will close and reopen the logfile if SIGHUP is received. -logfile = "/var/log/umurmurd.log"; - -# CA location for CA-signed certificates -# ca_path = "/path/to/ca/certificates/"; - -# Channel tree definition: -# Root channel must always be defined first. -# If a channel has a parent, the parent must be defined before the child channel(s). -channels = ( -{% for channel in umurmur_channels %} - { - name = {{ channel.name | to_json }}; - description = {{ channel.description | default('') | to_json }}; - parent = {{ channel.parent | default('') | to_json }}; - noenter = {{ channel.noenter | default(false) | string | lower }}; - silent = {{ channel.silent | default(false) | string | lower }}; -{% if channel.position is defined %} - position = {{ channel.position }}; -{% endif %} -{% if channel.password is defined %} - password = {{ channel.password | to_json }}; -{% endif %} - }{{ loop.last | ternary("", ",") }} -{% endfor %} -); -# Channel links configuration. -channel_links = ( -{% for channel in umurmur_channel_links %} -{% for destination in channel.destinations %} - { - source = {{ channel.source | to_json }}; - destination = {{ destination | to_json }}; - }{{ loop.last | ternary('', ',') }} -{% endfor %} -{% endfor %} -); - -# The channel in which users will appear in when connecting. -# Note that default channel can't have 'noenter = true' or password set -default_channel = {{ umurmur_default_channel | to_json }}; \ No newline at end of file diff --git a/templates/umurmur/umurmur.service.j2 b/templates/umurmur/umurmur.service.j2 deleted file mode 100644 index 17c515d..0000000 --- a/templates/umurmur/umurmur.service.j2 +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Minimalistic Mumble server -After=network.target - -[Service] -Type=simple -User=nobody -Group={{ umurmur_ssl_group }} -Restart=always -RestartSec=3 -ExecStartPre=/usr/local/bin/umurmurd -t -c /usr/local/etc/umurmur.conf -ExecStart=/usr/local/bin/umurmurd -d -r -c /usr/local/etc/umurmur.conf -ExecReload=/bin/kill -HUP $MAINPID - -[Install] -WantedBy=multi-user.target \ No newline at end of file