liu.seSearch for publications in DiVA
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Evaluation of Plugin Frameworks for the Jenkins Continuous Integration Build Server
Linköping University, Department of Computer and Information Science. Linköping University, The Institute of Technology.
Linköping University, Department of Computer and Information Science. Linköping University, The Institute of Technology.
2012 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [sv]

Begreppet Continuous Integration (CI) är idag centralt för många företag i deras produktutveckling. Kraven dessa företag ställer på denna programvara skiljer sig, beroende på vad de använder den till och hur deras miljö ser ut. Jenkins är en programvara som används för CI, det är öppen källkod och har ett brett stöd för pluginer. Det finns ett stort urval av pluginer redan idag, men det är inte säkert att specifika önskemål från företag uppfylls av dessa. Därför är det intressant att på ett snabbt sätt ta fram specifika pluginer för dessa företag.

Vi har i denna rapport utrett möjligheterna att utveckla pluginer till Jenkins i Ruby. Det senaste året har utveckling av pluginer i Ruby vuxit fram för Jenkins. Ramverket är fortfarande i ett tidigt stadium, men är utformat för att kunna falla tillbaka på det programmeringsspråk som Jenkins är skrivet i; Java. Det är på så sätt fullt möjligt att nu skriva pluginer i Ruby. Ruby är ett expressivt språk som är lätt att ta till sig, och den komplexitet som följer pluginutveckling i Java är till stor del gömd i Rubys ramverk.

Vår slutsats är att Ruby är tillräckligt moget för att användas till pluginutveckling för Jenkins.

Examensarbetet är uppdelat i två delar: en utvärdering av ramverken och deras verktyg för Ruby och Java, och en utvecklingsfas där vi fastställer vår analys. Den Rubyplugin som utvecklats kan ses som ett ‘proof-of-concept’, denna kan även användas som en slags mall vid framtida pluginutveckling vid Autoliv.

Abstract [en]

The concept Continuous Integration (CI) is vital to many companies today in their product development. These companies may have specific demands on their CI-software, depending on how they are using it and what their development environment looks like. Jenkins is a software that is used for CI, it is open source and it has a wide support for plugins. There is a great selection of plugins available today, but it is not certain these plugins satisfy the specific requirements. It is therefore interesting to, in a quick way, develop plugins that meet these conditions.

In this report, we have evaluated the possibility to develop plugins for Jenkins in Ruby. In the last year or so, plugin development in Ruby has been growing to become a viable option. The framework is still at a very early stage, but it is constructed in such a way so that one can always fall back on the language Jenkins was made in;; Java. Because of this it’s definitely possible to write plugins in Ruby. Ruby is an expressive language and it is easy to learn, the complexity that comes with writing plugins in Java for Jenkins is largely hidden in the Ruby framework.

Our conclusion is that Ruby is ready to be used for plugin development for Jenkins.

This thesis is divided into two parts, an evaluation of the frameworks and the tools for Java and Ruby, and a development phase where we concrete our analysis. The Ruby plugin that is developed in this thesis can be seen as proof-of-concept, it can also be used as a kind of template for future plugin development at Autoliv.

Place, publisher, year, edition, pages
2012. , 40 p.
Keyword [en]
Jenkins, Ruby, Jruby, plugin, plugin development, framework
Keyword [sv]
Jenkins, Ruby, Jruby, Plugin, pluginutveckling, ramverk
National Category
Computer Engineering
Identifiers
URN: urn:nbn:se:liu:diva-77181ISRN: LIU-IDA/LITH-EX-G--12/006--SEOAI: oai:DiVA.org:liu-77181DiVA: diva2:525400
External cooperation
Autoliv
Subject / course
Computer and information science at the Institute of Technology
Presentation
2012-03-28, IDA Linköpings universitet, Linköping, 10:15 (Swedish)
Uppsok
Technology
Examiners
Available from: 2012-05-08 Created: 2012-05-07 Last updated: 2012-05-08Bibliographically approved

Open Access in DiVA

evaluation_of_plugin_frameworks(942 kB)549 downloads
File information
File name FULLTEXT01.pdfFile size 942 kBChecksum SHA-512
57865b19300329c0026a573258cb460a7231966e80a4026123f5cdcb4e12f0849098a615ab48ebb5034d6663dc7efb07ab00ee1a7763fe3790a9695dcddb5029
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Christensen, JensEkstedt, Jonatan
By organisation
Department of Computer and Information ScienceThe Institute of Technology
Computer Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 549 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 292 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf