Remove appservice Discord
This commit is contained in:
parent
743e902e85
commit
6cc0a6a6b7
6 changed files with 0 additions and 209 deletions
|
@ -9,7 +9,6 @@
|
||||||
- nodejs
|
- nodejs
|
||||||
- matrix-synapse
|
- matrix-synapse
|
||||||
- matrix-mxisd
|
- matrix-mxisd
|
||||||
- matrix-appservice-discord
|
|
||||||
- matrix-appservice-irc
|
- matrix-appservice-irc
|
||||||
- matrix-appservice-webhooks
|
- matrix-appservice-webhooks
|
||||||
|
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
---
|
|
||||||
# service_name is the name of the project on GitHub
|
|
||||||
service_name: matrix-appservice-discord
|
|
||||||
|
|
||||||
# URL to clone
|
|
||||||
service_repo: https://github.com/Half-Shot/matrix-appservice-discord.git
|
|
||||||
|
|
||||||
# name of the service user
|
|
||||||
# It means that you will have to `sudo -u THISUSER zsh` to debug
|
|
||||||
service_user: "{{ service_name }}"
|
|
||||||
service_homedir: "/var/local/{{ service_name }}"
|
|
||||||
|
|
||||||
# service_path is where the project is cloned
|
|
||||||
# It can't be the home directory because of user hidden files.
|
|
||||||
service_path: "{{ service_homedir }}/{{ service_name }}"
|
|
|
@ -1,69 +0,0 @@
|
||||||
---
|
|
||||||
# Create service user
|
|
||||||
- include_tasks: service_user.yml
|
|
||||||
|
|
||||||
- name: "Clone {{ service_name }} project"
|
|
||||||
git:
|
|
||||||
repo: "{{ service_repo }}"
|
|
||||||
dest: "{{ service_path }}"
|
|
||||||
version: 14cf2829510e8b7b99b3238e2deaddf296ab4b76
|
|
||||||
become: true
|
|
||||||
become_user: "{{ service_user }}"
|
|
||||||
|
|
||||||
# Setup dependencies
|
|
||||||
# May create issues with package-lock.json not in gitignore
|
|
||||||
- name: "Install {{ service_name }} dependencies"
|
|
||||||
npm:
|
|
||||||
path: "{{ service_path }}"
|
|
||||||
production: true
|
|
||||||
become: true
|
|
||||||
become_user: "{{ service_user }}"
|
|
||||||
register: npm_result
|
|
||||||
retries: 3
|
|
||||||
until: npm_result is succeeded
|
|
||||||
|
|
||||||
# Typescript into javascript
|
|
||||||
- name: Compile matrix-appservice-discord
|
|
||||||
command: ./node_modules/.bin/tsc
|
|
||||||
args:
|
|
||||||
chdir: "{{ service_path }}"
|
|
||||||
register: npm_build_result
|
|
||||||
changed_when: npm_build_result
|
|
||||||
become: true
|
|
||||||
become_user: "{{ service_user }}"
|
|
||||||
|
|
||||||
- name: "Configure {{ service_name }}"
|
|
||||||
template:
|
|
||||||
src: config.yaml.j2
|
|
||||||
dest: "{{ service_path }}/config.yaml"
|
|
||||||
owner: "{{ service_user }}"
|
|
||||||
group: nogroup
|
|
||||||
mode: 0600
|
|
||||||
|
|
||||||
# Service file
|
|
||||||
- name: "Install {{ service_name }} systemd unit"
|
|
||||||
template:
|
|
||||||
src: systemd/appservice.service.j2
|
|
||||||
dest: "/etc/systemd/system/{{ service_name }}.service"
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: 0644
|
|
||||||
|
|
||||||
# TODO generate registration
|
|
||||||
|
|
||||||
- name: Copy appservice registration file
|
|
||||||
copy:
|
|
||||||
src: "{{ service_path }}/discord-registration.yaml"
|
|
||||||
dest: "/etc/matrix-synapse/{{ service_name }}-registration.yaml"
|
|
||||||
owner: matrix-synapse
|
|
||||||
group: nogroup
|
|
||||||
mode: 0600
|
|
||||||
remote_src: true
|
|
||||||
|
|
||||||
# Run
|
|
||||||
- name: "Ensure that {{ service_name }} is started"
|
|
||||||
systemd:
|
|
||||||
name: "{{ service_name }}"
|
|
||||||
state: started
|
|
||||||
enabled: true
|
|
||||||
daemon_reload: true
|
|
|
@ -1,19 +0,0 @@
|
||||||
---
|
|
||||||
# Having a custom group is useless so use nogroup
|
|
||||||
- name: "Create {{ service_user }} user"
|
|
||||||
user:
|
|
||||||
name: "{{ service_user }}"
|
|
||||||
group: nogroup
|
|
||||||
home: "{{ service_homedir }}"
|
|
||||||
system: true
|
|
||||||
shell: /bin/false
|
|
||||||
state: present
|
|
||||||
|
|
||||||
# Only service user should be able to go there
|
|
||||||
- name: "Secure {{ service_user }} home directory"
|
|
||||||
file:
|
|
||||||
path: "{{ service_homedir }}"
|
|
||||||
state: directory
|
|
||||||
owner: "{{ service_user }}"
|
|
||||||
group: nogroup
|
|
||||||
mode: 0700
|
|
|
@ -1,87 +0,0 @@
|
||||||
# {{ ansible_managed }}
|
|
||||||
|
|
||||||
bridge:
|
|
||||||
# Domain part of the bridge, e.g. matrix.org
|
|
||||||
domain: "auro.re"
|
|
||||||
# This should be your publically facing URL because Discord may use it to
|
|
||||||
# fetch media from the media store.
|
|
||||||
homeserverUrl: "http://auro.re"
|
|
||||||
# Interval at which to process users in the 'presence queue'. If you have
|
|
||||||
# 5 users, one user will be processed every 500 milliseconds according to the
|
|
||||||
# value below. This has a minimum value of 250.
|
|
||||||
# WARNING: This has a high chance of spamming the homeserver with presence
|
|
||||||
# updates since it will send one each time somebody changes state or is online.
|
|
||||||
presenceInterval: 500
|
|
||||||
# Disable setting presence for 'ghost users' which means Discord users on Matrix
|
|
||||||
# will not be shown as away or online.
|
|
||||||
disablePresence: false
|
|
||||||
# Disable sending typing notifications when somebody on Discord types.
|
|
||||||
disableTypingNotifications: false
|
|
||||||
# Disable deleting messages on Discord if a message is redacted on Matrix.
|
|
||||||
disableDeletionForwarding: false
|
|
||||||
# Enable users to bridge rooms using !discord commands. See
|
|
||||||
# https://t2bot.io/discord for instructions.
|
|
||||||
enableSelfServiceBridging: true
|
|
||||||
# Disable sending of read receipts for Matrix events which have been
|
|
||||||
# successfully bridged to Discord.
|
|
||||||
disableReadReceipts: false
|
|
||||||
# Disable Join Leave echos from matrix
|
|
||||||
disableJoinLeaveNotifications: true
|
|
||||||
# Authentication configuration for the discord bot.
|
|
||||||
auth:
|
|
||||||
clientID: "{{ matrix_discord_client_id }}"
|
|
||||||
botToken: "{{ matrix_discord_bot_token }}"
|
|
||||||
logging:
|
|
||||||
# What level should the logger output to the console at.
|
|
||||||
console: "warn" #silly, verbose, info, http, warn, error, silent
|
|
||||||
lineDateFormat: "MMM-D HH:mm:ss.SSS" # This is in moment.js format
|
|
||||||
files:
|
|
||||||
- file: "warn.log" # Will capture warnings
|
|
||||||
level: "warn"
|
|
||||||
- file: "botlogs.log" # Will capture logs from DiscordBot
|
|
||||||
level: "info"
|
|
||||||
enable:
|
|
||||||
- "DiscordBot"
|
|
||||||
database:
|
|
||||||
userStorePath: "user-store.db"
|
|
||||||
roomStorePath: "room-store.db"
|
|
||||||
# You may either use SQLite or Postgresql for the bridge database, which contains
|
|
||||||
# important mappings for events and user puppeting configurations.
|
|
||||||
# Use the filename option for SQLite, or connString for Postgresql.
|
|
||||||
# If you are migrating, see https://github.com/Half-Shot/matrix-appservice-discord/blob/master/docs/howto.md#migrate-to-postgres-from-sqlite
|
|
||||||
# WARNING: You will almost certainly be fine with sqlite unless your bridge
|
|
||||||
# is in heavy demand and you suffer from IO slowness.
|
|
||||||
filename: "discord.db"
|
|
||||||
# connString: "postgresql://user:password@localhost/database_name"
|
|
||||||
room:
|
|
||||||
# Set the default visibility of alias rooms, defaults to "public".
|
|
||||||
# One of: "public", "private"
|
|
||||||
defaultVisibility: "public"
|
|
||||||
channel:
|
|
||||||
# Pattern of the name given to bridged rooms.
|
|
||||||
# Can use :guild for the guild name and :name for the channel name.
|
|
||||||
namePattern: ":name :guild"
|
|
||||||
# Changes made to rooms when a channel is deleted.
|
|
||||||
deleteOptions:
|
|
||||||
# Prefix the room name with a string.
|
|
||||||
#namePrefix: "[Deleted]"
|
|
||||||
# Prefix the room topic with a string.
|
|
||||||
#topicPrefix: "This room has been deleted"
|
|
||||||
# Disable people from talking in the room by raising the event PL to 50
|
|
||||||
disableMessaging: false
|
|
||||||
# Remove the discord alias from the room.
|
|
||||||
unsetRoomAlias: false
|
|
||||||
# Remove the room from the directory.
|
|
||||||
unlistFromDirectory: false
|
|
||||||
# Set the room to be unavaliable for joining without an invite.
|
|
||||||
setInviteOnly: false
|
|
||||||
# Make all the discord users leave the room.
|
|
||||||
ghostsLeave: true
|
|
||||||
limits:
|
|
||||||
# Delay in milliseconds between discord users joining a room.
|
|
||||||
roomGhostJoinDelay: 6000
|
|
||||||
# Delay in milliseconds before sending messages to discord to avoid echos.
|
|
||||||
# (Copies of a sent message may arrive from discord before we've
|
|
||||||
# fininished handling it, causing us to echo it back to the room)
|
|
||||||
discordSendDelay: 750
|
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
# {{ ansible_managed }}
|
|
||||||
|
|
||||||
[Unit]
|
|
||||||
Description=A bridge between Matrix and Discord
|
|
||||||
After=syslog.target network-online.target mysql.service postgresql.service
|
|
||||||
Conflicts=shutdown.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=simple
|
|
||||||
User={{ service_user }}
|
|
||||||
WorkingDirectory={{ service_path }}
|
|
||||||
Environment="NODE_ENV=production"
|
|
||||||
ExecStart=/usr/bin/nodejs ./build/src/discordas.js -p 9005 -c config.yaml
|
|
||||||
Restart=always
|
|
||||||
RestartSec=3
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
Loading…
Reference in a new issue