Fix validation and prevent empty "external-ip=" lines in Coturn config

We no longer validate that there's an IP address defined.
Seems like Coturn can start without one as well, so there's no need to
require it.

If people populate `matrix_coturn_turn_external_ip_addresses` directly
to specify multiple addresses, they can leave
`matrix_coturn_turn_external_ip_address` empty.

We use the "select not equal to empty string" thing in the for loop
to avoid `matrix_coturn_turn_external_ip_address` leading to
`matrix_coturn_turn_external_ip_addresses: ['']` leading to
`external-ip=` in the Coturn configuration.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1741
This commit is contained in:
Slavi Pantaleev 2022-04-11 15:38:35 +03:00
parent 03d2dcc996
commit f4ba995d9b
3 changed files with 2 additions and 3 deletions

View file

@ -65,7 +65,7 @@ matrix_coturn_turn_static_auth_secret: ""
# The external IP address of the machine where Coturn is.
matrix_coturn_turn_external_ip_address: ''
matrix_coturn_turn_external_ip_addresses: [ "{{ matrix_coturn_turn_external_ip_address }}" ]
matrix_coturn_turn_external_ip_addresses: ["{{ matrix_coturn_turn_external_ip_address }}"]
matrix_coturn_allowed_peer_ips: []
matrix_coturn_denied_peer_ips: []

View file

@ -6,5 +6,4 @@
You need to define a required configuration setting (`{{ item }}`) for using Coturn.
when: "vars[item] == ''"
with_items:
- "matrix_coturn_turn_external_ip_address"
- "matrix_coturn_turn_static_auth_secret"

View file

@ -5,7 +5,7 @@ realm=turn.{{ matrix_server_fqn_matrix }}
min-port={{ matrix_coturn_turn_udp_min_port }}
max-port={{ matrix_coturn_turn_udp_max_port }}
{% for ip in matrix_coturn_turn_external_ip_addresses %}
{% for ip in matrix_coturn_turn_external_ip_addresses|select('ne', '') %}
external-ip={{ ip }}
{% endfor %}