- Free software: 3-clause BSD license
- Vagrant
- VirtualBox
Clone this repository and change to the top-level directory. Build the VM:
$ vagrant up ...
Open a terminal and SSH into the VM. Start the qserver, uvicorn, and tiled services:
$ vagrant ssh ... vagrant@vagrant:~$ systemctl --user start bluesky_qserver_re_manager.service vagrant@vagrant:~$ systemctl --user status bluesky_qserver_re_manager.service ● bluesky_qserver_re_manager.service - Bluesky Queueserver RunEngine Manager Loaded: loaded (/home/vagrant/.config/systemd/user/bluesky_qserver_re_manager.service; disabled; ve> Active: active (running) since Thu 2021-07-22 00:43:37 UTC; 8s ago Main PID: 17222 (bash) CGroup: /user.slice/user-1000.slice/[email protected]/bluesky_qserver_re_manager.service ├─17222 /usr/bin/bash /home/vagrant/bluesky_qserver_re_manager.sh ├─17232 /home/vagrant/miniconda3/envs/bluesky_queueserver/bin/python /home/vagrant/minicond> └─17238 /home/vagrant/miniconda3/envs/bluesky_queueserver/bin/python /home/vagrant/minicond> Jul 22 00:43:37 vagrant systemd[17163]: Started Bluesky Queueserver RunEngine Manager. Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting ZMQ server at 'tc Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:ZMQ control channels: encr Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting RE Manager proces Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Loading the lists of allow Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting ZeroMQ server .. Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:ZeroMQ server is waiting o vagrant@vagrant:~$ systemctl --user start bluesky_qserver_uvicorn.service vagrant@vagrant:~$ systemctl --user status bluesky_qserver_uvicorn.service ● bluesky_qserver_uvicorn.service - Bluesky Queueserver Uvicorn Loaded: loaded (/home/vagrant/.config/systemd/user/bluesky_qserver_uvicorn.service; disabled; vendo> Active: active (running) since Thu 2021-07-22 00:43:57 UTC; 7s ago Main PID: 17252 (bash) CGroup: /user.slice/user-1000.slice/[email protected]/bluesky_qserver_uvicorn.service ├─17252 /usr/bin/bash /home/vagrant/bluesky_qserver_uvicorn.sh └─17260 /home/vagrant/miniconda3/envs/bluesky_queueserver/bin/python /home/vagrant/minicond> Jul 22 00:43:57 vagrant bash[17260]: INFO:uvicorn.error:Started server process [17260] Jul 22 00:43:57 vagrant bash[17260]: INFO: Waiting for application startup. Jul 22 00:43:57 vagrant bash[17260]: INFO:uvicorn.error:Waiting for application startup. Jul 22 00:43:57 vagrant bash[17260]: INFO:bluesky_queueserver.manager.comms:Connected to ZeroMQ server '> Jul 22 00:43:57 vagrant bash[17260]: INFO:bluesky_queueserver.manager.comms:ZMQ encryption: disabled Jul 22 00:43:57 vagrant bash[17260]: INFO:bluesky_queueserver.server.server:Bluesky HTTP Server started > Jul 22 00:43:57 vagrant bash[17260]: INFO: Application startup complete. Jul 22 00:43:57 vagrant bash[17260]: INFO:uvicorn.error:Application startup complete. Jul 22 00:43:57 vagrant bash[17260]: INFO: Uvicorn running on http://0.0.0.0:60610 (Press CTRL+C to > Jul 22 00:43:57 vagrant bash[17260]: INFO:uvicorn.error:Uvicorn running on http://0.0.0.0:60610 (Press C> vagrant@vagrant:~$ systemctl --user start tiled.service vagrant@vagrant:~$ systemctl --user status tiled.service ● tiled.service - Tiled Loaded: loaded (/home/vagrant/.config/systemd/user/tiled.service; disabled; vendor preset: enabled) Active: active (running) since Thu 2021-07-22 00:44:16 UTC; 4s ago Main PID: 17269 (bash) CGroup: /user.slice/user-1000.slice/[email protected]/tiled.service ├─17269 /usr/bin/bash /home/vagrant/tiled.sh └─17277 /home/vagrant/miniconda3/envs/bluesky_queueserver/bin/python /home/vagrant/minicond> Jul 22 00:44:16 vagrant systemd[17163]: Started Tiled. Jul 22 00:44:17 vagrant bash[17277]: Tiled server is running in "public" mode, permitting open, anon> Jul 22 00:44:17 vagrant bash[17277]: Any data that is not specifically controlled with an access pol> Jul 22 00:44:17 vagrant bash[17277]: will be visible to anyone who can connect to this server. Jul 22 00:44:17 vagrant bash[17277]: INFO: Started server process [17277] Jul 22 00:44:17 vagrant bash[17277]: INFO: Waiting for application startup. Jul 22 00:44:17 vagrant bash[17277]: INFO: Application startup complete. Jul 22 00:44:17 vagrant bash[17277]: INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to q>
In the same terminal follow the qserver's output:
vagrant@vagrant:~$ journalctl --user -af -u bluesky_qserver_re_manager -- Logs begin at Thu 2021-07-22 00:38:58 UTC. -- Jul 22 00:43:37 vagrant systemd[17163]: Started Bluesky Queueserver RunEngine Manager. Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting ZMQ server at 'tcp://*:60615' Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:ZMQ control channels: encryption disabled Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting RE Manager process Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Loading the lists of allowed plans and devices ... Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting ZeroMQ server ... Jul 22 00:43:38 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:ZeroMQ server is waiting on tcp://*:60615
Open a new terminal and SSH to the VM. Open an environment, add the plan to the queue, and process the queue:
$ vagrant ssh ... vagrant@vagrant:~$ conda activate bluesky_queueserver (bluesky_queueserver) vagrant@vagrant:~$ qserver environment open Arguments: ['environment', 'open'] 00:57:40 - MESSAGE: {'msg': '', 'success': True} (bluesky_queueserver) vagrant@vagrant:~$ qserver queue add plan '{"name":"the_plan", "args":[-70.0, 92.0]}' Arguments: ['queue', 'add', 'plan', '{"name":"the_plan", "args":[-70.0, 92.0]}'] 00:58:58 - MESSAGE: {'item': {'args': [-70.0, 92.0], 'item_type': 'plan', 'item_uid': 'a484d720-0848-48fa-a6d9-f7460a98b387', 'name': 'the_plan', 'user': 'qserver-cli', 'user_group': 'admin'}, 'msg': '', 'qsize': 1, 'success': True} (bluesky_queueserver) vagrant@vagrant:~$ qserver queue start Arguments: ['queue', 'start'] 00:59:18 - MESSAGE: {'msg': '', 'success': True}
The first terminal will show the results of the plan execution:
vagrant@vagrant:~$ journalctl --user -af -u bluesky_qserver_re_manager ... Jul 22 00:57:40 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Opening the new RE environment ... Jul 22 00:57:40 vagrant bash[17232]: INFO:bluesky_queueserver.manager.start_manager:Starting RE Worker ... Jul 22 00:57:40 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Waiting for RE worker to start ... Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.profile_ops:Loading RE Worker startup code from directory '/vagrant/bmm_nist_ml_startup' ... Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.profile_ops:Startup directory: '/vagrant/bmm_nist_ml_startup' Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.profile_ops:Loading startup file '/vagrant/bmm_nist_ml_startup/00-base.py' ... Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.worker:Startup code loading was completed Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.worker:Loading the lists of allowed plans and devices ... Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.worker:Instantiating and configuring Run Engine ... Jul 22 00:57:41 vagrant bash[17232]: INFO:bluesky_queueserver.manager.worker:RE Environment is ready Jul 22 00:57:42 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Worker started successfully. Jul 22 00:58:58 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Adding new item to the queue ... Jul 22 00:58:58 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Item added: success=True item_type='plan' name='the_plan' item_uid='a484d720-0848-48fa-a6d9-f7460a98b387' qsize=1. Jul 22 00:59:18 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting queue processing ... Jul 22 00:59:18 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Processing the next queue item: 1 plans are left in the queue. Jul 22 00:59:18 vagrant bash[17232]: INFO:bluesky_queueserver.manager.manager:Starting the plan: Jul 22 00:59:18 vagrant bash[17232]: {'args': [-70.0, 92.0], Jul 22 00:59:18 vagrant bash[17232]: 'item_uid': 'a484d720-0848-48fa-a6d9-f7460a98b387', Jul 22 00:59:18 vagrant bash[17232]: 'kwargs': {}, Jul 22 00:59:18 vagrant bash[17232]: 'meta': {}, Jul 22 00:59:18 vagrant bash[17232]: 'name': 'the_plan', Jul 22 00:59:18 vagrant bash[17232]: 'user': 'qserver-cli', Jul 22 00:59:18 vagrant bash[17232]: 'user_group': 'admin'}. Jul 22 00:59:18 vagrant bash[17232]: INFO:bluesky_queueserver.manager.worker:Starting execution of a plan ... Jul 22 00:59:18 vagrant bash[17232]: INFO:bluesky_queueserver.manager.worker:Starting a plan 'the_plan'. Jul 22 00:59:19 vagrant bash[17232]: loaded 421 scans from /vagrant/data/xafs_scans.json Jul 22 00:59:19 vagrant bash[17232]: nearest distance to 0,0 is 61.4121701865929 Jul 22 00:59:19 vagrant bash[17232]: scan_info for nearest point is {'x': -33.300155, 'y': 51.599945, 'element': 'Nb', 'edge': 'K', 'sample': 'NbTiTaV_wisc_V3 (1803016-k2-2 lib2)', 'filename': 'Nb_NbTiTaV_wisc_V3_063_044.001', 'uuid': '85dec0d6-9f69-4866-a298-a1af784fa1ff'} Jul 22 00:59:19 vagrant bash[17232]: INFO:bluesky_queueserver.manager.plan_monitoring:New run was open: 'f0dfce85-5e94-46cf-a783-b4e34d95b89c' Jul 22 00:59:19 vagrant bash[17232]: nearest distance to -70.0,92.0 is 0.7072029530569732 Jul 22 00:59:19 vagrant bash[17232]: scan_info for nearest point is {'x': -69.2998925, 'y': 92.0999275, 'element': 'Ta', 'edge': 'K', 'sample': 'NbTiTaV_wisc_V3 (1803016-k2-2 lib2)', 'filename': 'Ta_NbTiTaV_wisc_V3_018_014.001', 'uuid': 'a8688680-2de5-4c77-85a3-6a9431613643'} Jul 22 00:59:19 vagrant bash[17232]: Run was closed: 'f0dfce85-5e94-46cf-a783-b4e34d95b89c'