ALMA provides a wide range of web applications. Their main purposes are to support the work of its end users, be it staff astronomers or the external scientific community which uses these to propose and track their observation projects, including the download of their scientific data. These web applications -internally known as Offline Software, in contrast to the Online Software which corresponds mainly to the Control Software- are separated in two groups. One group of applications, which requires to modify data contained in the ALMA Archive, is deployed at JAO Offices in Chile, and a second group of applications, which doesn't modify data in the ALMA Archive, is deployed at each ALMA Regional Center (ARC), to improve the application response time by running in a location closer to the final user. Based on previous improvements done to the deployment of these web applications used by the Joint ALMA Observatory (JAO), recently ALMA has achieved a unified way of deploying the applications that run at each ARC. This has been achieved by implementing an infrastructure/configuration as code approach. The corresponding code base that holds the configuration and infrastructure definitions to achieve this are kept under configuration control, following a set of DevOps best practices to handle the day-by-day operations of all these applications, in a unified way, across all ARCs and the JAO. To manage these tools at the different ARCs a maintenance group for this deployment framework has been recently established. In this paper we detail the framework implemented in this process. We also explain the characteristics of the globally distributed maintenance group, the process by which we manage the deployment of the applications at each ARC and the successes we have enjoyed thanks to this collaboration within ALMA's partner institutions.
|