This technote gathers information about the history, current state and contemplates future evolutions of the Vera Rubin Observatory Control System (Rubin-OCS) Middleware. The middleware is the backbone of the Rubin-OCS. The highly distributed nature of the Rubin-OCS places tight constraints in terms of latency, availability and reliability for the middleware. Here we gather information to answer some common questions regarding technology choices, describe some of the in-house work done to obtain a stable system and document some of the concerns with the current state of the system, potential impacts for near-future/commissioning and future/operations. We also cover some of the work we have been doing to investigate alternative technologies and suggest some potential roadmaps for the future of the system.
Links:
- Publication URL: https://tstn-028.lsst.io
- Alternative editions: https://tstn-028.lsst.io/v
- GitHub repository: https://github.com/lsst-tstn/tstn-028
- Build system: https://github.com/lsst-tstn/tstn-028/actions/
You can clone this repository and build the technote locally with Sphinx:
git clone https://github.com/lsst-tstn/tstn-028
cd tstn-028
pip install -r requirements.txt
make html
Note
In a Conda environment, pip install -r requirements.txt
doesn't work as expected.
Instead, pip
install the packages listed in requirements.txt
individually.
The built technote is located at _build/html/index.html
.
You can edit the index.rst
file, which is a reStructuredText document.
The DM reStructuredText Style Guide is a good resource for how we write reStructuredText.
Remember that images and other types of assets should be stored in the _static/
directory of this repository.
See _static/README.rst
for more information.
The published technote at https://tstn-028.lsst.io will be automatically rebuilt whenever you push your changes to the main
branch on GitHub.
This technote's metadata is maintained in metadata.yaml
.
In this metadata you can edit the technote's title, authors, publication date, etc..
metadata.yaml
is self-documenting with inline comments.
The bibliography files in lsstbib/
are copies from lsst-texmf.
You can update them to the current lsst-texmf versions with:
make refresh-bib
Add new bibliography items to the local.bib
file in the root directory (and later add them to lsst-texmf).