Bonjour la liste,
On a un GitLab qui explose au vol lorsque l'on fait des commandes git trop rapidement.
Pour tenter de résumer, on a un repo principal qui a un pipeline, dans les tâches il va prendre des images docker de plusieurs distributions en plusieurs versions pour préparer les images avec un git clone d'une cinquantaine de repos présents sur le même serveur. Le but avoir des images avec les git clonés et consolidés avant de lancer les tests unitaires / linter / code quality ... et les tests fonctionnels. Les clones se font en utilisant ansible-galaxy avec un fichier des dépendances attendues. Donc quand le pipeline se lance ça fait plusieurs centaines de git clone à faire.
Tout se passait bien jusqu'au moment où le serveur hébergeant le gitlab a saturé une partition (la purge des images et layers docker non utilisés n'était pas en place). Les services ont été arrêté, la partition agrandie et tout est reparti sauf que depuis ce moment là sans que l'on sache si c'est lié, on peut faire quelques dizaines de commande git par ssh puis des erreurs, par exemple en faisant un simple git pull.
exec request failed on channel 0 fatal: Impossible de lire le dépôt distant.
gitlab-ctl status a tout qui tourne, les logs n'indiquent rien au niveau gitlab comme système
Il faut faire un gitlab-ctl restart pour pouvoir à nouveau faire quelques commandes.
Alors bien entendu on a réinstallé le serveur et restauré une sauvegarde du git mais le problème persiste donc on pense que le souci est dans le jeu de donnée de gitlab.
On a supprimé le projet qui porte le pipeline, pour le recréer sans changement. On est arrivé à abandonner ansible-galaxy pour faire des git clones dans une boucle for bash avec des sleep 15 entre chaque clone et là le git par ssh ne plante plus.
Mais le pipeline devient bien trop long à tourner. On a tenté de mettre un concurrency à 1 pour les jobs des pipelines mais sans succès c'est vraiment les git clone trop rapides qui font planter un élément de gitlab que ce dernier ne voit même pas dans son status.
On a fait une demande de support à gitlab.com mais le temps qu'on ait un retour, je préfère demander aussi à la communauté.
Auriez-vous des idées? Connaissez-vous des experts en GitLab qui pourrait aider?
Merci par avance