From 179713a07a61a4d53367751e14b9bf945868108e Mon Sep 17 00:00:00 2001 From: Thomas Kluyver <thomas@kluyver.me.uk> Date: Wed, 29 Jun 2022 13:20:23 +0100 Subject: [PATCH] Add script for testing repeat mechanism in webservice --- webservice/request_repeat.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 webservice/request_repeat.py diff --git a/webservice/request_repeat.py b/webservice/request_repeat.py new file mode 100644 index 000000000..a8d93cc92 --- /dev/null +++ b/webservice/request_repeat.py @@ -0,0 +1,32 @@ +"""Send a request to repeat previous corrections. + +The repeat mechanism is meant for if corrected data has been deleted, +but this script can also be used for testing. +""" + +import argparse +from glob import glob + +import zmq + +parser = argparse.ArgumentParser(description='Request repeat correction.') +parser.add_argument('proposal', type=int, help='The proposal number') +parser.add_argument('run', type=int, help='The run number') +parser.add_argument('--endpoint', default='tcp://max-exfl016:5555', + help="The ZMQ endpoint to connect to (max-exfl017 for testing)") + +args = parser.parse_args() + +prop_dir = glob('/gpfs/exfel/exp/*/*/p{:06d}'.format(args.proposal))[0] +instrument, cycle = prop_dir.split('/')[4:6] + +con = zmq.Context() +socket = con.socket(zmq.REQ) +con = socket.connect(args.endpoint) + +parm_list = ["repeat", "0", instrument, cycle, + f'{args.proposal:06d}', str(args.run)] + +socket.send(repr(parm_list).encode()) +resp = socket.recv() +print(resp.decode()) -- GitLab