677a2fc503
Details here: https://docs.ansible.com/ansible/devel/porting_guides/porting_guide_6.html#id36 Basically: ```yaml - name: Prior to 2.13 debug: msg: '[1] + {{ [2] }}' - name: 2.13 and forward debug: msg: '{{ [1] + [2] }}' ``` Interestingly, we had been using the new/safe syntax in lofs of places. We were using the broken one in many others though. Hopefully all instances were fixed by this patch.
76 lines
3.6 KiB
YAML
76 lines
3.6 KiB
YAML
---
|
|
# See https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1070
|
|
# and https://github.com/spantaleev/matrix-docker-ansible-deploy/commit/1ab507349c752042d26def3e95884f6df8886b74#commitcomment-51108407
|
|
- name: Fail if trying to self-build on Ansible < 2.8
|
|
fail:
|
|
msg: "To self-build the Element image, you should use Ansible 2.8 or higher. See docs/ansible.md"
|
|
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_twitter_container_image_self_build and matrix_mx_puppet_twitter_enabled"
|
|
|
|
- set_fact:
|
|
matrix_systemd_services_list: "{{ matrix_systemd_services_list + ['matrix-mx-puppet-twitter.service'] }}"
|
|
when: matrix_mx_puppet_twitter_enabled|bool
|
|
|
|
# If the matrix-synapse role is not used, these variables may not exist.
|
|
- set_fact:
|
|
matrix_synapse_container_extra_arguments: >
|
|
{{
|
|
matrix_synapse_container_extra_arguments|default([])
|
|
+
|
|
["--mount type=bind,src={{ matrix_mx_puppet_twitter_config_path }}/registration.yaml,dst=/matrix-mx-puppet-twitter-registration.yaml,ro"]
|
|
}}
|
|
|
|
matrix_synapse_app_service_config_files: >
|
|
{{
|
|
matrix_synapse_app_service_config_files|default([])
|
|
+
|
|
["/matrix-mx-puppet-twitter-registration.yaml"]
|
|
}}
|
|
when: matrix_mx_puppet_twitter_enabled|bool
|
|
|
|
- block:
|
|
- name: Fail if matrix-nginx-proxy role already executed
|
|
fail:
|
|
msg: >-
|
|
Trying to append Twitter Appservice's reverse-proxying configuration to matrix-nginx-proxy,
|
|
but it's pointless since the matrix-nginx-proxy role had already executed.
|
|
To fix this, please change the order of roles in your playbook,
|
|
so that the matrix-nginx-proxy role would run after the matrix-mx-puppet-twitter role.
|
|
when: matrix_nginx_proxy_role_executed|default(False)|bool
|
|
|
|
- name: Generate Matrix MX Puppet Twitter proxying configuration for matrix-nginx-proxy
|
|
set_fact:
|
|
matrix_mx_puppet_twitter_matrix_nginx_proxy_configuration: |
|
|
location {{ matrix_mx_puppet_twitter_webhook_path }} {
|
|
{% if matrix_nginx_proxy_enabled|default(False) %}
|
|
{# Use the embedded DNS resolver in Docker containers to discover the service #}
|
|
resolver 127.0.0.11 valid=5s;
|
|
set $backend "{{ matrix_mx_puppet_twitter_appservice_address }}";
|
|
proxy_pass $backend;
|
|
{% else %}
|
|
{# Generic configuration for use outside of our container setup #}
|
|
proxy_pass http://127.0.0.1:{{ matrix_mx_puppet_twitter_appservice_port }};
|
|
{% endif %}
|
|
}
|
|
|
|
- name: Register Twitter Appservice proxying configuration with matrix-nginx-proxy
|
|
set_fact:
|
|
matrix_nginx_proxy_proxy_matrix_additional_server_configuration_blocks: |
|
|
{{
|
|
matrix_nginx_proxy_proxy_matrix_additional_server_configuration_blocks|default([])
|
|
+
|
|
[matrix_mx_puppet_twitter_matrix_nginx_proxy_configuration]
|
|
}}
|
|
tags:
|
|
- always
|
|
when: matrix_mx_puppet_twitter_enabled|bool
|
|
|
|
- name: Warn about reverse-proxying if matrix-nginx-proxy not used
|
|
debug:
|
|
msg: >-
|
|
NOTE: You've enabled the Matrix Twitter bridge but are not using the matrix-nginx-proxy
|
|
reverse proxy.
|
|
Please make sure that you're proxying the `{{ matrix_mx_puppet_twitter_redirect_path }}`
|
|
URL endpoint to the matrix-mx-puppet-twitter container.
|
|
You can expose the container's port using the `matrix_mx_puppet_twitter_container_http_host_bind_port` variable.
|
|
when: "matrix_mx_puppet_twitter_enabled|bool and not matrix_nginx_proxy_enabled|default(False)|bool"
|