Instrument Github Repository to be used with BITS structure at the APS
Creating a repository from a template
On GitHub, navigate to the main page of the repository.
Above the file list, click Use this template.
Select Create a new repository.
Alternatively, you can open the template in a codespace and publish your work to a new repository later. For more information, see Creating a codespace from a template.
Use the Owner dropdown menu to select the account you want to own the repository.
Click Create repository from template.
export ENV_NAME=BITS_env
conda create -y -n $ENV_NAME python=3.11
conda activate $ENV_NAME
pip install apsbits
export YOUR_INSTRUMENT_NAME=new_instrument
create-bits $YOUR_INSTRUMENT_NAME
pip install -e .
To start the bluesky instrument session in a ipython execute the next command in a terminal:
ipython
Start JupyterLab, a Jupyter notebook server, or a notebook, VSCode.
from YOUR_INSTRUMENT_NAME.startup import *
To run some simulated plans that ensure the installation worked as expected please run the next commands inside an ipython session or a jupyter notebook after starting the data acquisition:
RE(sim_print_plan())
RE(sim_count_plan())
RE(sim_rel_scan_plan())
The files that can be configured to adhere to your preferences are:
configs/iconfig.yml
- configuration for data collectionconfigs/logging.yml
- configuration for session logging to console and/or filesqserver/qs-config.yml
- contains all configuration of the QS host process. See the documentation for more details of the configuration.
The queueserver has a host process that manages a RunEngine. Client sessions will interact with that host process.
Install screen
sudo apt install screen
Use the queueserver host management script to start the QS host process. The
restart
option stops the server (if it is running) and then starts it. This is
the usual way to (re)start the QS host process. Using restart
, the process
runs in the background.
./src/YOUR_INSTRUMENT_NAME_qserver/qs_host.sh restart
To run the gui client for the queueserver you can use the next command inside the terminal:
queue-monitor &
A shell script (./src/YOUR_INSTRUMENT_NAME_qserver/qs_host.sh
) starts the QS host process. Below
are all the command options, and what they do.
(BITS_env) $ ./src/YOUR_INSTRUMENT_NAME_qserver/qs_host.sh help
Usage: qs_host.sh {start|stop|restart|status|checkup|console|run} [NAME]
COMMANDS
console attach to process console if process is running in screen
checkup check that process is running, restart if not
restart restart process
run run process in console (not screen)
start start process
status report if process is running
stop stop process
OPTIONAL TERMS
NAME name of process (default: bluesky_queueserver-)
Alternatively, run the QS host's startup command directly within the ./qserver/
subdirectory.
cd ./qserver
start-re-manager --config=./qs-config.yml