Skip to content
Snippets Groups Projects
stedif's avatar
L2SS-1031: improve unittest debugging
Stefano Di Frischia authored
be6540fd
History

Pipeline Status Coverage Status Documentation Status

Tango Station Control

Station Control software related to Tango devices.

Index

Installation

Prerequisites

After checking out this repo, be sure to also check out the submodules:

git submodule init
git submodule update

You will also need:

  • docker
  • docker-compose
  • make
  • bash

Bootstrap

The bootstrap procedure is needed only once. First we build all docker containers, and load the initial configuration. This may take a while:

cd docker-compose
make bootstrap

By default bootstrap will configure the station to use simulators. You can lookup alternative configurations in the CDB directory.

Now we can start all containers, and make sure everything is up:

make start
make status

If not, you can inspect why with docker logs <container>. The containers will automatically be restarted on reboot or failure. Stop them explicitly to bring them down (make stop <container>).

Most notably, you will have web interfaces available at:

Development

For development you will need several dependencies including:

git g++ gcc make docker docker-compose shellcheck graphviz python3-dev \
python3-pip python3-tox libboost-python-dev libtango-cpp pkg-config

Of these docker-compose must be at least 2.0 and Python 3.7 or higher. Alternatively, tox can be installed through pip using pip install tox.

Finally, running unit tests relies on availability of casacore data see: lofar-device-base Dockerfile for details.

Versioning

When changing behavior a new version for Lofar Station Control should be reserved. To do this please follow semantic versioning.

Next change the version in the following places:

  1. The VERSION file.
  2. In test_writer_sst.py for the test_header_info test.
  3. Add a Release note for the given version.
  4. Once the merge requests is merged to master, add a tag with the version such as v0.3.2 or v0.3.3 etc
  5. The tag can be deployed to the environments, manually, through https://git.astron.nl/lofar2.0/tango/-/tags

Release Notes

  • 0.5.0 Add Configuration device
  • 0.4.1 Fix for missing SDP attributes for spectral inversion
  • 0.4.0 Have most containers report health status and add make await command
  • 0.3.1 Fix for applying boot device dsconfig
  • 0.3.0 Initial version of deployment scripts and functionality
  • 0.2.0 Extend Beamlet device with FPGA source address attributes
  • 0.1.2 Fix StatisticsClient accessing last_invalid_packet_exception parameter