Cargando…

A roadmap to continuous integration for ATLAS software development

The ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million C++ and 1.4 million python lines. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, pro...

Descripción completa

Detalles Bibliográficos
Autores principales: Undrus, Alexander, Elmsheuser, Johannes, Obreshkov, Emil, Krasznahorkay, Attila
Lenguaje:eng
Publicado: 2017
Materias:
Acceso en línea:https://dx.doi.org/10.1088/1742-6596/898/7/072009
http://cds.cern.ch/record/2243766
_version_ 1780953324009291776
author Undrus, Alexander
Elmsheuser, Johannes
Obreshkov, Emil
Krasznahorkay, Attila
author_facet Undrus, Alexander
Elmsheuser, Johannes
Obreshkov, Emil
Krasznahorkay, Attila
author_sort Undrus, Alexander
collection CERN
description The ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million C++ and 1.4 million python lines. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, probing code changes in the Nightly Build System, migration to new platforms and compilers, deployment of production releases for worldwide access and supporting physicists with tools and interfaces for efficient software use. It maintains multi-stream, parallel development environment with about 70 multi-platform branches of nightly releases and provides vast opportunities for testing new packages, for verifying patches to existing software and for migrating to new platforms and compilers. The system evolution is currently aimed on the adoption of modern continuous integration (CI) practices focused on building nightly releases early and often, with rigorous unit and integration testing. This paper describes the CI incorporation program for the ATLAS software infrastructure. It brings modern open source tools such as Jenkins and CTest into the ATLAS Nightly System, rationalizes hardware resource allocation and administrative operations, provides improved feedback and means to fix broken builds promptly for developers. Once adopted, ATLAS CI practices will improve and accelerate innovation cycles and result in increased confidence in new software deployments. The paper reports the status of Jenkins integration with the ATLAS Nightly System as well as short and long term plans for the incorporation of CI practices.
id cern-2243766
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2017
record_format invenio
spelling cern-22437662019-10-15T15:18:31Zdoi:10.1088/1742-6596/898/7/072009http://cds.cern.ch/record/2243766engUndrus, AlexanderElmsheuser, JohannesObreshkov, EmilKrasznahorkay, AttilaA roadmap to continuous integration for ATLAS software developmentParticle Physics - ExperimentThe ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million C++ and 1.4 million python lines. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, probing code changes in the Nightly Build System, migration to new platforms and compilers, deployment of production releases for worldwide access and supporting physicists with tools and interfaces for efficient software use. It maintains multi-stream, parallel development environment with about 70 multi-platform branches of nightly releases and provides vast opportunities for testing new packages, for verifying patches to existing software and for migrating to new platforms and compilers. The system evolution is currently aimed on the adoption of modern continuous integration (CI) practices focused on building nightly releases early and often, with rigorous unit and integration testing. This paper describes the CI incorporation program for the ATLAS software infrastructure. It brings modern open source tools such as Jenkins and CTest into the ATLAS Nightly System, rationalizes hardware resource allocation and administrative operations, provides improved feedback and means to fix broken builds promptly for developers. Once adopted, ATLAS CI practices will improve and accelerate innovation cycles and result in increased confidence in new software deployments. The paper reports the status of Jenkins integration with the ATLAS Nightly System as well as short and long term plans for the incorporation of CI practices.The ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million lines of C++ and 1.4 million lines of python code. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, probing code changes in the Nightly Build System, migration to new platforms and compilers, deployment of production releases for worldwide access and supporting physicists with tools and interfaces for efficient software use. It maintains multi-stream, parallel development environment with about 70 multi-platform branches of nightly releases and provides vast opportunities for testing new packages, for verifying patches to existing software and for migrating to new platforms and compilers. The system evolution is currently aimed on the adoption of modern continuous integration (CI) practices focused on building nightly releases early and often, with rigorous unit and integration testing. This paper describes the CI incorporation program for the ATLAS software infrastructure. It brings modern open source tools such as Jenkins and GitLab into the ATLAS Nightly System, rationalizes hardware resource allocation and administrative operations, provides improved feedback and means to fix broken builds promptly for developers. Once adopted, ATLAS CI practices will improve and accelerate innovation cycles and result in increased confidence in new software deployments. The paper reports the status of Jenkins integration with the ATLAS Nightly System as well as short and long term plans for the incorporation of CI practices.ATL-SOFT-PROC-2017-034oai:cds.cern.ch:22437662017-02-02
spellingShingle Particle Physics - Experiment
Undrus, Alexander
Elmsheuser, Johannes
Obreshkov, Emil
Krasznahorkay, Attila
A roadmap to continuous integration for ATLAS software development
title A roadmap to continuous integration for ATLAS software development
title_full A roadmap to continuous integration for ATLAS software development
title_fullStr A roadmap to continuous integration for ATLAS software development
title_full_unstemmed A roadmap to continuous integration for ATLAS software development
title_short A roadmap to continuous integration for ATLAS software development
title_sort roadmap to continuous integration for atlas software development
topic Particle Physics - Experiment
url https://dx.doi.org/10.1088/1742-6596/898/7/072009
http://cds.cern.ch/record/2243766
work_keys_str_mv AT undrusalexander aroadmaptocontinuousintegrationforatlassoftwaredevelopment
AT elmsheuserjohannes aroadmaptocontinuousintegrationforatlassoftwaredevelopment
AT obreshkovemil aroadmaptocontinuousintegrationforatlassoftwaredevelopment
AT krasznahorkayattila aroadmaptocontinuousintegrationforatlassoftwaredevelopment
AT undrusalexander roadmaptocontinuousintegrationforatlassoftwaredevelopment
AT elmsheuserjohannes roadmaptocontinuousintegrationforatlassoftwaredevelopment
AT obreshkovemil roadmaptocontinuousintegrationforatlassoftwaredevelopment
AT krasznahorkayattila roadmaptocontinuousintegrationforatlassoftwaredevelopment