0% found this document useful (0 votes)
28 views3 pages

Jenkins

Uploaded by

senaaus000
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views3 pages

Jenkins

Uploaded by

senaaus000
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

DEPARTMENT OF ARTIFICIAL

INTELLIGENCE AND MACHINE


LEARNING

Course: DevOps and MLOps Course code: AIL74


Credits: 0:1:2 Term: Oct 2024 - Feb 2025
Semester: VII Section: A

JENKINS

Submitted by
Student Name: Sachin R Totad

USN: 1MS21AI051

M S RAMAIAH INSTITUTE OF TECHNOLOGY


(Autonomous Institute, Affiliated To VTU)
Bengaluru – 560054
NOV 2024
CI/CD (Jenkins) Papers Summary

Chronicles of CI/CD: A Deep Dive into its Usage Over Time


This study offers a comprehensive analysis of CI/CD technology adoption and
evolution, focusing on insights derived from 612,557 GitHub repositories spanning
2012 to 2023. The authors investigate three research questions related to the land-
scape of CI/CD tools, their ability to meet project-specific needs, and the evolution
of their usage over time. The study highlights GitHub Actions as the most dominant
CI/CD tool, present in 57.8% of repositories, followed by Travis CI at 38.8%. It also
reveals significant co-usage of multiple tools within projects, with some employing
as many as 13 CI/CD technologies simultaneously.
Through the GitHub REST API, the paper examines the integration of these tools
across programming languages, showing that modern languages such as Rust and
Go tend to have higher adoption rates of CI/CD technologies compared to older lan-
guages like C and C++. The authors also explore how developers frequently transition
between CI/CD tools, driven by technological advancements or project requirements.
This migration often reflects broader trends, such as the decline of Travis CI in favor
of GitHub Actions, particularly in JavaScript projects. The paper concludes by iden-
tifying gaps in support for multi-tool usage and the need for better interoperability
solutions to enhance developer productivity.[1]

CI/CD Pipelines Evolution and Restructuring: A Qualitative and Quan-


titative Study
This paper combines qualitative and quantitative approaches to analyze the re-
structuring and evolution of CI/CD pipelines in 8,000 GitHub-hosted open-source
projects. The authors identify 34 types of restructuring actions by examining 615
commits related to pipeline configuration changes. These actions are categorized into
two major groups: extra-functional improvements (e.g., maintainability, performance,
security) and changes to pipeline behavior (e.g., adapting to technological evolution
or improving build outcomes).
The study highlights common restructuring actions, such as improving code read-
ability, optimizing build matrices, and introducing caching strategies to reduce build
times. By using Travis CI as a case study, the paper tracks changes across 4,644
projects, extracting 16 key metrics such as job configuration, caching usage, and no-
tification mechanisms. The findings reveal that some components, like build jobs and
testing environments, undergo frequent updates due to evolving project needs or the
elimination of CI/CD smells.
The authors emphasize the importance of monitoring CI/CD pipeline evolution,
suggesting that developers can benefit from automated tools to recommend restructur-
ing actions. They also propose the use of extracted metrics for training recommender
systems to support developers in maintaining effective pipelines. This research un-
derscores GitHub’s role as a central platform for CI/CD, providing insights into its
widespread adoption and adaptability to diverse project requirements (icsme2021).[2]

Continuous Integration and Deployment Using Jenkins and Ansible


This paper emphasizes the growing need for automation in software develop-
ment to enhance efficiency, reduce errors, and streamline processes. The authors
propose a CI/CD pipeline that leverages Jenkins for continuous integration and An-
sible for deployment automation. Jenkins, a widely-used open-source tool, facilitates
the automation of complex integration tasks by employing plugins and Groovy-based
pipeline scripts. The paper details the setup of Jenkins pipelines, including stage def-
initions for versioning, installations, and deployment. Ansible, with its YAML-based
configurations, simplifies infrastructure management and ensures seamless deploy-
ment processes.
The integration of Jenkins and Ansible is demonstrated with practical steps for
automating builds and deployments, showing how to utilize JFrog Artifactory for
artifact management and SSH for secure communications. Additionally, the paper
discusses the comparative advantages of this system, such as reduced manual inter-
vention, faster iteration cycles, and improved error management during integration
and deployment stages. It underscores the efficiency of using GitHub repositories
for version control, emphasizing how GitHub’s compatibility with Jenkins enhances
CI/CD processes by maintaining a single source of truth for all project updates.[3]

References
[1] Gião, H. da, Flores, A., Pereira, R., & Cunha, J. (2024). Chroni-
cles of CI/CD: A Deep Dive into its Usage Over Time. arXiv Preprint.
https://doi.org/10.48550/arXiv.2402.17588
[2] Zampetti, F., Geremia, S., Bavota, G., & Di Penta, M. (2021). CI/CD Pipelines
Evolution and Restructuring: A Qualitative and Quantitative Study. 2021 IEEE
International Conference on Software Maintenance and Evolution (ICSME).
https://doi.org/10.1109/ICSME52107.2021.00045
[3] Mysari, S., & Bejgam, V. (2020). Continuous Integration and Continuous De-
ployment Pipeline Automation Using Jenkins Ansible. 2020 International Confer-
ence on Emerging Trends in Information Technology and Engineering (ic-ETITE).
https://doi.org/10.1109/ic-ETITE47903.2020.239

You might also like