ASPCS
 
Back to Volume
Paper: To Monorepo or Not to Monorepo: A Multi-Lingual, Telescope-Agnostic Steering Control System
Volume: 541, ADASS XXXIII
Page: 473
Authors: Nicholas Bruce; Dustin Lagoy; David A. Del Rizzo
DOI: 10.26624/SDFC6496
Abstract: At the Dominion Radio Astrophysical Observatory (DRAO), we support 5 single-dish radio telescopes and one 7-dish radio interferometer. Each has it’s own hardware interface for low-level motor control and previously depended on a series of network calls to communicate monitor and control tasks to progressively higher-level software layers such as pointing corrections, coordinate transforms, and complex steering paths. This functionality was split across multiple repositories organized by telescope.

In this paper we discuss the unification of these repositories into a single strictly-typed monorepo which supports multiple programming languages (Python/C/C++), multiple hardware interfaces, unified interfaces for all layers above the hardware interfaces. We also discuss how this improved the developer experience and simplified the testing and deployment of a telescope control system.

Back to Volume