835c349275
Bridge is setup to work on the matrix side with this, but the discord invite link is not automatically generated.
66 lines
2.7 KiB
YAML
66 lines
2.7 KiB
YAML
---
|
|
- name: Ensure Appservice Discord image is pulled
|
|
docker_image:
|
|
name: "{{ matrix_appservice_discord_docker_image }}"
|
|
when: "matrix_appservice_discord_enabled"
|
|
|
|
- name: Ensure Appservice Discord configuration path exists
|
|
file:
|
|
path: "{{ matrix_appservice_discord_base_path }}"
|
|
state: directory
|
|
mode: 0750
|
|
owner: "{{ matrix_user_username }}"
|
|
group: "{{ matrix_user_username }}"
|
|
when: "matrix_appservice_discord_enabled"
|
|
|
|
- name: Ensure Matrix Appservice Discord config installed
|
|
copy:
|
|
content: "{{ matrix_appservice_discord_configuration|to_nice_yaml }}"
|
|
dest: "{{ matrix_appservice_discord_base_path }}/config.yaml"
|
|
mode: 0644
|
|
owner: "{{ matrix_user_username }}"
|
|
group: "{{ matrix_user_username }}"
|
|
when: "matrix_appservice_discord_enabled"
|
|
|
|
- name: Ensure matrix-appservice-discord.service installed
|
|
template:
|
|
src: "{{ role_path }}/templates/ext/appservice-discord/systemd/matrix-appservice-discord.service.j2"
|
|
dest: "/etc/systemd/system/matrix-appservice-discord.service"
|
|
mode: 0644
|
|
when: "matrix_appservice_discord_enabled"
|
|
|
|
- stat:
|
|
path: "{{ matrix_appservice_discord_base_path }}/discord-registration.yaml"
|
|
register: appservice_discord_registration_file
|
|
|
|
- name: Generate matrix-appservice-discord discord-registration.yaml if it doesn't exist
|
|
shell: /usr/bin/docker run --rm --name matrix-appservice-discord-gen -v {{ matrix_appservice_discord_base_path }}:/data:z {{ matrix_appservice_discord_docker_image }} node build/src/discordas.js -r -u "http://matrix-appservice-discord:9005" -c /data/config.yaml -f /data/discord-registration.yaml -l discord_bot
|
|
when: "matrix_appservice_discord_enabled and appservice_discord_registration_file.stat.exists == False"
|
|
|
|
- set_fact:
|
|
matrix_synapse_app_service_config_file_appservice_discord: '{{ matrix_appservice_discord_base_path }}/discord-registration.yml'
|
|
|
|
- set_fact:
|
|
matrix_synapse_container_additional_volumes: >
|
|
{{ matrix_synapse_container_additional_volumes }}
|
|
+
|
|
{{ [{'src': '{{ matrix_appservice_discord_base_path }}/discord-registration.yaml', 'dst': '{{ matrix_synapse_app_service_config_file_appservice_discord }}', 'options': 'ro'}] }}
|
|
when: "matrix_appservice_discord_enabled"
|
|
|
|
- set_fact:
|
|
matrix_synapse_app_service_config_files: >
|
|
{{ matrix_synapse_app_service_config_files }}
|
|
+
|
|
{{ ["{{ matrix_synapse_app_service_config_file_appservice_discord }}"] | to_nice_json }}
|
|
when: "matrix_appservice_discord_enabled"
|
|
|
|
#
|
|
# Tasks related to getting rid of matrix-appservice-discord (if it was previously enabled)
|
|
#
|
|
|
|
- name: Ensure matrix-appservice-discord.service doesn't exist
|
|
file:
|
|
path: "/etc/systemd/system/matrix-appservice-discord.service"
|
|
state: absent
|
|
when: "not matrix_appservice_discord_enabled"
|