L'objectif de ce dépôt est de déployer Matterbridge sur Clever Cloud.
Tout se passe dans matterbridge.toml
. Lire la doc officielle.
matterbridge.toml
, sinon Matterbridge ne pourra pas trouver le canal lors du déploiement.
Si les canaux à connecter dans Mattermost et dans Slack portent exactement le même nom, vous pouvez modifier la section
[[samechannelgateway]]
.
Sinon :
# Each gateway share the same key (`[[gateway]]`) but creates a new entry.
# Configuration is based on lines order: channel names under [[gateway.inout]] and placed right after will be connected.
[[gateway]]
name="gateway-unique-name"
enable=true
# Channel names are different. For each one, create a [[gateway.inout]] entry.
# First channel to connect to.
[[gateway.inout]]
account="mattermost.betagouv"
channel="tmp-celinems-test"
# Second channel to connect to.
[[gateway.inout]]
account="slack.itou"
channel="tmp-celinems-test55"
- Slack Itou
- Mattermost Beta
- Chaque déploiement casse le lien entre un message parent et ses réponses (threads ou fils). Il faut donc espacer au maximum les déploiements ou les effectuer pendant une période de moindre activité.
- Les identifiants Slack génèrent des problèmes sur Mattermost car l'espace n'est pas interprété.
@Sonia Perelroizen
devient@Sonia Tizzaoui Perelroizen
. - Le service s'éteint et se redémarre tout seul (Supervisor) mais cela ne se reflète pas dans Clever, ce qui occasionne des problèmes avec les fils.
Matterbridge étant un démon, il n'est pas possible de le lancer sur une instance Clever Cloud sans y adjoindre un serveur web. Le serveur web permet à la sonde de Clever de vérifier que notre service est disponible. Lorsqu'une requête GET est effectuée, le serveur web demande le statut de Matterbridge à Supervisor. Si la réponse est positive, une 200 est renvoyée. Sinon, une 500 est renvoyée et le serveur web se suicide. La sonde de Clever passe toutes les minutes.
Récupérez les variables d'environnement dans Bitwarden (note « Matterbridge »).
touch .envrc
pip install -r requirements.txt
./dl_matterbridge.sh
# Prod server
uwsgi --http 127.0.0.1:8000 --master -p 4 -w wsgi:app
# Dev server
python app/main.py