Build and test infrastructure as code
Presentation describes the process of creation and maintaining of complex continuous integration and the test infrastructure.
Our product testing requires environment consisted of a set of machines. Every machine configuration have to be very flexible: different Linux, different versions of data base server can be installed on it and different replication configuration can be set up. A set of solutions which allow to represent all components of such system as code is presented. Our solution includes own domain-specific language to describe sets of virtual machines, describe set of repositories to install different versions of database servers, set of virtual machines templates. The scheduling of build and test execution is implemented as a set of Jenkins jobs. All Jenkins jobs are presented in the Jenkins Job Builder format. Also job loader is improved in order to automate Jenkins Views control and keep track of jobs versions.
Some practical experience of running such infrastructure with locally hosted 'libvirt' virtual machines and Amazon cloud virtual machines is also presented.
Quality assurance engineer
Graduated from St.Petersburg State Elektrotechnical University. Since 2007 worked for Nokia Research Center, participated in a number of energy and power management projects. In 2009 joined Maemo/Meego platform security team to work in the field of continious integration and test automation. In 2012 joined MariaDB Corporation as a qulity assurance engineer. Now trying to automate everything in testing with the complex multi-machines environments in colloboraton with Assotiation of Open Innovation "FRUCT" guys.