| @@ -18,6 +18,8 @@ List of roles where self-building the Docker image is currently possible: | |||||
| - `matrix-corporal` | - `matrix-corporal` | ||||
| - `matrix-ma1sd` | - `matrix-ma1sd` | ||||
| - `matrix-mailer` | - `matrix-mailer` | ||||
| - `matrix-bridge-appservice-slack` | |||||
| - `matrix-bridge-appservice-irc` | |||||
| - `matrix-bridge-mautrix-facebook` | - `matrix-bridge-mautrix-facebook` | ||||
| - `matrix-bridge-mautrix-hangouts` | - `matrix-bridge-mautrix-hangouts` | ||||
| - `matrix-bridge-mautrix-telegram` | - `matrix-bridge-mautrix-telegram` | ||||
| @@ -147,6 +147,8 @@ matrix_appservice_slack_database_password: "{{ matrix_synapse_macaroon_secret_ke | |||||
| # We don't enable bridges by default. | # We don't enable bridges by default. | ||||
| matrix_appservice_irc_enabled: false | matrix_appservice_irc_enabled: false | ||||
| matrix_appservice_irc_container_self_build: "{{ matrix_architecture != 'amd64' }}" | |||||
| # Normally, matrix-nginx-proxy is enabled and nginx can reach matrix-appservice-irc over the container network. | # Normally, matrix-nginx-proxy is enabled and nginx can reach matrix-appservice-irc over the container network. | ||||
| # If matrix-nginx-proxy is not enabled, or you otherwise have a need for it, you can expose | # If matrix-nginx-proxy is not enabled, or you otherwise have a need for it, you can expose | ||||
| # matrix-appservice-irc's client-server port to the local host. | # matrix-appservice-irc's client-server port to the local host. | ||||
| @@ -3,6 +3,10 @@ | |||||
| matrix_appservice_irc_enabled: true | matrix_appservice_irc_enabled: true | ||||
| matrix_appservice_irc_container_self_build: false | |||||
| matrix_appservice_irc_docker_repo: "https://github.com/matrix-org/matrix-appservice-irc.git" | |||||
| matrix_appservice_irc_docker_src_files_path: "{{ matrix_base_data_path }}/appservice-irc/docker-src" | |||||
| matrix_appservice_irc_docker_image: "docker.io/matrixdotorg/matrix-appservice-irc:release-0.17.1" | matrix_appservice_irc_docker_image: "docker.io/matrixdotorg/matrix-appservice-irc:release-0.17.1" | ||||
| matrix_appservice_irc_docker_image_force_pull: "{{ matrix_appservice_irc_docker_image.endswith(':latest') }}" | matrix_appservice_irc_docker_image_force_pull: "{{ matrix_appservice_irc_docker_image.endswith(':latest') }}" | ||||
| @@ -59,6 +59,26 @@ | |||||
| source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" | source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" | ||||
| force_source: "{{ matrix_appservice_irc_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_appservice_irc_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | ||||
| force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_appservice_irc_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_appservice_irc_docker_image_force_pull }}" | ||||
| when: "matrix_appservice_irc_enabled|bool and not matrix_appservice_irc_container_self_build|bool" | |||||
| - name: Ensure matrix-appservice-irc repository is present when self-building | |||||
| git: | |||||
| repo: "{{ matrix_appservice_irc_docker_repo }}" | |||||
| dest: "{{ matrix_appservice_irc_docker_src_files_path }}" | |||||
| force: "yes" | |||||
| register: matrix_appservice_irc_git_pull_results | |||||
| when: "matrix_appservice_irc_enabled|bool and matrix_appservice_irc_container_self_build|bool" | |||||
| - name: Ensure matrix-appservice-irc Docker image is build | |||||
| docker_image: | |||||
| name: "{{ matrix_appservice_irc_docker_image }}" | |||||
| source: build | |||||
| force_source: yes | |||||
| build: | |||||
| dockerfile: Dockerfile | |||||
| path: "{{ matrix_appservice_irc_docker_src_files_path }}" | |||||
| pull: yes | |||||
| when: "matrix_appservice_irc_enabled|bool and matrix_appservice_irc_container_self_build|bool and matrix_appservice_irc_git_pull_results.changed" | |||||
| - name: Ensure Matrix Appservice IRC config installed | - name: Ensure Matrix Appservice IRC config installed | ||||
| copy: | copy: | ||||