Sachin Prabhu and Michael Adam (both Red Hat) talked about the importance of testing at this year's sambaXP 2020. They demonstrated setting up an automated testing environment for Samba on Gluster.
Testing is an extremely important part of the software development process. Luckily, a lot of the testing work is automated today. Continuous integration (CI) is a buzzword. In Samba, we have come a long way from manually running tests (sometimes) to our own autobuild system enforcing a full run of the test-suite as a push-gate to running various tests in parallel in the gitlab ci system for each merge request.
While testing server client systems like Samba in an automated way is demanding already, testing a cluster is even more complicated and resource hungry. CTDB itself has been tested in isolation with local processes since the beginning, and recently a test-environment has been added to Samba’s selftest that helps test the samba+ctdb stack entirely with local process and socket wrapper. But an automated, periodic test of a samba and ctdb setup on top of a real clustered file system is still missing. One aspect why this is not so easy to implement is the fact that it would usually require a couple of virtual machines to set up such a test cluster.
This presentation introduces a project that we recently started to investigate and work on. It aims to create a periodic test run pulling the latest bits of Samba and Gluster, setting up a cluster and running test suites against it. Errors would be reported to both projects. As compute resources for the test runs, the centos-ci is used. This project provides jenkins-managed bare metal server resources for open source projects to integrate into their CI systems. These servers are powerful enough to run realistic cluster setups in virtual machines. The presentation demonstrates how the centos-ci resources are integrated into this test system. Furthermore, possibilities are explored, how to integrate centos-ci resources as additional runners for Samba’s gitlab CI runners.
(Slides as PDF)
About the "sambaXP 2020 Retrospective"
In this series we will present recordings of the sambaXP 2020 in the coming month. The 19th edition of the international conference on the open source software Samba took place from 26 - 28 May 2020 for the first time exclusively in digital form. Due to the changed event format and the use of an online conference platform, organizer SerNet is able to offer all talks as videos for viewing (link).