Sachin Prabhu et Michael Adam (tous deux de Red Hat) ont parlé de l'importance des tests lors de la conférence sambaXP 2020 de cette année. Ils ont fait la démonstration de la mise en place d'un environnement de test automatisé pour Samba sur Gluster.
Résumé
Les tests constituent une partie extrêmement importante du processus de développement de logiciels. Heureusement, une grande partie du travail de test est automatisée aujourd'hui. L'intégration continue (IC) est un mot à la mode. Dans Samba, nous avons parcouru un long chemin depuis l'exécution manuelle des tests (parfois) jusqu'à notre propre système de construction automatique qui impose une exécution complète de la suite de tests en tant que push-gate, en passant par l'exécution de divers tests en parallèle dans le système gitlab ci pour chaque demande de fusion.
Si tester des systèmes client-serveur comme Samba de manière automatisée est déjà exigeant, tester un cluster est encore plus compliqué et gourmand en ressources. CTDB lui-même a été testé en isolation avec des processus locaux depuis le début, et récemment un environnement de test a été ajouté au selftest de Samba qui permet de tester la pile samba+ctdb entièrement avec un processus local et un wrapper de socket. Mais il manque toujours un test automatisé et périodique d'une configuration samba et ctdb sur un vrai système de fichiers en cluster. Une des raisons pour lesquelles cela n'est pas si facile à mettre en œuvre est le fait qu'il faudrait généralement quelques machines virtuelles pour mettre en place un tel cluster de test.
Cette présentation présente un projet que nous avons récemment commencé à étudier et à travailler. Il vise à créer un test périodique en tirant les dernières versions de Samba et Gluster, en mettant en place un cluster et en exécutant des suites de tests sur celui-ci. Les erreurs seraient signalées aux deux projets. Le projet centos-ci est utilisé comme ressource informatique pour les tests. Ce projet fournit des ressources de serveur bare metal gérées par jenkins pour les projets open source à intégrer dans leurs systèmes de CI. Ces serveurs sont suffisamment puissants pour exécuter des configurations de clusters réalistes dans des machines virtuelles. La présentation montre comment les ressources centos-ci sont intégrées dans ce système de test. En outre, les possibilités sont explorées, comment intégrer les ressources centos-ci en tant que runners supplémentaires pour les runners CI gitlab de Samba.
Á propos de la "rétrospective 2020 de sambaXP"
Dans cette série, nous présenterons des enregistrements de la sambaXP 2020 du mois à venir. La 19e édition de la conférence internationale sur le logiciel open source Samba a eu lieu du 26 au 28 mai 2020 pour la première fois exclusivement sous forme numérique. En raison du changement de format de l'événement et de l'utilisation d'une plateforme de conférence en ligne, l'organisateur SerNet est en mesure de proposer tous les exposés sous forme de vidéos à visionner (lien).