technique:adminserv:mattermost:admin

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.

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 le dépôt officiel. Aujourd’hui, la méthode préférée utilise le binaire go pour récupérer l’outil :

snippet.bash
$ go install github.com/mattermost/mmctl@latest

Note:

Parfois, cette commande échoue ; on télécharge alors directement l'exécutable.

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.

On crée un jeton d’accès dans les paramètres du compte :

 Création d'un jeton d'accès personnel sur Mattermost

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:

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
  • technique/adminserv/mattermost/admin.txt
  • de qduchemi