Administration de Mattermost
L’administration de Mattermost se fait soit via la ligne de commande (depuis les machines de Picasoft ou en local), soit via l'API REST.
Les outils présentés ici permettent de réaliser toutes les opérations possibles et inimaginables, contrairement à la Console Système qui reste limitée.
Au vu des évolutions récentes de Mattermost (début 2020), la méthode préférée et recommandée par Mattermost est la première (mmctl
).
Quoi qu’il arrive, cet article présente une façon d’utiliser des commandes directement sur le serveur de production, il est indispensable d’essayer toute commande destructrice ou massive sur un serveur de test.
mmctl, comme à la maison
Le nouvel outil recommencé pour administrer Mattermost depuis la ligne de commande se nomme mmctl
.
Il est inclus dans l’image Docker, mais on préférera l’utiliser depuis son ordinateur personnel, dans la mesure où il demande des identifiants ou jetons d’accès personnels.
Les méthodes d’installations évoluant, on conseille de suivre la documentation.
Attention:
Dans les exemples qui suivent, on remplacera la version par la version du serveur en production.
Aujourd’hui, la méthode préférée utilise le binaire go
pour récupérer l’outil :
Une fois mmctl
récupéré, on s’authentifie. Je conseille d’utiliser un jeton d’accès personnel pour éviter un leak d’identifiants sur votre machine.
Ou bien via l’exécutable direction :
- snippet.bash
curl -vfsSL -O https://releases.mattermost.com/mmctl/v8.0.0/linux_amd64.tar
On crée un jeton d’accès dans les paramètres du compte :
L’avantage, c’est que ce jeton vous permettra de faire ce que vous voulez dans la mesure de vos droits, que vous soyez administrateur ou non ! Ce peut être un bonne outil si vous administrez seulement une équipe. :)
Ensuite, vous pouvez vous authentifier avec la commande suivante :
- snippet.bash
$ mmctl auth login https://team.picasoft.net --name Picasoft --access-token <votre jeton>
À ce stade, toutes les commandes listées dans la documentation sont utilisables. Exemple :
- snippet.bash
$ mmctl user search quentinduchemin@tuta.io id: h59n84k9jbgu78ob75wubbgxwr username: quentinduchemin nickname: position: Guignol de Picasoft first_name: Quentin last_name: Duchemin email: quentinduchemin@tuta.io auth_service:
mattermost, sur le serveur
Important:
Outil déprécié : ne plus utiliser!
Un autre outil d’administration s’appelle mattermost
, et sera bientôt déprécié.
Cet outil est disponible à l’intérieur du conteneur Docker du serveur Mattermost, et ne nécessite pas d’authentification.
Notez que pour une raison obscure, les commandes sont très longues à s’exécuter, raison de plus d’utiliser le premier outil.
La documentation des commandes est accessible sur le site de Mattermost.
On se rend sur la machine virtuelle hébergeant Mattermost et on rentre dans le conteneur Docker :
- snippet.bash
$ docker exec -it mattermost-app sh # cd bin/
Exemple d’utilisation de la commande, pour lister les canaux de l’équipe Picasoft :
- snippet.bash
$ ./mattermost channel list picasoft