LF Energy Summit 2023 featured a presentation titled “Ensuring Requirements on the SEAPATH Project: Testing Process and Continuous Integration,” delivered by Erwann Roussy of Savoir-faire Linux (video follows below). In this session, Roussy shed light on the SEAPATH project and its approach to guaranteeing project requirements through a meticulous testing process and seamless continuous integration. Here are the key takeaways from the presentation:
Introducing the SEAPATH Project and Context
Erwann Roussy began by introducing himself and his role as a software engineer at Savoir-faire Linux, a company specializing in software solutions for energy systems. He highlighted the significant transformation occurring in the energy sector, moving from a centralized power grid to a distributed one due to factors like renewable energy sources, electric vehicles, and IoT devices. These changes necessitate more adaptable and dynamic systems to meet evolving demands.
SEAPATH Project Vision: Transitioning to Software-Centric Automation
The SEAPATH (Software Enabled Automation Platform and Artifacts There-in) project aims to revolutionize power automation systems by transitioning from hardware-centric to software-centric substations. This shift would enhance flexibility, scalability, and adaptability. The project is deeply rooted in the open source philosophy and aims to integrate various open source components to achieve its goals.
Versions of SEAPATH: Yocto and Debian
Two main versions of SEAPATH were highlighted in the presentation: “Yocto” and “Debian.” The Yocto version follows a numbered philosophy and offers a finely-tuned Linux system with specific software and kernel patches. On the other hand, the “Debian” version aligns more with a 90s philosophy, widely adopted among developers. Both versions contribute to creating a software-centric substation environment.
Rigorous Testing for Meeting Requirements
A significant portion of the presentation was dedicated to the testing process employed by the SEAPATH project to ensure that it meets various requirements. These requirements include reliability, cybersecurity, and low latency. Test scenarios were detailed for each case, outlining the project’s approach to validate and verify different aspects of the software-enabled automation platform.
Continuous Integration Implementation
Continuous integration (CI) plays a crucial role in ensuring the stability and quality of SEAPATH. Roussy explained how the project utilizes GitHub Actions to implement CI seamlessly. The process involves testing all code changes with a cluster, building the project, running tests, and using Ansible for backup and reporting. This meticulous approach helps maintain the project’s maintainability and quality.
Future Directions: Adding Robustness Testing
Looking ahead, Roussy discussed the importance of adding robustness testing to the project. While this aspect was not covered extensively in the presentation, it represents a future direction for further enhancing SEAPATH’s reliability and resilience.