<div class="csl-bib-body">
<div class="csl-entry">Santolucito, M., Zhang, J., Zhai, E., Cito, J., & Piskac, R. (2022). Learning CI Configuration Correctness for Early Build Feedback. In <i>Proceedings 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering</i> (pp. 1006–1017). IEEE. https://doi.org/10.1109/SANER53432.2022.00118</div>
</div>
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/152297
-
dc.description.abstract
Continuous Integration (CI) allows developers to check whether their code can build successfully and pass tests across various system environments with every commit. To use a CI platform, a developer must provide configuration files within a code repository to specify build conditions. Incorrect configuration settings lead to CI build failures, which can take hours to run, wasting valuable developer time and delaying product release dates. Debugging CI configurations is a slow and error-prone process. The only way to check the correctness of CI configurations is to push a commit and wait for the build result. We present VeriCI, the first system for localizing CI configuration errors at the code level. VeriCI runs as a static analysis tool, before the developer sends the build request to the CI server. Our key insight is that the commit history and the corresponding build histories available in CI environments can be used both for build error prediction and build error localization. We leverage the build history as a labeled dataset to automatically derive customized rules describing correct CI configurations, using supervised machine learning techniques. To more accurately identify root causes, we train a neural network that filters out constraints that are less likely to be connected to the root cause of build failure. We evaluate VeriCI on real world data from GitHub and achieve 91% accuracy of predicting a build failure and correctly identify the root cause in 75% of cases. We also conducted a between-subjects user study with 20 software developers, showing that VeriCI significantly helps users in identifying and fixing errors in CI.
en
dc.language.iso
en
-
dc.subject
configuration files
en
dc.subject
continuous integration
en
dc.subject
program analysis
en
dc.title
Learning CI Configuration Correctness for Early Build Feedback
en
dc.type
Inproceedings
en
dc.type
Konferenzbeitrag
de
dc.contributor.affiliation
Columbia University, United States of America (the)
-
dc.contributor.affiliation
Yale University, United States of America (the)
-
dc.contributor.affiliation
Alibaba Group (China), China
-
dc.contributor.affiliation
Yale University, United States of America (the)
-
dc.relation.isbn
978-1-6654-3786-8
-
dc.relation.doi
10.1109/SANER53432.2022.00002
-
dc.description.startpage
1006
-
dc.description.endpage
1017
-
dc.type.category
Full-Paper Contribution
-
tuw.booktitle
Proceedings 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering
-
tuw.relation.publisher
IEEE
-
tuw.researchTopic.id
C5
-
tuw.researchTopic.name
Computer Science Foundations
-
tuw.researchTopic.value
100
-
tuw.publication.orgunit
E194-01 - Forschungsbereich Software Engineering
-
tuw.publisher.doi
10.1109/SANER53432.2022.00118
-
dc.description.numberOfPages
12
-
tuw.author.orcid
0000-0001-8646-4364
-
tuw.author.orcid
0000-0002-3267-0776
-
tuw.event.name
IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER 2022)
en
dc.description.sponsorshipexternal
National Science Foundation
-
dc.relation.grantnoexternal
Grant No.s CCF-1715387, CCF-2105208, CCF-1553168 and CNS-1565208
-
tuw.event.startdate
15-03-2022
-
tuw.event.enddate
18-03-2022
-
tuw.event.online
Hybrid
-
tuw.event.type
Event for scientific audience
-
tuw.event.place
Honolulu, HI
-
tuw.event.country
US
-
tuw.event.presenter
Zhang, Jialu
-
wb.sciencebranch
Informatik
-
wb.sciencebranch.oefos
1020
-
wb.sciencebranch.value
100
-
item.languageiso639-1
en
-
item.cerifentitytype
Publications
-
item.openairecristype
http://purl.org/coar/resource_type/c_5794
-
item.openairetype
conference paper
-
item.grantfulltext
none
-
item.fulltext
no Fulltext
-
crisitem.author.dept
Columbia University
-
crisitem.author.dept
Yale University
-
crisitem.author.dept
Alibaba Group (China)
-
crisitem.author.dept
E194-01 - Forschungsbereich Software Engineering
-
crisitem.author.dept
Yale University
-
crisitem.author.orcid
0000-0001-8646-4364
-
crisitem.author.orcid
0000-0002-3267-0776
-
crisitem.author.parentorg
E194 - Institut für Information Systems Engineering