Abstract
GitHub Actions (GHA) are a way to automate CI/CD workflows within the GitHub platform. The deep integration of GHA into GitHub enables to automate a wide range of social and technical activities. In this study, we investigate workflow smells, i.e., characteristics in the workflow that possibly indicate a deeper problem. Through a mining study, we first expose a list of frequent change patterns in the workflows of 83 GitHub projects. We then manually analyze these frequent change patterns to understand the negative effects that the frequent changes try to remove. To validate the list of 22 potential workflow smells that we thus obtain, we carry out a contribution study with 32 projects on GitHub through pull requests that contain a fix to the candidate smell. By qualitatively analyzing the maintainers' comments in 32 pull requests, we settle on 7 confirmed GHA workflow smells.
Original language | English |
---|---|
Title of host publication | 2024 IEEE International Conference on Source Code Analysis and Manipulation (SCAM) |
Publisher | IEEE |
Pages | 47-58 |
Number of pages | 12 |
ISBN (Electronic) | 979-8-3315-2850-8 |
DOIs | |
Publication status | Published - 2024 |
Event | 24th IEEE International Conference on Source Code Analysis and Manipulation, SCAM 2024 - High Country Conference Center, Flagstaff, United States Duration: 7 Oct 2024 → 8 Oct 2024 https://conf.researchr.org/home/scam-2024 |
Conference
Conference | 24th IEEE International Conference on Source Code Analysis and Manipulation, SCAM 2024 |
---|---|
Country/Territory | United States |
City | Flagstaff |
Period | 7/10/24 → 8/10/24 |
Internet address |
Bibliographical note
Green Open Access added to TU Delft Institutional Repository 'You share, we take care!' - Taverne project https://www.openaccess.nl/en/you-share-we-take-careOtherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public.
Keywords
- Continuous Deployment (CD)
- Continuous Integration (CI)
- GitHub
- GitHub Actions
- GitHub Actions Optimization
- GitHub Actions Security
- Open Source Software (OSS)
- Software Evolution