diff --git a/AT_CSC/ATDome/README.md b/AT_CSC/ATDome/README.md new file mode 100644 index 0000000..973a631 --- /dev/null +++ b/AT_CSC/ATDome/README.md @@ -0,0 +1 @@ +This compose will start the ATDome CSC that talks to the real hardware. diff --git a/AT_CSC/ATDome/docker-compose.yaml b/AT_CSC/ATDome/docker-compose.yaml index 0f857fe..50dd043 100644 --- a/AT_CSC/ATDome/docker-compose.yaml +++ b/AT_CSC/ATDome/docker-compose.yaml @@ -3,8 +3,8 @@ version: '3.6' services: atdome-csc: - image: lsstts/at_dome_sim:3.9-0.5 - container_name: atdome-sim + image: lsstts/at_dome:3.9-0.5 + container_name: atdome environment: - OSPL_URI=${OSPL_URI} - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} @@ -14,3 +14,15 @@ services: entrypoint: ["/home/saluser/.setup.sh"] + atdometrajectory-sim: + image: lsstts/at_dome_trajectory_sim:3.9-0.6a + container_name: atdometrajectory + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + + entrypoint: ["/home/saluser/.setup.sh"] + diff --git a/AT_CSC/Hexapod/docker-compose.yaml b/AT_CSC/ATHexapod/docker-compose.yaml similarity index 83% rename from AT_CSC/Hexapod/docker-compose.yaml rename to AT_CSC/ATHexapod/docker-compose.yaml index ea8faff..19d1ccb 100644 --- a/AT_CSC/Hexapod/docker-compose.yaml +++ b/AT_CSC/ATHexapod/docker-compose.yaml @@ -2,9 +2,10 @@ version: "3" services: HexapodCSC: - image: lsstts/ts_athexapod + image: lsstts/ts_athexapod:3.9-dm-19762 environment: - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + - OSPL_URI=${OSPL_URI} network_mode: "host" volumes: - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} @@ -12,10 +13,10 @@ services: - ./tcpConfiguration.yaml:/home/saluser/repos/ts_salobjATHexapod/bin/settingFiles/Test/1/tcpConfiguration.yaml entrypoint: ["/home/saluser/startCSC.sh"] HexapodGUI: - image: lsstts/ts_athexapod + image: lsstts/ts_athexapod:3.9-dm-19762 environment: - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} - - DISPLAY=139.229.136.136:0 + - DISPLAY=192.168.1.51:0 network_mode: "host" volumes: - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} diff --git a/AT_CSC/ATHexapod/startCSC.sh b/AT_CSC/ATHexapod/startCSC.sh new file mode 100755 index 0000000..94e8c2b --- /dev/null +++ b/AT_CSC/ATHexapod/startCSC.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +echo "#" +echo "# Loading LSST Stack" +. /opt/lsst/software/stack/loadLSST.bash +setup lsst_distrib +echo "#" +echo "# Loading sal environment" +. repos/ts_sal/setup.env +echo "#" +echo "# Setting up sal, salobj and scriptqueue" + +setup ts_xml -t current +setup ts_sal -t current +setup ts_salobj -t current +setup ts_scriptqueue -t current +setup ts_salobjATHexapod -t current +cd /home/saluser/repos/ts_salobjATHexapod/bin/ +while : + do + echo "# Starting CSC" + python ./runATHexapodCSC.py 0 + echo "# CSC finished..." +done diff --git a/AT_CSC/Hexapod/startGUI.sh b/AT_CSC/ATHexapod/startGUI.sh similarity index 100% rename from AT_CSC/Hexapod/startGUI.sh rename to AT_CSC/ATHexapod/startGUI.sh diff --git a/AT_CSC/Hexapod/tcpConfiguration.yaml b/AT_CSC/ATHexapod/tcpConfiguration.yaml similarity index 81% rename from AT_CSC/Hexapod/tcpConfiguration.yaml rename to AT_CSC/ATHexapod/tcpConfiguration.yaml index 5169e73..b5a80b3 100644 --- a/AT_CSC/Hexapod/tcpConfiguration.yaml +++ b/AT_CSC/ATHexapod/tcpConfiguration.yaml @@ -1,4 +1,4 @@ -host: "192.168.1.31" +host: "192.168.1.48" port: 50000 connectionTimeout: 2 readTimeout: 2 diff --git a/AT_CSC/ATPTG/docker-compose.yaml b/AT_CSC/ATPTG/docker-compose.yaml new file mode 100644 index 0000000..9a8d166 --- /dev/null +++ b/AT_CSC/ATPTG/docker-compose.yaml @@ -0,0 +1,11 @@ +version: '3.6' +services: + atptg: + image: tiagorib/ptkernel:DM-19890 + container_name: atptg + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} diff --git a/AT_CSC/ATTCS/docker-compose.yaml b/AT_CSC/ATTCS/docker-compose.yaml new file mode 100644 index 0000000..7c081b1 --- /dev/null +++ b/AT_CSC/ATTCS/docker-compose.yaml @@ -0,0 +1,40 @@ +version: '3.6' + +services: + + ataos: + image: lsstts/ataos:DM-19890 + container_name: ataos + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + + entrypoint: ["/home/saluser/.setup.sh"] + + atdome-csc: + image: lsstts/at_dome:3.9-0.5 + container_name: atdome + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + + entrypoint: ["/home/saluser/.setup.sh"] + + atdometrajectory-sim: + image: lsstts/at_dome_trajectory_sim:3.9-0.6a + container_name: atdometrajectory + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + + entrypoint: ["/home/saluser/.setup.sh"] + diff --git a/AT_CSC/Electrometer/docker-compose.yaml b/AT_CSC/Electrometer/docker-compose.yaml new file mode 100644 index 0000000..e45491e --- /dev/null +++ b/AT_CSC/Electrometer/docker-compose.yaml @@ -0,0 +1,28 @@ +version: "3" + +services: + ElectrometerCSC: + image: lsstts/electrometer + environment: + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + - ./startCSC.sh:/home/saluser/startCSC.sh + - ./mainSetup.yaml:/home/saluser/repos/ts_electrometer2/bin/settingFiles/mainSetup.yaml + devices: + - /dev/ttyUSB0:/dev/ttyUSB0 + - /dev/electrometer:/dev/electrometer + entrypoint: ["/home/saluser/startCSC.sh"] + ElectrometerGUI: + image: lsstts/electrometer + environment: + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + - DISPLAY=${DISPLAY} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + - ./startGUI.sh:/home/saluser/startGUI.sh + - /tmp/.X11-unix:/tmp/.X11-unix + - ./mainSetup.yaml:/home/saluser/repos/ts_electrometer2/bin/settingFiles/mainSetup.yaml + entrypoint: ["/home/saluser/startGUI.sh"] diff --git a/AT_CSC/Electrometer/mainSetup.yaml b/AT_CSC/Electrometer/mainSetup.yaml new file mode 100644 index 0000000..874c05b --- /dev/null +++ b/AT_CSC/Electrometer/mainSetup.yaml @@ -0,0 +1,16 @@ +recommendedSettings: + - "Default1" + - "Default2" +aliases: + Default1: + settingSet: "Test" + settingVersion: 1 + Default2: + settingSet: "Test" + settingVersion: 2 +salId: 1 +filePath: "/home/saluser/ts_electrometer2/electrometerFitsFiles" +simulated: 0 +httpHost: "10.0.100.133" +port: 8000 + diff --git a/AT_CSC/Electrometer/startCSC.sh b/AT_CSC/Electrometer/startCSC.sh new file mode 100755 index 0000000..8eb38f9 --- /dev/null +++ b/AT_CSC/Electrometer/startCSC.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +echo "#" +echo "# Loading LSST Stack" +. /opt/lsst/software/stack/loadLSST.bash +setup lsst_distrib +echo "#" +echo "# Loading sal environment" +. repos/ts_sal/setup.env +echo "#" +echo "# Setting up sal, salobj and scriptqueue" + +setup ts_xml -t current +setup ts_sal -t current +setup ts_salobj -t current +setup ts_scriptqueue -t current +setup ts_electrometer -t current + +cd /home/saluser/repos/ts_electrometer2/bin/ +echo "# Starting CSC" +python ./RunElectrometer.py 1 diff --git a/AT_CSC/Electrometer/startGUI.sh b/AT_CSC/Electrometer/startGUI.sh new file mode 100755 index 0000000..082ba12 --- /dev/null +++ b/AT_CSC/Electrometer/startGUI.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +echo "#" +echo "# Loading LSST Stack" +. /opt/lsst/software/stack/loadLSST.bash +setup lsst_distrib +echo "#" +echo "# Loading sal environment" +. repos/ts_sal/setup.env +echo "#" +echo "# Setting up sal, salobj and scriptqueue" + +setup ts_xml -t current +setup ts_sal -t current +setup ts_salobj -t current +setup ts_scriptqueue -t current +setup ts_electrometer -t current +cd /home/saluser/repos/ts_electrometer2/python/lsst/ts/electrometer/electrometerEUI +echo "# Starting GUI" +python ./EUI.py diff --git a/AT_CSC/README.md b/AT_CSC/README.md new file mode 100644 index 0000000..6faa3ed --- /dev/null +++ b/AT_CSC/README.md @@ -0,0 +1 @@ +Compose files for CSCs that talk to real hardware. No simmmulators! diff --git a/AT_EFD/docker-compose.yaml b/AT_EFD/docker-compose.yaml index a8b1d08..850fd0e 100644 --- a/AT_EFD/docker-compose.yaml +++ b/AT_EFD/docker-compose.yaml @@ -5,6 +5,7 @@ services: image: lsstts/efd_writers volumes: - ./efd_population.sh:/home/saluser/efd_population.sh + network_mode: "host" entrypoint: ["/home/saluser/efd_population.sh"] EFD_MariaDB: @@ -17,6 +18,7 @@ services: - MYSQL_USER=efduser - MYSQL_PASSWORD=lssttest restart: on-failure + network_mode: "host" #volumes: #- ${PWD}/mariadb:/var/lib/mysql EFD_ATDome: diff --git a/AT_Simulators/docker-compose.yaml b/AT_Simulators/docker-compose.yaml index df1c778..677e019 100644 --- a/AT_Simulators/docker-compose.yaml +++ b/AT_Simulators/docker-compose.yaml @@ -50,7 +50,7 @@ services: entrypoint: ["/home/saluser/.setup.sh"] ataos-sim: - image: lsstts/ataos:v0.2.1 + image: lsstts/ataos:DM-19890 container_name: ataos-sim environment: - OSPL_URI=${OSPL_URI} @@ -62,7 +62,7 @@ services: entrypoint: ["/home/saluser/.setup.sh"] atptg-sim: - image: tiagorib/ptkernel:new_xml + image: tiagorib/ptkernel:develop container_name: atptg-sim environment: - OSPL_URI=${OSPL_URI} @@ -70,7 +70,24 @@ services: network_mode: "host" volumes: - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + + hexapod-sim: + image: couger01/hexapod_simulator + container_name: hexapod-sim + network_mode: "host" + athexapod-sim: + image: lsstts/ts_athexapod:3.9-dm-19762 + container_name: athexapod-sim + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + - ./startCSC.sh:/home/saluser/startCSC.sh + - ./tcpConfiguration.yaml:/home/saluser/repos/ts_salobjATHexapod/bin/settingFiles/Test/1/tcpConfiguration.yaml + entrypoint: ["/home/saluser/startCSC.sh"] simulation-tests: image: lsstts/simulation_tests:latest diff --git a/AT_CSC/Hexapod/startCSC.sh b/AT_Simulators/startCSC.sh similarity index 100% rename from AT_CSC/Hexapod/startCSC.sh rename to AT_Simulators/startCSC.sh diff --git a/AT_Simulators/tcpConfiguration.yaml b/AT_Simulators/tcpConfiguration.yaml new file mode 100644 index 0000000..916e573 --- /dev/null +++ b/AT_Simulators/tcpConfiguration.yaml @@ -0,0 +1,7 @@ +host: "192.168.1.21" +port: 50000 +connectionTimeout: 2 +readTimeout: 2 +sendTimeout: 2 +endStr: "endl" +maxLength: 1024 diff --git a/DIMM/config.yaml b/DIMM/config.yaml new file mode 100644 index 0000000..52ef7b2 --- /dev/null +++ b/DIMM/config.yaml @@ -0,0 +1,46 @@ + +settingVersions: + recommendedSettingsVersion: 'default' + recommendedSettingsLabels: ['default', 'simulation', 'soar', 'lsst'] + +setting: + default: + type: 'sim' + configuration: + avg_seeing: 0.5 # average seeing (arcsec) + std_seeing: 0.1 # standard deviation (arcsec) + chance_failure: 0.0 # chance that the dimm will fail (in 1/100) + time_in_target: # in hours + min: 2 + max: 6 + exposure_time: # in seconds + min: 30 + max: 300 + std: 5 # random deviation from actual value + simulation: + type: 'sim' + configuration: + avg_seeing: 0.5 # average seeing (arcsec) + std_seeing: 0.1 # standard deviation (arcsec) + chance_failure: 0.0 # chance that the dimm will fail (in 1/100) + time_in_target: # in hours + min: 2 + max: 6 + exposure_time: # in seconds + min: 1 + max: 3 + std: 0.1 # random deviation from actual value + soar: + type: 'soar' + configuration: + uri: 'mysql://becs:becs_sql@139.229.13.222/pachon' + check_interval: 180. + lsst: + type: 'astelco' + configuration: + host: 192.168.1.250 + port: 16500 + auto_auth: True + user: admin + password: admin + diff --git a/DIMM/docker-compose.yaml b/DIMM/docker-compose.yaml new file mode 100644 index 0000000..a089e65 --- /dev/null +++ b/DIMM/docker-compose.yaml @@ -0,0 +1,13 @@ +version: "3" + +services: + dimm: + image: lsstts/dimm:DM-19900 + environment: + - OSPL_URI=${OSPL_URI} + - LSST_DDS_DOMAIN=${LSST_DDS_DOMAIN} + network_mode: "host" + container_name: dimm + volumes: + - ${OSPL_CONFIG_PATH}:${OSPL_MOUNT_POINT} + - ./config.yaml:/home/saluser/repos/ts_dimm/python/lsst/ts/dimm/config/config.yaml diff --git a/README.md b/README.md index 5bd27bf..510fcd7 100644 --- a/README.md +++ b/README.md @@ -8,24 +8,31 @@ File setup.env needs to be sourced from the root directory of this repo. Current directory tree: - . - ├── AT_CSC - │ ├── ATDome - │ │ └── docker-compose.yaml - │ └── Hexapod - │ ├── docker-compose.yaml - │ ├── startCSC.sh - │ ├── startGUI.sh - │ └── tcpConfiguration.yaml - ├── AT_EFD - │ ├── docker-compose.yaml - │ ├── efd_population.sh - │ └── efd_writers.sh - ├── AT_Simulators - │ └── docker-compose.yaml - ├── README.md - ├── ospl.xml - └── setup.env + . + ├── AT_CSC + │   ├── ATDome + │   │   └── docker-compose.yaml + │   ├── ATHexapod + │   │   ├── docker-compose.yaml + │   │   ├── startCSC.sh + │   │   ├── startGUI.sh + │   │   └── tcpConfiguration.yaml + │   └── Electrometer + │   ├── docker-compose.yaml + │   ├── mainSetup.yaml + │   ├── ospl.xml + │   ├── startCSC.sh + │   └── startGUI.sh + ├── AT_EFD + │   ├── docker-compose.yaml + │   ├── efd_population.sh + │   └── efd_writers.sh + ├── AT_Simulators + │   ├── docker-compose.yaml + │   └── ospl.xml + ├── README.md + └── setup.env + This aims to gather all the containers that may run in different nodes. @@ -57,9 +64,13 @@ AT_CSC aims to gather all the CSCs related with the Auxiliary Telescope, within ## ATDome It is using the following image: lsstts/at_dome_sim:3.9-0.5, using the default entrypoint. -## Hexapod +## ATHexapod It is using image: lsstts/ts_athexapod, it has to definitions, one for the CSC and the other to lunch a GUI. The display variable defined in the GUI container must be pointed to the host that will receive the image, if that will be your computer, then write your IP in that variable. Entrypoints has been modified, the CSC is starting with a custom scripts called startCSC.sh whereas the GUI container is starting with a custom script called startGUI.sh. Those scripts has all the required configuration plus starting the software we need from the container. +## Electrometer +It is using image: lsstts/electrometer, it has two definitions, one for the CSC and the other to lunch a GUI. The display variable defined in the GUI container must be pointed to the host that will receive the image, if that will be your computer, then write your IP in that variable. Entrypoints has been modified, the CSC is starting with a custom scripts called startCSC.sh whereas the GUI container is starting with a custom script called startGUI.sh. Those scripts has all the required configuration plus starting the software we need from the container. +The port for the electrometer had to be added following the instructions in: https://confluence.lsstcorp.org/display/LTS/Setting+up+a+serial+port + # AT_EFD Here you will find several scripts that allows you to start containerized version of an EFD, currently is only configured to have MySQL onine. Below a briew description of the services created and how are meant to be used. @@ -92,4 +103,4 @@ This compose has several definitions for CSC/Simulators that can be used to test * atptg-sim: * image: tiagorib/ptkernel:new_xml * simulation-tests: - * image: lsstts/simulation_tests:latest \ No newline at end of file + * image: lsstts/simulation_tests:latest diff --git a/ospl.xml b/ospl.xml deleted file mode 100644 index e70d124..0000000 --- a/ospl.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - ospl_sp_ddsi - 0 - true - Stand-alone 'single-process' deployment and standard DDSI networking. - - ddsi2 - - - durability - - - cmsoap - - - - - 192.168.1.31 - true - true - false - - - - lax - - - - - - - - false - - 2.5 - 0.1 - - - - ddsi2 - - - - - * - - - - - - - Auto - - - diff --git a/setup.env b/setup.env index 37c5833..8e9384d 100644 --- a/setup.env +++ b/setup.env @@ -1,5 +1,5 @@ -export OSPL_CONFIG_PATH=$PWD/ospl.xml +export OSPL_CONFIG_PATH=/home/auxtel/ospl.xml export OSPL_MOUNT_POINT=/home/saluser/ospl.xml export OSPL_URI=file://$OSPL_MOUNT_POINT export LSST_DDS_DOMAIN=atsimulatorcsc