Storskalig CI/CD med ett Eiffel-integrerat Jenkins-plugin

Publicerad

Typ

Examensarbete på kandidatnivå
Bachelor Thesis

Program

Modellbyggare

Tidskriftstitel

ISSN

Volymtitel

Utgivare

Sammanfattning

Today, companies are facing a challenge of increasing software demand and complexity. A key part of the strategy is to overcome this by using continuous integration and deployment (CI/CD). One of the most popular tools for managing CI/CD flows is the automation server, Jenkins. At the time of writing this, Jenkins lacks native support for automation via standardized event-driven job triggering using protocols such as Eiffel. This forces companies to develop their own solutions, which often lead to poorly developed software and lack of company collaboration on an enterprise level. Together with Nexer, this thesis has set the goal to lay a foundation for a solution. By enabling Jenkins to trigger work instructions in an event-driven and automated way using Eiffel events. The development process followed an iterative, test-driven approach, supported by continuous validation of prototypes. The result is a functional Jenkins plugin capable of responding to Eiffel events, a reusable configuration system for defining filter rules, and a user-friendly interface for managing them. Additionally, a standalone component was developed to receive and process incoming Eiffel events. Looking forward, the thesis proposes a dedicated orchestration service to manage multiple EiffelManager instances. This concept would enhance scalability, observability, and fault tolerance, making it suitable for large-scale CI/CD infrastructures. Overall, the work indicates that extending Jenkins to support event-driven workflows using Eiffel is both feasible and valuable, offering a path toward more standardized and collaborative enterprise CI/CD pipelines.

Beskrivning

Ämne/nyckelord

CI/CD, Continuous Integration, Continuous Development, Jenkins, Eiffel, RabbitMQ, Pipeline

Citation

Arkitekt (konstruktör)

Geografisk plats

Byggnad (typ)

Byggår

Modelltyp

Skala

Teknik / material

Index

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced