| @@ -1,3 +1,20 @@ | |||||
| # 2022-03-17 | |||||
| ## (Compatibility Break) ma1sd identity server no longer installed by default | |||||
| The playbook no longer installs the [ma1sd](https://github.com/ma1uta/ma1sd) identity server by default. The next time you run the playbook, ma1sd will be uninstalled from your server, unless you explicitly enable the ma1sd service (see how below). | |||||
| The main reason we used to install ma1sd by default in the past was to prevent Element from talking to the `matrix.org` / `vector.im` identity servers, by forcing it to talk to our own self-hosted (but otherwise useless) identity server instead, thus preventing contact list leaks. | |||||
| Since Element no longer defaults to using a public identity server if another one is not provided, we can stop installing ma1sd. | |||||
| If you need to install the ma1sd identity server for some reason, you can explicitly enable it by adding this to your `vars.yml` file: | |||||
| ```yaml | |||||
| matrix_ma1sd_enabled: true | |||||
| ``` | |||||
| # 2022-02-12 | # 2022-02-12 | ||||
| ## matrix_encryption_disabler support | ## matrix_encryption_disabler support | ||||
| @@ -31,7 +31,7 @@ Using this playbook, you can get the following services configured on your serve | |||||
| - (optional, default) an [Element](https://app.element.io/) ([formerly Riot](https://element.io/previously-riot)) web UI, which is configured to connect to your own Synapse server by default | - (optional, default) an [Element](https://app.element.io/) ([formerly Riot](https://element.io/previously-riot)) web UI, which is configured to connect to your own Synapse server by default | ||||
| - (optional, default) a [ma1sd](https://github.com/ma1uta/ma1sd) Matrix Identity server | |||||
| - (optional) a [ma1sd](https://github.com/ma1uta/ma1sd) Matrix Identity server | |||||
| - (optional, default) an [Exim](https://www.exim.org/) mail server, through which all Matrix services send outgoing email (can be configured to relay through another SMTP server) | - (optional, default) an [Exim](https://www.exim.org/) mail server, through which all Matrix services send outgoing email (can be configured to relay through another SMTP server) | ||||
| @@ -65,11 +65,11 @@ The `wsproxy.<your-domain>` subdomain may be necessary, because this playbook co | |||||
| ## `_matrix-identity._tcp` SRV record setup | ## `_matrix-identity._tcp` SRV record setup | ||||
| To make the [ma1sd](https://github.com/ma1uta/ma1sd) Identity Server (which this playbook installs for you) enable its federation features, set up an SRV record that looks like this: | |||||
| To make the [ma1sd](https://github.com/ma1uta/ma1sd) Identity Server (which this playbook may optionally install for you) enable its federation features, set up an SRV record that looks like this: | |||||
| - Name: `_matrix-identity._tcp` (use this text as-is) | - Name: `_matrix-identity._tcp` (use this text as-is) | ||||
| - Content: `10 0 443 matrix.<your-domain>` (replace `<your-domain>` with your own) | - Content: `10 0 443 matrix.<your-domain>` (replace `<your-domain>` with your own) | ||||
| This is an optional feature. See [ma1sd's documentation](https://github.com/ma1uta/ma1sd/wiki/mxisd-and-your-privacy#choices-are-never-easy) for information on the privacy implications of setting up this SRV record. | |||||
| This is an optional feature for the optionally-installed [ma1sd service](configuring-playbook-ma1sd.md). See [ma1sd's documentation](https://github.com/ma1uta/ma1sd/wiki/mxisd-and-your-privacy#choices-are-never-easy) for information on the privacy implications of setting up this SRV record. | |||||
| Note: This `_matrix-identity._tcp` SRV record for the identity server is different from the `_matrix._tcp` that can be used for Synapse delegation. See [howto-server-delegation.md](howto-server-delegation.md) for more information about delegation. | Note: This `_matrix-identity._tcp` SRV record for the identity server is different from the `_matrix._tcp` that can be used for Synapse delegation. See [howto-server-delegation.md](howto-server-delegation.md) for more information about delegation. | ||||
| @@ -4,8 +4,8 @@ | |||||
| [matrix-appservice-slack](configuring-playbook-bridge-appservice-slack.md) | [matrix-appservice-slack](configuring-playbook-bridge-appservice-slack.md) | ||||
| bridge supported by the playbook. | bridge supported by the playbook. | ||||
| The playbook can install and configure | |||||
| [mx-puppet-slack](https://github.com/Sorunome/mx-puppet-slack) for you. | |||||
| The playbook can install and configure [Beeper](https://www.beeper.com/)-maintained fork of | |||||
| [mx-puppet-slack](https://gitlab.com/beeper/mx-puppet-monorepo) for you. | |||||
| See the project page to learn what it does and why it might be useful to you. | See the project page to learn what it does and why it might be useful to you. | ||||
| @@ -31,7 +31,7 @@ matrix_dimension_admins: | |||||
| - "@user2:{{ matrix_domain }}" | - "@user2:{{ matrix_domain }}" | ||||
| ``` | ``` | ||||
| Admin interface is accessible at `https://dimension.<your-domain>/riot-app/admin` after logging in to element and opening it in any room via "Edit widgets, bridges & bots" and then clicking the "settings"-icon in the upper right corner. | |||||
| The admin interface is accessible within Element by accessing it in any room and clicking the cog wheel/settings icon in the top right. Currently, Dimension can be opened in Element by the "Add widgets, bridges, & bots" link in the room information. | |||||
| ## Access token | ## Access token | ||||
| @@ -1,24 +1,22 @@ | |||||
| # Adjusting ma1sd Identity Server configuration (optional) | # Adjusting ma1sd Identity Server configuration (optional) | ||||
| By default, this playbook configures an [ma1sd](https://github.com/ma1uta/ma1sd) Identity Server for you. | |||||
| The playbook can configure the [ma1sd](https://github.com/ma1uta/ma1sd) Identity Server for you. | |||||
| ma1sd, being an Identity Server, is not strictly needed. It is only used for 3PIDs (3rd party identifiers like E-mail and phone numbers) and some [enhanced features](https://github.com/ma1uta/ma1sd/#features). | |||||
| This server is private by default, potentially at the expense of user discoverability. | This server is private by default, potentially at the expense of user discoverability. | ||||
| *ma1sd is a fork of [mxisd](https://github.com/kamax-io/mxisd) which was pronounced end of life 2019-06-21.* | *ma1sd is a fork of [mxisd](https://github.com/kamax-io/mxisd) which was pronounced end of life 2019-06-21.* | ||||
| **Note**: enabling ma1sd (which is also the default), means that the `openid` API endpoints will be exposed on the Matrix Federation port (usually `8448`), even if [federation](configuring-playbook-federation.md) is disabled. It's something to be aware of, especially in terms of firewall whitelisting (make sure port `8448` is accessible). | |||||
| **Note**: enabling ma1sd, means that the `openid` API endpoints will be exposed on the Matrix Federation port (usually `8448`), even if [federation](configuring-playbook-federation.md) is disabled. It's something to be aware of, especially in terms of firewall whitelisting (make sure port `8448` is accessible). | |||||
| ## Disabling ma1sd | |||||
| ma1sd, being an Identity Server, is not strictly needed. It is only used for 3PIDs (3rd party identifiers like E-mail and phone numbers) and some [enhanced features](https://github.com/ma1uta/ma1sd/#features). | |||||
| If you'd like for the playbook to not install ma1sd (or to uninstall it if it was previously installed), you can disable it in your configuration file (`inventory/host_vars/matrix.<your-domain>/vars.yml`): | |||||
| To enable ma1sd, use the following additional configuration in your `vars.yml` file: | |||||
| ```yaml | ```yaml | ||||
| matrix_ma1sd_enabled: false | |||||
| matrix_ma1sd_enabled: true | |||||
| ``` | ``` | ||||
| ## Matrix.org lookup forwarding | ## Matrix.org lookup forwarding | ||||
| To ensure maximum discovery, you can make your identity server also forward lookups to the central matrix.org Identity server (at the cost of potentially leaking all your contacts information). | To ensure maximum discovery, you can make your identity server also forward lookups to the central matrix.org Identity server (at the cost of potentially leaking all your contacts information). | ||||
| @@ -47,8 +47,6 @@ When you're done with all the configuration you'd like to do, continue with [Ins | |||||
| - [Using an external PostgreSQL server](configuring-playbook-external-postgres.md) (optional) | - [Using an external PostgreSQL server](configuring-playbook-external-postgres.md) (optional) | ||||
| - [Adjusting ma1sd Identity Server configuration](configuring-playbook-ma1sd.md) (optional) | |||||
| - [Adjusting SSL certificate retrieval](configuring-playbook-ssl-certificates.md) (optional, advanced) | - [Adjusting SSL certificate retrieval](configuring-playbook-ssl-certificates.md) (optional, advanced) | ||||
| - [Serving your base domain using this playbook's nginx server](configuring-playbook-base-domain-serving.md) (optional) | - [Serving your base domain using this playbook's nginx server](configuring-playbook-base-domain-serving.md) (optional) | ||||
| @@ -69,11 +67,14 @@ When you're done with all the configuration you'd like to do, continue with [Ins | |||||
| - [Adjusting email-sending settings](configuring-playbook-email.md) (optional) | - [Adjusting email-sending settings](configuring-playbook-email.md) (optional) | ||||
| - [Setting up Hydrogen](configuring-playbook-client-hydrogen.md) - a new lightweight matrix client with legacy and mobile browser support (optional) | - [Setting up Hydrogen](configuring-playbook-client-hydrogen.md) - a new lightweight matrix client with legacy and mobile browser support (optional) | ||||
| - [Setting up Cinny](configuring-playbook-client-cinny.md) - a web client focusing primarily on simple, elegant and secure interface (optional) | - [Setting up Cinny](configuring-playbook-client-cinny.md) - a web client focusing primarily on simple, elegant and secure interface (optional) | ||||
| ### Authentication and user-related | ### Authentication and user-related | ||||
| - [Setting up an ma1sd Identity Server](configuring-playbook-ma1sd.md) (optional) | |||||
| - [Setting up Synapse Admin](configuring-playbook-synapse-admin.md) (optional) | - [Setting up Synapse Admin](configuring-playbook-synapse-admin.md) (optional) | ||||
| - [Setting up matrix-registration](configuring-playbook-matrix-registration.md) (optional) | - [Setting up matrix-registration](configuring-playbook-matrix-registration.md) (optional) | ||||
| @@ -15,8 +15,6 @@ These services are enabled and used by default, but you can turn them off, if yo | |||||
| - [vectorim/element-web](https://hub.docker.com/r/vectorim/element-web/) - the [Element](https://element.io/) web client (optional) | - [vectorim/element-web](https://hub.docker.com/r/vectorim/element-web/) - the [Element](https://element.io/) web client (optional) | ||||
| - [ma1uta/ma1sd](https://hub.docker.com/r/ma1uta/ma1sd/) - the [ma1sd](https://github.com/ma1uta/ma1sd) Matrix Identity server (optional) | |||||
| - [postgres](https://hub.docker.com/_/postgres/) - the [Postgres](https://www.postgresql.org/) database server (optional) | - [postgres](https://hub.docker.com/_/postgres/) - the [Postgres](https://www.postgresql.org/) database server (optional) | ||||
| - [devture/exim-relay](https://hub.docker.com/r/devture/exim-relay/) - the [Exim](https://www.exim.org/) email server (optional) | - [devture/exim-relay](https://hub.docker.com/r/devture/exim-relay/) - the [Exim](https://www.exim.org/) email server (optional) | ||||
| @@ -30,6 +28,8 @@ These services are enabled and used by default, but you can turn them off, if yo | |||||
| These services are not part of our default installation, but can be enabled by [configuring the playbook](configuring-playbook.md) (either before the initial installation or any time later): | These services are not part of our default installation, but can be enabled by [configuring the playbook](configuring-playbook.md) (either before the initial installation or any time later): | ||||
| - [ma1uta/ma1sd](https://hub.docker.com/r/ma1uta/ma1sd/) - the [ma1sd](https://github.com/ma1uta/ma1sd) Matrix Identity server (optional) | |||||
| - [matrixdotorg/dendrite-monolith](https://hub.docker.com/r/matrixdotorg/dendrite-monolith/) - the official [Dendrite](https://github.com/matrix-org/dendrite) Matrix homeserver (optional) | - [matrixdotorg/dendrite-monolith](https://hub.docker.com/r/matrixdotorg/dendrite-monolith/) - the official [Dendrite](https://github.com/matrix-org/dendrite) Matrix homeserver (optional) | ||||
| - [ewoutp/goofys](https://hub.docker.com/r/ewoutp/goofys/) - the [Goofys](https://github.com/kahing/goofys) Amazon [S3](https://aws.amazon.com/s3/) file-system-mounting program (optional) | - [ewoutp/goofys](https://hub.docker.com/r/ewoutp/goofys/) - the [Goofys](https://github.com/kahing/goofys) Amazon [S3](https://aws.amazon.com/s3/) file-system-mounting program (optional) | ||||
| @@ -1366,9 +1366,16 @@ matrix_mailer_container_image_self_build: "{{ matrix_architecture not in ['amd64 | |||||
| # | # | ||||
| ###################################################################### | ###################################################################### | ||||
| # By default, this playbook installs the ma1sd identity server on the same domain as Synapse (`matrix_server_fqn_matrix`). | |||||
| # If you wish to use the public identity servers (matrix.org, vector.im) instead of your own you may wish to disable this. | |||||
| matrix_ma1sd_enabled: true | |||||
| # We no longer install the ma1sd identity server by default. | |||||
| # | |||||
| # The main reason we used to install ma1sd by default in the past was to | |||||
| # prevent Element from talking to the `matrix.org` / `vector.im` identity servers, | |||||
| # by forcing it to talk to our own self-hosted (but otherwise useless) identity server instead, | |||||
| # thus preventing contact list leaks. | |||||
| # | |||||
| # Since Element no longer defaults to using a public identity server if another one is not provided, | |||||
| # we can stop installing ma1sd. | |||||
| matrix_ma1sd_enabled: false | |||||
| matrix_ma1sd_container_image_self_build: "{{ matrix_architecture != 'amd64' }}" | matrix_ma1sd_container_image_self_build: "{{ matrix_architecture != 'amd64' }}" | ||||
| @@ -70,6 +70,10 @@ matrix_debian_arch: "{{ 'armhf' if matrix_architecture == 'arm32' else matrix_ar | |||||
| matrix_container_global_registry_prefix: "docker.io/" | matrix_container_global_registry_prefix: "docker.io/" | ||||
| # Each docker pull will retry on failed attempt 10 times with delay of 10 seconds between each attempt. | |||||
| matrix_container_retries_count: 10 | |||||
| matrix_container_retries_delay: 10 | |||||
| matrix_user_username: "matrix" | matrix_user_username: "matrix" | ||||
| matrix_user_groupname: "matrix" | matrix_user_groupname: "matrix" | ||||
| @@ -22,6 +22,10 @@ | |||||
| 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_bot_go_neb_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_bot_go_neb_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_bot_go_neb_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_go_neb_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure go-neb config installed | - name: Ensure go-neb config installed | ||||
| copy: | copy: | ||||
| @@ -52,6 +52,10 @@ | |||||
| force_source: "{{ matrix_bot_honoroit_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_bot_honoroit_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_bot_honoroit_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_honoroit_docker_image_force_pull }}" | ||||
| when: "not matrix_bot_honoroit_container_image_self_build|bool" | when: "not matrix_bot_honoroit_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure honoroit repository is present on self-build | - name: Ensure honoroit repository is present on self-build | ||||
| git: | git: | ||||
| @@ -47,6 +47,10 @@ | |||||
| force_source: "{{ matrix_bot_matrix_reminder_bot_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_bot_matrix_reminder_bot_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_bot_matrix_reminder_bot_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_matrix_reminder_bot_docker_image_force_pull }}" | ||||
| when: "not matrix_bot_matrix_reminder_bot_container_image_self_build|bool" | when: "not matrix_bot_matrix_reminder_bot_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-reminder-bot repository is present on self-build | - name: Ensure matrix-reminder-bot repository is present on self-build | ||||
| git: | git: | ||||
| @@ -24,6 +24,10 @@ | |||||
| force_source: "{{ matrix_bot_mjolnir_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_bot_mjolnir_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_bot_mjolnir_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_mjolnir_docker_image_force_pull }}" | ||||
| when: "not matrix_bot_mjolnir_container_image_self_build|bool" | when: "not matrix_bot_mjolnir_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure mjolnir repository is present on self-build | - name: Ensure mjolnir repository is present on self-build | ||||
| git: | git: | ||||
| @@ -32,6 +32,10 @@ | |||||
| 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_discord_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_appservice_discord_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_discord_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_appservice_discord_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure AppService Discord paths exist | - name: Ensure AppService Discord paths exist | ||||
| file: | file: | ||||
| @@ -8,7 +8,7 @@ matrix_appservice_irc_container_image_self_build: false | |||||
| matrix_appservice_irc_docker_repo: "https://github.com/matrix-org/matrix-appservice-irc.git" | 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_src_files_path: "{{ matrix_base_data_path }}/appservice-irc/docker-src" | ||||
| matrix_appservice_irc_version: release-0.32.1 | |||||
| matrix_appservice_irc_version: release-0.33.0 | |||||
| matrix_appservice_irc_docker_image: "{{ matrix_container_global_registry_prefix }}matrixdotorg/matrix-appservice-irc:{{ matrix_appservice_irc_version }}" | matrix_appservice_irc_docker_image: "{{ matrix_container_global_registry_prefix }}matrixdotorg/matrix-appservice-irc:{{ matrix_appservice_irc_version }}" | ||||
| 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') }}" | ||||
| @@ -64,6 +64,10 @@ | |||||
| 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_image_self_build|bool" | when: "matrix_appservice_irc_enabled|bool and not matrix_appservice_irc_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-appservice-irc repository is present when self-building | - name: Ensure matrix-appservice-irc repository is present when self-building | ||||
| git: | git: | ||||
| @@ -38,6 +38,10 @@ | |||||
| force_source: "{{ matrix_appservice_slack_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_appservice_slack_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_slack_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_appservice_slack_docker_image_force_pull }}" | ||||
| when: "not matrix_appservice_slack_container_image_self_build|bool" | when: "not matrix_appservice_slack_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-appservice-slack repository is present when self-building | - name: Ensure matrix-appservice-slack repository is present when self-building | ||||
| git: | git: | ||||
| @@ -21,6 +21,10 @@ | |||||
| force_source: "{{ matrix_appservice_webhooks_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_appservice_webhooks_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_webhooks_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_appservice_webhooks_docker_image_force_pull }}" | ||||
| when: "not matrix_appservice_webhooks_container_image_self_build|bool" | when: "not matrix_appservice_webhooks_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - block: | - block: | ||||
| - name: Ensure Appservice webhooks repository is present on self-build | - name: Ensure Appservice webhooks repository is present on self-build | ||||
| @@ -29,6 +29,10 @@ | |||||
| force_source: "{{ matrix_beeper_linkedin_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_beeper_linkedin_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_beeper_linkedin_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_beeper_linkedin_docker_image_force_pull }}" | ||||
| when: "not matrix_beeper_linkedin_container_image_self_build|bool" | when: "not matrix_beeper_linkedin_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - block: | - block: | ||||
| - name: Ensure Beeper LinkedIn repository is present on self-build | - name: Ensure Beeper LinkedIn repository is present on self-build | ||||
| @@ -6,6 +6,10 @@ | |||||
| 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_heisenbridge_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_heisenbridge_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_heisenbridge_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_heisenbridge_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure heisenbridge paths exist | - name: Ensure heisenbridge paths exist | ||||
| file: | file: | ||||
| @@ -8,6 +8,10 @@ | |||||
| 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_hookshot_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_hookshot_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_hookshot_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_hookshot_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure hookshot paths exist | - name: Ensure hookshot paths exist | ||||
| file: | file: | ||||
| @@ -41,6 +41,10 @@ | |||||
| force_source: "{{ matrix_mautrix_facebook_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_facebook_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_mautrix_facebook_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_facebook_docker_image_force_pull }}" | ||||
| when: not matrix_mautrix_facebook_container_image_self_build | when: not matrix_mautrix_facebook_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix Facebook paths exist | - name: Ensure Mautrix Facebook paths exist | ||||
| file: | file: | ||||
| @@ -41,6 +41,10 @@ | |||||
| force_source: "{{ matrix_mautrix_googlechat_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_googlechat_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_mautrix_googlechat_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_googlechat_docker_image_force_pull }}" | ||||
| when: not matrix_mautrix_googlechat_container_image_self_build | when: not matrix_mautrix_googlechat_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix googlechat paths exist | - name: Ensure Mautrix googlechat paths exist | ||||
| file: | file: | ||||
| @@ -41,6 +41,10 @@ | |||||
| force_source: "{{ matrix_mautrix_hangouts_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_hangouts_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_mautrix_hangouts_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_hangouts_docker_image_force_pull }}" | ||||
| when: not matrix_mautrix_hangouts_container_image_self_build | when: not matrix_mautrix_hangouts_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix Hangouts paths exist | - name: Ensure Mautrix Hangouts paths exist | ||||
| file: | file: | ||||
| @@ -14,6 +14,10 @@ | |||||
| force_source: "{{ matrix_mautrix_instagram_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_instagram_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_mautrix_instagram_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_instagram_docker_image_force_pull }}" | ||||
| when: not matrix_mautrix_instagram_container_image_self_build | when: not matrix_mautrix_instagram_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix instagram paths exist | - name: Ensure Mautrix instagram paths exist | ||||
| file: | file: | ||||
| @@ -15,6 +15,10 @@ | |||||
| force_source: "{{ matrix_mautrix_signal_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_signal_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_mautrix_signal_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_signal_docker_image_force_pull }}" | ||||
| when: "not matrix_mautrix_signal_container_image_self_build|bool" | when: "not matrix_mautrix_signal_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix Signal repository is present on self-build | - name: Ensure Mautrix Signal repository is present on self-build | ||||
| @@ -55,6 +55,10 @@ | |||||
| force_source: "{{ matrix_mautrix_telegram_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_telegram_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_mautrix_telegram_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_telegram_docker_image_force_pull }}" | ||||
| when: "not matrix_mautrix_telegram_container_image_self_build|bool" | when: "not matrix_mautrix_telegram_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure lottieconverter is present when self-building | - name: Ensure lottieconverter is present when self-building | ||||
| git: | git: | ||||
| @@ -18,6 +18,10 @@ | |||||
| force_source: "{{ matrix_mautrix_twitter_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_twitter_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_mautrix_twitter_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_twitter_docker_image_force_pull }}" | ||||
| when: matrix_mautrix_twitter_enabled|bool and not matrix_mautrix_twitter_container_image_self_build | when: matrix_mautrix_twitter_enabled|bool and not matrix_mautrix_twitter_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix Twitter paths exist | - name: Ensure Mautrix Twitter paths exist | ||||
| file: | file: | ||||
| @@ -57,6 +57,10 @@ | |||||
| force_source: "{{ matrix_mautrix_whatsapp_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mautrix_whatsapp_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_mautrix_whatsapp_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_whatsapp_docker_image_force_pull }}" | ||||
| when: not matrix_mautrix_whatsapp_container_image_self_build | when: not matrix_mautrix_whatsapp_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Mautrix Whatsapp repository is present on self-build | - name: Ensure Mautrix Whatsapp repository is present on self-build | ||||
| git: | git: | ||||
| @@ -72,6 +72,10 @@ | |||||
| force_source: "{{ matrix_mx_puppet_discord_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_discord_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_mx_puppet_discord_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_discord_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_discord_enabled|bool and not matrix_mx_puppet_discord_container_image_self_build | when: matrix_mx_puppet_discord_enabled|bool and not matrix_mx_puppet_discord_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure MX Puppet Discord repository is present on self build | - name: Ensure MX Puppet Discord repository is present on self build | ||||
| git: | git: | ||||
| @@ -73,6 +73,10 @@ | |||||
| force_source: "{{ matrix_mx_puppet_groupme_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_groupme_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_mx_puppet_groupme_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_groupme_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_groupme_enabled|bool and not matrix_mx_puppet_groupme_container_image_self_build | when: matrix_mx_puppet_groupme_enabled|bool and not matrix_mx_puppet_groupme_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure MX Puppet Groupme repository is present on self build | - name: Ensure MX Puppet Groupme repository is present on self build | ||||
| git: | git: | ||||
| @@ -42,6 +42,10 @@ | |||||
| force_source: "{{ matrix_mx_puppet_instagram_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_instagram_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_mx_puppet_instagram_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_instagram_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_instagram_enabled|bool and not matrix_mx_puppet_instagram_container_image_self_build | when: matrix_mx_puppet_instagram_enabled|bool and not matrix_mx_puppet_instagram_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure mx-puppet-instagram paths exist | - name: Ensure mx-puppet-instagram paths exist | ||||
| file: | file: | ||||
| @@ -73,6 +73,10 @@ | |||||
| force_source: "{{ matrix_mx_puppet_skype_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_skype_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_mx_puppet_skype_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_skype_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_skype_enabled|bool and not matrix_mx_puppet_skype_container_image_self_build | when: matrix_mx_puppet_skype_enabled|bool and not matrix_mx_puppet_skype_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure MX Puppet Skype repository is present on self build | - name: Ensure MX Puppet Skype repository is present on self build | ||||
| git: | git: | ||||
| @@ -1,6 +1,6 @@ | |||||
| --- | --- | ||||
| # Mx Puppet Slack is a Matrix <-> Slack bridge | # Mx Puppet Slack is a Matrix <-> Slack bridge | ||||
| # See: https://github.com/Sorunome/mx-puppet-slack | |||||
| # See: https://gitlab.com/beeper/mx-puppet-monorepo (originally based on https://github.com/Sorunome/mx-puppet-slack) | |||||
| matrix_mx_puppet_slack_enabled: true | matrix_mx_puppet_slack_enabled: true | ||||
| @@ -8,7 +8,9 @@ matrix_mx_puppet_slack_oauth_client_id: '' | |||||
| matrix_mx_puppet_slack_oauth_client_secret: '' | matrix_mx_puppet_slack_oauth_client_secret: '' | ||||
| matrix_mx_puppet_slack_container_image_self_build: false | matrix_mx_puppet_slack_container_image_self_build: false | ||||
| matrix_mx_puppet_slack_container_image_self_build_repo: "https://github.com/Sorunome/mx-puppet-slack.git" | |||||
| matrix_mx_puppet_slack_container_image_self_build_repo: "https://gitlab.com/beeper/mx-puppet-monorepo.git" | |||||
| matrix_mx_puppet_slack_container_image_self_build_version: "{{ 'main' if matrix_mx_puppet_slack_version == 'latest' else matrix_mx_puppet_slack_version }}" | |||||
| matrix_mx_puppet_slack_container_image_self_build_dockerfile_path: "docker/Dockerfile-slack" | |||||
| # Controls whether the mx-puppet-slack container exposes its HTTP port (tcp/8432 in the container). | # Controls whether the mx-puppet-slack container exposes its HTTP port (tcp/8432 in the container). | ||||
| # | # | ||||
| @@ -16,8 +18,8 @@ matrix_mx_puppet_slack_container_image_self_build_repo: "https://github.com/Soru | |||||
| matrix_mx_puppet_slack_container_http_host_bind_port: '' | matrix_mx_puppet_slack_container_http_host_bind_port: '' | ||||
| matrix_mx_puppet_slack_version: latest | matrix_mx_puppet_slack_version: latest | ||||
| matrix_mx_puppet_slack_docker_image: "{{ matrix_mx_puppet_slack_docker_image_name_prefix }}sorunome/mx-puppet-slack:{{ matrix_mx_puppet_slack_version }}" | |||||
| matrix_mx_puppet_slack_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_slack_container_image_self_build else matrix_container_global_registry_prefix }}" | |||||
| matrix_mx_puppet_slack_docker_image: "{{ matrix_mx_puppet_slack_docker_image_name_prefix }}beeper/mx-puppet-monorepo/slack:{{ matrix_mx_puppet_slack_version }}" | |||||
| matrix_mx_puppet_slack_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_slack_container_image_self_build else 'registry.gitlab.com/' }}" | |||||
| matrix_mx_puppet_slack_docker_image_force_pull: "{{ matrix_mx_puppet_slack_docker_image.endswith(':latest') }}" | matrix_mx_puppet_slack_docker_image_force_pull: "{{ matrix_mx_puppet_slack_docker_image.endswith(':latest') }}" | ||||
| matrix_mx_puppet_slack_base_path: "{{ matrix_base_data_path }}/mx-puppet-slack" | matrix_mx_puppet_slack_base_path: "{{ matrix_base_data_path }}/mx-puppet-slack" | ||||
| @@ -69,12 +69,17 @@ | |||||
| force_source: "{{ matrix_mx_puppet_slack_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_slack_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_mx_puppet_slack_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_slack_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_slack_enabled|bool and not matrix_mx_puppet_slack_container_image_self_build | when: matrix_mx_puppet_slack_enabled|bool and not matrix_mx_puppet_slack_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure MX Puppet Slack repository is present on self build | - name: Ensure MX Puppet Slack repository is present on self build | ||||
| git: | git: | ||||
| repo: "{{ matrix_mx_puppet_slack_container_image_self_build_repo }}" | repo: "{{ matrix_mx_puppet_slack_container_image_self_build_repo }}" | ||||
| dest: "{{ matrix_mx_puppet_slack_docker_src_files_path }}" | dest: "{{ matrix_mx_puppet_slack_docker_src_files_path }}" | ||||
| force: "yes" | force: "yes" | ||||
| version: "{{ matrix_mx_puppet_slack_container_image_self_build_version }}" | |||||
| register: matrix_mx_puppet_slack_git_pull_results | register: matrix_mx_puppet_slack_git_pull_results | ||||
| when: "matrix_mx_puppet_slack_enabled|bool and matrix_mx_puppet_slack_container_image_self_build" | when: "matrix_mx_puppet_slack_enabled|bool and matrix_mx_puppet_slack_container_image_self_build" | ||||
| @@ -85,7 +90,7 @@ | |||||
| force_source: "{{ matrix_mx_puppet_slack_git_pull_results.changed if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_slack_git_pull_results.changed 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_mx_puppet_slack_git_pull_results.changed }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_slack_git_pull_results.changed }}" | ||||
| build: | build: | ||||
| dockerfile: Dockerfile | |||||
| dockerfile: "{{ matrix_mx_puppet_slack_container_image_self_build_dockerfile_path }}" | |||||
| path: "{{ matrix_mx_puppet_slack_docker_src_files_path }}" | path: "{{ matrix_mx_puppet_slack_docker_src_files_path }}" | ||||
| pull: true | pull: true | ||||
| when: "matrix_mx_puppet_slack_enabled|bool and matrix_mx_puppet_slack_container_image_self_build" | when: "matrix_mx_puppet_slack_enabled|bool and matrix_mx_puppet_slack_container_image_self_build" | ||||
| @@ -73,6 +73,10 @@ | |||||
| force_source: "{{ matrix_mx_puppet_steam_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_steam_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_mx_puppet_steam_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_steam_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_steam_enabled|bool and not matrix_mx_puppet_steam_container_image_self_build | when: matrix_mx_puppet_steam_enabled|bool and not matrix_mx_puppet_steam_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure MX Puppet Steam repository is present on self build | - name: Ensure MX Puppet Steam repository is present on self build | ||||
| git: | git: | ||||
| @@ -73,6 +73,10 @@ | |||||
| force_source: "{{ matrix_mx_puppet_twitter_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mx_puppet_twitter_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_mx_puppet_twitter_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mx_puppet_twitter_docker_image_force_pull }}" | ||||
| when: matrix_mx_puppet_twitter_enabled|bool and not matrix_mx_puppet_twitter_container_image_self_build | when: matrix_mx_puppet_twitter_enabled|bool and not matrix_mx_puppet_twitter_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure MX Puppet Twitter repository is present on self build | - name: Ensure MX Puppet Twitter repository is present on self build | ||||
| git: | git: | ||||
| @@ -4,6 +4,10 @@ | |||||
| docker_image: | docker_image: | ||||
| name: "{{ matrix_sms_bridge_docker_image }}" | name: "{{ matrix_sms_bridge_docker_image }}" | ||||
| 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 }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-sms-bridge paths exist | - name: Ensure matrix-sms-bridge paths exist | ||||
| file: | file: | ||||
| @@ -5,7 +5,7 @@ matrix_client_cinny_enabled: true | |||||
| matrix_client_cinny_container_image_self_build: false | matrix_client_cinny_container_image_self_build: false | ||||
| matrix_client_cinny_container_image_self_build_repo: "https://github.com/ajbura/cinny.git" | matrix_client_cinny_container_image_self_build_repo: "https://github.com/ajbura/cinny.git" | ||||
| matrix_client_cinny_version: v1.8.1 | |||||
| matrix_client_cinny_version: v1.8.2 | |||||
| matrix_client_cinny_docker_image: "{{ matrix_client_cinny_docker_image_name_prefix }}ajbura/cinny:{{ matrix_client_cinny_version }}" | matrix_client_cinny_docker_image: "{{ matrix_client_cinny_docker_image_name_prefix }}ajbura/cinny:{{ matrix_client_cinny_version }}" | ||||
| matrix_client_cinny_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_cinny_container_image_self_build else matrix_container_global_registry_prefix }}" | matrix_client_cinny_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_cinny_container_image_self_build else matrix_container_global_registry_prefix }}" | ||||
| matrix_client_cinny_docker_image_force_pull: "{{ matrix_client_cinny_docker_image.endswith(':latest') }}" | matrix_client_cinny_docker_image_force_pull: "{{ matrix_client_cinny_docker_image.endswith(':latest') }}" | ||||
| @@ -18,6 +18,10 @@ | |||||
| force_source: "{{ matrix_client_cinny_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_client_cinny_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_client_cinny_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_client_cinny_docker_image_force_pull }}" | ||||
| when: "not matrix_client_cinny_container_image_self_build|bool" | when: "not matrix_client_cinny_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Cinny repository is present on self-build | - name: Ensure Cinny repository is present on self-build | ||||
| git: | git: | ||||
| @@ -19,6 +19,10 @@ | |||||
| force_source: "{{ matrix_client_element_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_client_element_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_client_element_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_client_element_docker_image_force_pull }}" | ||||
| when: "not matrix_client_element_container_image_self_build|bool" | when: "not matrix_client_element_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Element repository is present on self-build | - name: Ensure Element repository is present on self-build | ||||
| git: | git: | ||||
| @@ -19,6 +19,10 @@ | |||||
| force_source: "{{ matrix_client_hydrogen_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_client_hydrogen_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_client_hydrogen_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_client_hydrogen_docker_image_force_pull }}" | ||||
| when: "not matrix_client_hydrogen_container_image_self_build|bool" | when: "not matrix_client_hydrogen_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Hydrogen repository is present on self-build | - name: Ensure Hydrogen repository is present on self-build | ||||
| git: | git: | ||||
| @@ -45,6 +45,10 @@ | |||||
| force_source: "{{ matrix_corporal_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_corporal_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_corporal_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_corporal_docker_image_force_pull }}" | ||||
| when: "matrix_corporal_enabled|bool and not matrix_corporal_container_image_self_build|bool" | when: "matrix_corporal_enabled|bool and not matrix_corporal_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Matrix Corporal config installed | - name: Ensure Matrix Corporal config installed | ||||
| copy: | copy: | ||||
| @@ -24,6 +24,10 @@ | |||||
| force_source: "{{ matrix_coturn_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_coturn_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_coturn_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_coturn_docker_image_force_pull }}" | ||||
| when: "not matrix_coturn_container_image_self_build|bool" | when: "not matrix_coturn_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - block: | - block: | ||||
| - name: Ensure Coturn repository is present on self-build | - name: Ensure Coturn repository is present on self-build | ||||
| @@ -23,6 +23,10 @@ | |||||
| 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_dendrite_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_dendrite_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_dendrite_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_dendrite_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Check if a Dendrite signing key exists | - name: Check if a Dendrite signing key exists | ||||
| stat: | stat: | ||||
| @@ -92,6 +92,9 @@ | |||||
| force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_dimension_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_dimension_docker_image_force_pull }}" | ||||
| when: "not matrix_dimension_container_image_self_build|bool" | when: "not matrix_dimension_container_image_self_build|bool" | ||||
| register: matrix_dimension_pull_results | register: matrix_dimension_pull_results | ||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: matrix_dimension_pull_results is not failed | |||||
| - name: Ensure dimension repository is present on self-build | - name: Ensure dimension repository is present on self-build | ||||
| git: | git: | ||||
| @@ -7,6 +7,10 @@ | |||||
| force_source: "{{ matrix_dynamic_dns_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_dynamic_dns_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_dynamic_dns_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_dynamic_dns_docker_image_force_pull }}" | ||||
| when: matrix_dynamic_dns_enabled|bool and not matrix_dynamic_dns_container_image_self_build | when: matrix_dynamic_dns_enabled|bool and not matrix_dynamic_dns_container_image_self_build | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Dynamic DNS paths exist | - name: Ensure Dynamic DNS paths exist | ||||
| file: | file: | ||||
| @@ -28,6 +28,10 @@ | |||||
| force_source: "{{ matrix_email2matrix_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_email2matrix_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_email2matrix_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_email2matrix_docker_image_force_pull }}" | ||||
| when: "not matrix_email2matrix_container_image_self_build|bool" | when: "not matrix_email2matrix_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Email2Matrix repository is present on self-build | - name: Ensure Email2Matrix repository is present on self-build | ||||
| git: | git: | ||||
| @@ -22,6 +22,10 @@ | |||||
| 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_etherpad_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_etherpad_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_etherpad_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_etherpad_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-etherpad.service installed | - name: Ensure matrix-etherpad.service installed | ||||
| template: | template: | ||||
| @@ -11,6 +11,10 @@ | |||||
| force_source: "{{ matrix_grafana_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_grafana_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_grafana_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_grafana_docker_image_force_pull }}" | ||||
| when: "matrix_grafana_enabled|bool" | when: "matrix_grafana_enabled|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure grafana paths exists | - name: Ensure grafana paths exists | ||||
| file: | file: | ||||
| @@ -23,6 +23,10 @@ | |||||
| force_source: "{{ matrix_jitsi_jicofo_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_jitsi_jicofo_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_jitsi_jicofo_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_jitsi_jicofo_docker_image_force_pull }}" | ||||
| when: matrix_jitsi_enabled|bool | when: matrix_jitsi_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure jitsi-jicofo environment variables file created | - name: Ensure jitsi-jicofo environment variables file created | ||||
| template: | template: | ||||
| @@ -23,6 +23,10 @@ | |||||
| force_source: "{{ matrix_jitsi_jvb_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_jitsi_jvb_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_jitsi_jvb_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_jitsi_jvb_docker_image_force_pull }}" | ||||
| when: matrix_jitsi_enabled|bool | when: matrix_jitsi_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure jitsi-jvb configuration files created | - name: Ensure jitsi-jvb configuration files created | ||||
| template: | template: | ||||
| @@ -24,6 +24,10 @@ | |||||
| force_source: "{{ matrix_jitsi_prosody_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_jitsi_prosody_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_jitsi_prosody_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_jitsi_prosody_docker_image_force_pull }}" | ||||
| when: matrix_jitsi_enabled|bool | when: matrix_jitsi_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure jitsi-prosody environment variables file is created | - name: Ensure jitsi-prosody environment variables file is created | ||||
| template: | template: | ||||
| @@ -25,6 +25,10 @@ | |||||
| force_source: "{{ matrix_jitsi_web_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_jitsi_web_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_jitsi_web_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_jitsi_web_docker_image_force_pull }}" | ||||
| when: matrix_jitsi_enabled|bool | when: matrix_jitsi_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure jitsi-web environment variables file created | - name: Ensure jitsi-web environment variables file created | ||||
| template: | template: | ||||
| @@ -52,6 +52,10 @@ | |||||
| force_source: "{{ matrix_ma1sd_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_ma1sd_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_ma1sd_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_ma1sd_docker_image_force_pull }}" | ||||
| when: "not matrix_ma1sd_container_image_self_build|bool" | when: "not matrix_ma1sd_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - block: | - block: | ||||
| - name: Ensure gradle is installed for self-building (Debian) | - name: Ensure gradle is installed for self-building (Debian) | ||||
| @@ -51,6 +51,10 @@ | |||||
| force_source: "{{ matrix_mailer_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_mailer_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_mailer_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mailer_docker_image_force_pull }}" | ||||
| when: "matrix_mailer_enabled|bool and not matrix_mailer_container_image_self_build|bool" | when: "matrix_mailer_enabled|bool and not matrix_mailer_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-mailer.service installed | - name: Ensure matrix-mailer.service installed | ||||
| template: | template: | ||||
| @@ -191,6 +191,10 @@ | |||||
| force_source: "{{ matrix_nginx_proxy_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_nginx_proxy_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_nginx_proxy_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_nginx_proxy_docker_image_force_pull }}" | ||||
| when: matrix_nginx_proxy_enabled|bool | when: matrix_nginx_proxy_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-nginx-proxy.service installed | - name: Ensure matrix-nginx-proxy.service installed | ||||
| template: | template: | ||||
| @@ -22,7 +22,7 @@ scrape_configs: | |||||
| - targets: ['{{ matrix_server_fqn_matrix }}:{{ matrix_nginx_proxy_container_https_host_bind_port if matrix_nginx_proxy_https_enabled else matrix_nginx_proxy_container_http_host_bind_port }}'] | - targets: ['{{ matrix_server_fqn_matrix }}:{{ matrix_nginx_proxy_container_https_host_bind_port if matrix_nginx_proxy_https_enabled else matrix_nginx_proxy_container_http_host_bind_port }}'] | ||||
| labels: | labels: | ||||
| job: "master" | job: "master" | ||||
| index: 1 | |||||
| index: "0" | |||||
| {% for worker in matrix_nginx_proxy_proxy_synapse_workers_enabled_list %} | {% for worker in matrix_nginx_proxy_proxy_synapse_workers_enabled_list %} | ||||
| - job_name: 'synapse-{{ worker.type }}-{{ worker.instanceId }}' | - job_name: 'synapse-{{ worker.type }}-{{ worker.instanceId }}' | ||||
| metrics_path: /_synapse-worker-{{ worker.type }}-{{ worker.instanceId }}/metrics | metrics_path: /_synapse-worker-{{ worker.type }}-{{ worker.instanceId }}/metrics | ||||
| @@ -36,5 +36,5 @@ scrape_configs: | |||||
| - targets: ['{{ matrix_server_fqn_matrix }}:{{ matrix_nginx_proxy_container_https_host_bind_port if matrix_nginx_proxy_https_enabled else matrix_nginx_proxy_container_http_host_bind_port }}'] | - targets: ['{{ matrix_server_fqn_matrix }}:{{ matrix_nginx_proxy_container_https_host_bind_port if matrix_nginx_proxy_https_enabled else matrix_nginx_proxy_container_http_host_bind_port }}'] | ||||
| labels: | labels: | ||||
| job: "{{ worker.type }}" | job: "{{ worker.type }}" | ||||
| index: {{ worker.instanceId }} | |||||
| index: "{{ worker.instanceId }}" | |||||
| {% endfor %} | {% endfor %} | ||||
| @@ -21,6 +21,10 @@ | |||||
| force_source: "{{ matrix_postgres_backup_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_postgres_backup_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_postgres_backup_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_postgres_backup_docker_image_force_pull }}" | ||||
| when: matrix_postgres_backup_enabled|bool | when: matrix_postgres_backup_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Postgres backup paths exist | - name: Ensure Postgres backup paths exist | ||||
| file: | file: | ||||
| @@ -43,6 +43,10 @@ | |||||
| force_source: "{{ matrix_postgres_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_postgres_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_postgres_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_postgres_docker_image_force_pull }}" | ||||
| when: matrix_postgres_enabled|bool | when: matrix_postgres_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Postgres paths exist | - name: Ensure Postgres paths exist | ||||
| file: | file: | ||||
| @@ -11,6 +11,10 @@ | |||||
| force_source: "{{ matrix_prometheus_node_exporter_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_prometheus_node_exporter_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_prometheus_node_exporter_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_prometheus_node_exporter_docker_image_force_pull }}" | ||||
| when: "matrix_prometheus_node_exporter_enabled|bool" | when: "matrix_prometheus_node_exporter_enabled|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-prometheus-node-exporter.service installed | - name: Ensure matrix-prometheus-node-exporter.service installed | ||||
| template: | template: | ||||
| @@ -11,6 +11,10 @@ | |||||
| force_source: "{{ matrix_prometheus_postgres_exporter_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_prometheus_postgres_exporter_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_prometheus_postgres_exporter_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_prometheus_postgres_exporter_docker_image_force_pull }}" | ||||
| when: "matrix_prometheus_postgres_exporter_enabled|bool" | when: "matrix_prometheus_postgres_exporter_enabled|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-prometheus-postgres-exporter.service installed | - name: Ensure matrix-prometheus-postgres-exporter.service installed | ||||
| template: | template: | ||||
| @@ -6,6 +6,10 @@ | |||||
| 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_prometheus_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_prometheus_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_prometheus_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_prometheus_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Prometheus paths exists | - name: Ensure Prometheus paths exists | ||||
| file: | file: | ||||
| @@ -11,6 +11,10 @@ | |||||
| force_source: "{{ matrix_redis_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_redis_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_redis_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_redis_docker_image_force_pull }}" | ||||
| when: matrix_redis_enabled|bool | when: matrix_redis_enabled|bool | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure redis paths exist | - name: Ensure redis paths exist | ||||
| file: | file: | ||||
| @@ -52,6 +52,10 @@ | |||||
| force_source: "{{ matrix_registration_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_registration_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_registration_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_registration_docker_image_force_pull }}" | ||||
| when: "not matrix_registration_container_image_self_build|bool" | when: "not matrix_registration_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-registration repository is present when self-building | - name: Ensure matrix-registration repository is present when self-building | ||||
| git: | git: | ||||
| @@ -6,6 +6,10 @@ | |||||
| 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_sygnal_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_sygnal_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_sygnal_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_sygnal_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure Sygnal paths exists | - name: Ensure Sygnal paths exists | ||||
| file: | file: | ||||
| @@ -11,6 +11,10 @@ | |||||
| force_source: "{{ matrix_synapse_admin_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_synapse_admin_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_synapse_admin_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_admin_docker_image_force_pull }}" | ||||
| when: "matrix_synapse_admin_enabled|bool and not matrix_synapse_admin_container_image_self_build|bool" | when: "matrix_synapse_admin_enabled|bool and not matrix_synapse_admin_container_image_self_build|bool" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Ensure matrix-synapse-admin repository is present when self-building | - name: Ensure matrix-synapse-admin repository is present when self-building | ||||
| git: | git: | ||||
| @@ -8,6 +8,10 @@ | |||||
| 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_s3_goofys_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_s3_goofys_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_s3_goofys_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_s3_goofys_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| # This will throw a Permission Denied error if already mounted | # This will throw a Permission Denied error if already mounted | ||||
| - name: Check Matrix Goofys external storage mountpoint path | - name: Check Matrix Goofys external storage mountpoint path | ||||
| @@ -48,6 +48,10 @@ | |||||
| 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_synapse_rust_synapse_compress_state_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_synapse_rust_synapse_compress_state_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_synapse_rust_synapse_compress_state_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_rust_synapse_compress_state_docker_image_force_pull }}" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Generate rust-synapse-compress-state room find command | - name: Generate rust-synapse-compress-state room find command | ||||
| set_fact: | set_fact: | ||||
| @@ -54,6 +54,10 @@ | |||||
| force_source: "{{ matrix_synapse_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | force_source: "{{ matrix_synapse_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_synapse_docker_image_force_pull }}" | force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_docker_image_force_pull }}" | ||||
| when: "not matrix_synapse_container_image_self_build" | when: "not matrix_synapse_container_image_self_build" | ||||
| register: result | |||||
| retries: "{{ matrix_container_retries_count }}" | |||||
| delay: "{{ matrix_container_retries_delay }}" | |||||
| until: result is not failed | |||||
| - name: Check if a Synapse signing key exists | - name: Check if a Synapse signing key exists | ||||
| stat: | stat: | ||||