WIP: Bayeswave task (Reopening of !377)
Reopened "BayesWave online follow-up (!377 (closed) )" from a topic branch as suggested by Leo.
Here's the copy of the original merge request: I implemented the BayesWave online follow-up in a task following the structure of the lalinference task. I would be happy to work with someone from the EMFollow team (Leo?) to incorporate this into the low-latency workflow (probably mostly orchestrator.py?). The plan would be to follow up any cWB and oLIB triggers. I'll try to be as available as possible during the upcoming days to ER14. I can also work on this during the weekend, if that helps.
I was only able to test it up to the point of calling "condor_submit_dag --no-submit", because actually submitting it gives me a Redis error. The things after that (mostly sending results to graceDB) are based on a well-tested script we used to use before the gwcelery era, so hopefully it will work fine.
Currently gracedb-playground only has cWB triggers from the O2 replay, but unfortunately, bayeswave_pipeline, which sets up BayesWave doesn't work on those in the same configuration as we will run online. This is because there are no frames available at the replay trigger times, so the only way to get frames is to tell bayeswave to look at the corresponding time during O2. So instead of providing --graceid for bayeswave_pipe I provided --trigger-time, but this will need to be changed back for actual online running, because bayeswave_pipe uses the graceid to set proper parameters for the BayesWave run.
Accordingly, frame file and channel names are currently set so to work for testing, but will need to be changed.
I also removed all celery delay() functions, because they made testing very slow. These will need to be restored.
I think that's all, but it definitely needs some more testing.