In July of 2020, I stepped into the role of Technical Team Lead for the KVM Solution Test project. When I joined, there was a simple foundation of automation but I quickly identified areas that could be improved . Over the next six months my team and I worked to achieve a goal of 100% automated coverage of the test plan. The team now functions as a mature development organization, evaluating new line items and features as they arise.
We worked with three major Linux distributions (RHEL/SLES/Ubuntu) during their Beta testing periods to verify KVM on their platforms. It was a challenging endeavor maintaining our relationships with 3 different sets of engineers, and I ended up learning a lot from the process about managing priorities and expectations for my team. Where applicable we accommodated large scale testing scenarios (involving 10TB+ of RAM and 1000+ KVM guests) which provided a unique value-add to the community, verifying the platform at an enterprise scale.
The DevOps framework was built with Ansible and consisted of 25k+ lines of code. We approached the framework with an Agile methodology in mind by building an MVP, getting hands on the solution and identifying bugs and innovations. With over 200 pull requests merged to date, we had built an incredible community of contributors extending beyond our immediate team. The power of our collaboration across our test teams built a solid level of resiliency and modularity to the code base, setting the team up for minimal technical debt in the future.