diff --git a/docker-compose/.env b/docker-compose/.env index eb952e41424380f649d797ec6f2fa6c8879f961c..50751ff6a5ed2a57225e747b56a30b97c28beba6 100644 --- a/docker-compose/.env +++ b/docker-compose/.env @@ -9,7 +9,7 @@ TANGO_CPP_VERSION=9.3.9 TANGO_DB_VERSION=10.4.14 TANGO_DSCONFIG_VERSION=1.5.3 TANGO_HDBPP_VIEWER_VERSION=2021-05-28 -TANGO_ITANGO_VERSION=9.3.7 +TANGO_ITANGO_VERSION=9.3.9 TANGO_JAVA_VERSION=9.3.6 TANGO_POGO_VERSION=9.6.34 TANGO_REST_VERSION=1.14.6 diff --git a/docker-compose/device-antennafield.yml b/docker-compose/device-antennafield.yml index 0e16043f1170a937d0fe16e3e2853801c3b1339b..ec08ce0f28fd0817d663f122983fcbcfef8ed060 100644 --- a/docker-compose/device-antennafield.yml +++ b/docker-compose/device-antennafield.yml @@ -33,12 +33,16 @@ services: - control ports: - "5715:5715" # unique port for this DS + - "5815:5815" # ZeroMQ event port + - "5915:5915" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5815 + - TANGO_ZMQ_HEARTBEAT_PORT=5915 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-apsct.yml b/docker-compose/device-apsct.yml index 8addefff2bc1ead3510e835fad51187b40e4a996..024ca94227ef4149c4a42a5b83b08f61ea85e2c9 100644 --- a/docker-compose/device-apsct.yml +++ b/docker-compose/device-apsct.yml @@ -32,12 +32,16 @@ services: - control ports: - "5709:5709" # unique port for this DS + - "5809:5809" # ZeroMQ event port + - "5909:5909" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5809 + - TANGO_ZMQ_HEARTBEAT_PORT=5909 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-apspu.yml b/docker-compose/device-apspu.yml index 55a2d5a9a5d95a9c0e1617bb4732a1d96ab26a20..e70df9a1be75ea2c83c2d6049bedd0fd88d8dcab 100644 --- a/docker-compose/device-apspu.yml +++ b/docker-compose/device-apspu.yml @@ -32,12 +32,16 @@ services: - control ports: - "5710:5710" # unique port for this DS + - "5810:5810" # ZeroMQ event port + - "5910:5910" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5810 + - TANGO_ZMQ_HEARTBEAT_PORT=5910 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-beamlet.yml b/docker-compose/device-beamlet.yml index 4e80eba8f4033efe31749c51c95002204a0136f4..27dcc8020b333f687fdc389c71ccbe4276a80061 100644 --- a/docker-compose/device-beamlet.yml +++ b/docker-compose/device-beamlet.yml @@ -32,12 +32,16 @@ services: - control ports: - "5712:5712" # unique port for this DS + - "5812:5812" # ZeroMQ event port + - "5912:5912" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5812 + - TANGO_ZMQ_HEARTBEAT_PORT=5912 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-boot.yml b/docker-compose/device-boot.yml index 4d4108d9ffb189e05b8696039d68b2f1be20de2a..ae17797e75303adc66eaf83e0ae8f659b178980b 100644 --- a/docker-compose/device-boot.yml +++ b/docker-compose/device-boot.yml @@ -31,12 +31,16 @@ services: - control ports: - "5708:5708" # unique port for this DS + - "5808:5808" # ZeroMQ event port + - "5908:5908" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5808 + - TANGO_ZMQ_HEARTBEAT_PORT=5908 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-bst.yml b/docker-compose/device-bst.yml index 92522527c2071e9e94b9561ab010717c37c63c07..9655beb47a01f8a159206b8488f63cd4c59d6bed 100644 --- a/docker-compose/device-bst.yml +++ b/docker-compose/device-bst.yml @@ -35,12 +35,16 @@ services: - "5003:5003/udp" # port to receive SST UDP packets on - "5103:5103/tcp" # port to emit SST TCP packets on - "5717:5717" # unique port for this DS + - "5817:5817" # ZeroMQ event port + - "5917:5917" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5817 + - TANGO_ZMQ_HEARTBEAT_PORT=5917 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-ccd.yml b/docker-compose/device-ccd.yml index ffbfafcf31c9cfaea3ead633787b5bb0b9f69c47..7531012fd4983fadecbf51cdee70e6735135cbcc 100644 --- a/docker-compose/device-ccd.yml +++ b/docker-compose/device-ccd.yml @@ -32,12 +32,16 @@ services: - control ports: - "5721:5721" # unique port for this DS + - "5821:5821" # ZeroMQ event port + - "5921:5921" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5821 + - TANGO_ZMQ_HEARTBEAT_PORT=5921 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-digitalbeam.yml b/docker-compose/device-digitalbeam.yml index c5b45e9baaef63e15f44b4a539cf93a73244bde3..36801cd02e8fc97811910b0abb762315ca70b209 100644 --- a/docker-compose/device-digitalbeam.yml +++ b/docker-compose/device-digitalbeam.yml @@ -32,12 +32,16 @@ services: - control ports: - "5713:5713" # unique port for this DS + - "5813:5813" # ZeroMQ event port + - "5913:5913" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5813 + - TANGO_ZMQ_HEARTBEAT_PORT=5913 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-docker.yml b/docker-compose/device-docker.yml index db33c9aed034fa02fbafe2bc7ab4b66535fe0f33..c531ac63b1272a828cd619a43f3487d26a64e997 100644 --- a/docker-compose/device-docker.yml +++ b/docker-compose/device-docker.yml @@ -32,6 +32,8 @@ services: - control ports: - "5705:5705" # unique port for this DS + - "5805:5805" # ZeroMQ event port + - "5905:5905" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: @@ -40,6 +42,8 @@ services: user: 1000:${DOCKER_GID} # uid 1000 is the default "tango" user environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5805 + - TANGO_ZMQ_HEARTBEAT_PORT=5905 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-observation-control.yml b/docker-compose/device-observation-control.yml index 7025b8b3ab38cbb1290971c1907729b8aa09ca0f..42b9e48a96e113eaaf1988512ea6727bf1ee4fb4 100644 --- a/docker-compose/device-observation-control.yml +++ b/docker-compose/device-observation-control.yml @@ -31,12 +31,16 @@ services: - control ports: - "5703:5703" # unique port for this DS + - "5803:5803" # ZeroMQ event port + - "5903:5903" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5803 + - TANGO_ZMQ_HEARTBEAT_PORT=5903 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-observation.yml b/docker-compose/device-observation.yml index 3379e41e1887d670b734a1f75f8b942ca51d17df..48bb753937d758cf0db40001a7eaf5d61ce542e1 100644 --- a/docker-compose/device-observation.yml +++ b/docker-compose/device-observation.yml @@ -30,12 +30,16 @@ services: - control ports: - "5718:5718" # unique port for this DS + - "5818:5818" # ZeroMQ event port + - "5918:5918" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5818 + - TANGO_ZMQ_HEARTBEAT_PORT=5918 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-pcon.yml b/docker-compose/device-pcon.yml index 17fad681d96fbe9cb1b84168144b3668ce4f96f7..cb6b2c3cdde164405d8dfb18015fd77cc9a5851b 100644 --- a/docker-compose/device-pcon.yml +++ b/docker-compose/device-pcon.yml @@ -27,12 +27,16 @@ services: - control ports: - "5720:5720" # unique port for this DS + - "5820:5820" # ZeroMQ event port + - "5920:5920" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5820 + - TANGO_ZMQ_HEARTBEAT_PORT=5920 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-psoc.yml b/docker-compose/device-psoc.yml index 6d6578e6aa6aa3b44b34f16d6cd1f3373f45217b..a32d2374b28ae5f7649cea742ab6c606ce06391f 100644 --- a/docker-compose/device-psoc.yml +++ b/docker-compose/device-psoc.yml @@ -27,12 +27,16 @@ services: - control ports: - "5719:5719" # unique port for this DS + - "5819:5819" # ZeroMQ event port + - "5919:5919" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5819 + - TANGO_ZMQ_HEARTBEAT_PORT=5919 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-recv.yml b/docker-compose/device-recv.yml index 3c79a0a149528557a0d3ca3aa087773538942207..134c2ccb41647fb12abd49bb1353df5797d6d35a 100644 --- a/docker-compose/device-recv.yml +++ b/docker-compose/device-recv.yml @@ -32,12 +32,16 @@ services: - control ports: - "5707:5707" # unique port for this DS + - "5807:5807" # ZeroMQ event port + - "5907:5907" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5807 + - TANGO_ZMQ_HEARTBEAT_PORT=5907 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-sdp.yml b/docker-compose/device-sdp.yml index 144630c883d741c166c6f1a1c48f9e8eda5ab096..61f8eb34102cc0645ce66921650a478fd2f72fcb 100644 --- a/docker-compose/device-sdp.yml +++ b/docker-compose/device-sdp.yml @@ -32,12 +32,16 @@ services: - control ports: - "5701:5701" # unique port for this DS + - "5801:5801" # ZeroMQ event port + - "5901:5901" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5801 + - TANGO_ZMQ_HEARTBEAT_PORT=5901 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-sst.yml b/docker-compose/device-sst.yml index e6b0edb75008791f365d4ec8281c35a314935ca3..5db68a00c1430d6e1cc0c04b17e3d9554ce0c20d 100644 --- a/docker-compose/device-sst.yml +++ b/docker-compose/device-sst.yml @@ -35,12 +35,16 @@ services: - "5001:5001/udp" # port to receive SST UDP packets on - "5101:5101/tcp" # port to emit SST TCP packets on - "5702:5702" # unique port for this DS + - "5802:5802" # ZeroMQ event port + - "5902:5902" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5802 + - TANGO_ZMQ_HEARTBEAT_PORT=5902 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-temperature-manager.yml b/docker-compose/device-temperature-manager.yml index d1b20359bf0f827b99450edd93cf4687ac263532..eb87e6e599557b52219bf4d4f99b3b829d97d0b1 100644 --- a/docker-compose/device-temperature-manager.yml +++ b/docker-compose/device-temperature-manager.yml @@ -27,12 +27,16 @@ services: - control ports: - "5716:5716" # unique port for this DS + - "5816:5816" # ZeroMQ event port + - "5916:5916" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5816 + - TANGO_ZMQ_HEARTBEAT_PORT=5916 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-tilebeam.yml b/docker-compose/device-tilebeam.yml index 7919beded3237fecc98cddc64b734747e3187304..c8665d568982663acb6859f23686ade25e3b33fc 100644 --- a/docker-compose/device-tilebeam.yml +++ b/docker-compose/device-tilebeam.yml @@ -27,6 +27,8 @@ services: - control ports: - "5711:5711" # unique port for this DS + - "5811:5811" # ZeroMQ event port + - "5911:5911" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: @@ -34,6 +36,8 @@ services: - iers-data:/opt/IERS environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5811 + - TANGO_ZMQ_HEARTBEAT_PORT=5911 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-unb2.yml b/docker-compose/device-unb2.yml index 2c05d6e66b887b903d17278e3252cd8f9ea70493..cbb31b0ef2585812808b3f17d8b4270c25fa4947 100644 --- a/docker-compose/device-unb2.yml +++ b/docker-compose/device-unb2.yml @@ -32,12 +32,16 @@ services: - control ports: - "5704:5704" # unique port for this DS + - "5804:5804" # ZeroMQ event port + - "5904:5904" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5804 + - TANGO_ZMQ_HEARTBEAT_PORT=5904 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/docker-compose/device-xst.yml b/docker-compose/device-xst.yml index 6f49e17f6389ff510736543d7cb42aed4ea104b9..cdceac715982f7609764c6cb0092070111a6e3a0 100644 --- a/docker-compose/device-xst.yml +++ b/docker-compose/device-xst.yml @@ -35,12 +35,16 @@ services: - "5002:5002/udp" # port to receive XST UDP packets on - "5102:5102/tcp" # port to emit XST TCP packets on - "5706:5706" # unique port for this DS + - "5806:5806" # ZeroMQ event port + - "5906:5906" # ZeroMQ heartbeat port extra_hosts: - "host.docker.internal:host-gateway" volumes: - ..:/opt/lofar/tango:rw environment: - TANGO_HOST=${TANGO_HOST} + - TANGO_ZMQ_EVENT_PORT=5806 + - TANGO_ZMQ_HEARTBEAT_PORT=5906 working_dir: /opt/lofar/tango entrypoint: - bin/start-ds.sh diff --git a/tangostationcontrol/tangostationcontrol/devices/README.md b/tangostationcontrol/tangostationcontrol/devices/README.md index 4d5bc3a070be1340c26db626ef7dde9235df87c4..d7c5a64a95fa9f43c7a2524a71cf1379e6527341 100644 --- a/tangostationcontrol/tangostationcontrol/devices/README.md +++ b/tangostationcontrol/tangostationcontrol/devices/README.md @@ -9,8 +9,7 @@ If a new device is added, it will (likely) need to be referenced in several plac - Adjust `CDB/LOFAR_ConfigDb.json` to create the device in the Tango device database, - Adjust `docker-compose/jupyter/ipython-profiles/stationcontrol-jupyter/startup/01-devices.py` to make an alias for it available in Jupyter, - Adjust `tangostationcontrol/tangostationcontrol/devices/boot.py` to add the device to the station initialisation sequence, -- Add to `docker-compose/` to create a YaML file to start the device in a docker container. NOTE: it needs a unique 57xx port assigned, - current _unused_ port value: 5718 +- Add to `docker-compose/` to create a YaML file to start the device in a docker container. NOTE: it needs a unique 57xx port assigned (current _unused_ port value: 5722), a unique 58xx port for ZMQ events, and a unique 59xx port for ZMQ heartbeat - Adjust `tangostationcontrol/setup.cfg` to add an entry point for the device in the package installation, - Add to `tangostationcontrol/tangostationcontrol/integration_test/default/devices/` to add an integration test, - Adjust `sbin/run_integration_test.sh` to have the device started when running the integration tests,