Speaker
Description
This work focuses on the development of a method for automating the processes of building, testing, and deploying application software for the distributed data processing system of the SPD experiment at the NICA collider. The study involves a systematic analysis of the existing development process, identifying key issues such as the high labor intensity of manual operations and the lack of a unified methodology.
Based on the analysis of modern practices and technologies, a comprehensive method has been developed, incorporating GitFlow, CI/CD tools, and containerization using Docker and Apptainer. The methodology automates the creation of virtual environments, building and testing software modules, as well as the publication and deployment of images to container registries.
The practical implementation of the methodology has been deployed in several projects within the SPD collaboration, leading to a reduction in preparation time for releasing new software versions, and improving the quality and reproducibility of software products. This work demonstrates a substantial improvement in development processes for scientific collaborations and can be adapted for other large-scale projects.