mirror of
				https://github.com/spantaleev/matrix-docker-ansible-deploy.git
				synced 2025-11-04 00:58:56 +01:00 
			
		
		
		
	These `init.yml` (now `inject_into_nginx_proxy.yml`) tasks do not need to `always` run. They only need to run for `setup-all` and `setup-nginx-proxy`. Unless we're dealing with these 2 tags, we can spare ourselves a lot of work. This patch also moves the `when` statement from `init.yml` into `main.yml` in an effort to further optimize things by potentially avoiding the extra file include.
		
			
				
	
	
		
			45 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
 | 
						|
- name: Fail if matrix-nginx-proxy role already executed
 | 
						|
  ansible.builtin.fail:
 | 
						|
    msg: >-
 | 
						|
      Trying to append Slack 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-bridge-appservice-slack role.
 | 
						|
  when: matrix_nginx_proxy_role_executed | default(False) | bool
 | 
						|
 | 
						|
- name: Generate Matrix Appservice Slack proxying configuration for matrix-nginx-proxy
 | 
						|
  ansible.builtin.set_fact:
 | 
						|
    matrix_appservice_slack_matrix_nginx_proxy_configuration: |
 | 
						|
      location {{ matrix_appservice_slack_public_endpoint }} {
 | 
						|
      {% 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_appservice_slack_appservice_url }}:{{ matrix_appservice_slack_slack_port }}";
 | 
						|
          proxy_pass $backend;
 | 
						|
      {% else %}
 | 
						|
          {# Generic configuration for use outside of our container setup #}
 | 
						|
          proxy_pass http://127.0.0.1:{{ matrix_appservice_slack_slack_port }};
 | 
						|
      {% endif %}
 | 
						|
      }
 | 
						|
 | 
						|
- name: Register Slack Appservice proxying configuration with matrix-nginx-proxy
 | 
						|
  ansible.builtin.set_fact:
 | 
						|
    matrix_nginx_proxy_proxy_matrix_additional_server_configuration_blocks: |
 | 
						|
      {{
 | 
						|
        matrix_nginx_proxy_proxy_matrix_additional_server_configuration_blocks | default([])
 | 
						|
        +
 | 
						|
        [matrix_appservice_slack_matrix_nginx_proxy_configuration]
 | 
						|
      }}
 | 
						|
 | 
						|
- name: Warn about reverse-proxying if matrix-nginx-proxy not used
 | 
						|
  ansible.builtin.debug:
 | 
						|
    msg: >-
 | 
						|
      NOTE: You've enabled the Matrix Slack bridge but are not using the matrix-nginx-proxy
 | 
						|
      reverse proxy.
 | 
						|
      Please make sure that you're proxying the `{{ matrix_appservice_slack_public_endpoint }}`
 | 
						|
      URL endpoint to the matrix-appservice-slack container.
 | 
						|
      You can expose the container's port using the `matrix_appservice_slack_container_http_host_bind_port` variable.
 | 
						|
  when: "matrix_appservice_slack_enabled | bool and not matrix_nginx_proxy_enabled | default(False) | bool"
 |