Speakers
Description
The development of a complex application code is a complicated task. A minor code change may influence the behavior and performance of the application. For that reason, it is necessary to test new code versions regularly to identify potential issues.
Continuous Integration (CI) is the practice of automatically executing a compilation script and set of test cases to ensure that the integrated codebase is in a workable state. The integration is often followed by Continuous Benchmarking (CB) to evaluate the impact of the code change on the application performance, and Continuous Deployment (CD) to distribute a new version of the developed code.
The CI/CD is usually executed in a virtual infrastructure. To perform a code benchmarking the target execution environment is necessary. Moreover, the environments of HPC infrastructures are specific, using the system of software modules. Thus, the CI tests executed at the compute nodes of the system where the code should be used may identify additional test failures.
The poster presents the CI/CD infrastructure deployed at IT4Innovations allowing users to execute their tests at the computing nodes of the complementary and production systems Karolina and Barbora.