This thesis aims to develop a web application to enhance the usability of GitHub Actions by addressing key limitations such as the absence of a graphical user interface and the challenges in visualizing deployment targets, test case failures, and flaky tests. The proposed web application will provide intuitive data visualization for deployment targets and software versions, simplify the identification of failing tests and relevant logs, and detect flaky tests by tracking failures across multiple pull requests. Users will also be able to trigger actions like rebuilding or deploying directly from the interface, improving the overall developer experience.
The project will involve a comprehensive analysis of existing GitHub Actions capabilities in the Artemis open source project, design and prototyping of a user-friendly interface, and the implementation of the application using modern web development frameworks (Spring Boot on the server side and Angular 18+ with modern features on the client side). By leveraging webhooks, the application will capture build data for processing and display. The thesis will also incorporate best practices from other CI systems, such as Bamboo, to ensure effective data visualization. Ultimately, this work seeks to bridge the usability gap in GitHub Actions, facilitating more efficient CI/CD workflows for developers.