A service to read files on dls_sw from a blueapi container
Project description
DAQ Config Server
IMPORTANT: This repository is currently under a rework, none of the features are production-ready yet.
A service to read files on Diamond's filesystem from a BlueAPI container.
Comprises a FastAPI backend
Currently the scope is JUST reading files on /dls_sw/
| Source | https://github.com/DiamondLightSource/daq-config-server |
|---|---|
| Docker | docker run ghcr.io/DiamondLightSource/daq-config-server:latest |
| Releases | https://github.com/DiamondLightSource/daq-config-server/releases |
Currently the server application always needs to be run with the --dev flag, as it cannot yet look at the DLS
filesystem to find the real beamline parameter files.
To use the config values in an experimental application (e.g. Hyperion) you can do:
from daq_config_server.client import ConfigServer
config_server = ConfigServer("<service ip address>", <port>)
use_stub_offsets: bool = config_server.best_effort_get_feature_flag("use_stub_offsets")
Testing and deployment
There is a convenient script in ./deployment/build_and_push.sh, which takes
a --dev option to push containers with -dev appended to their names and a --no-push option for local
development. This ensures that environment variables for dev or prod builds are included in the built container. To push to
the registry you must have identified to gcloud by having loaded a kubernetes module and running gcloud auth login.
To deploy a live version, you can run the above script with no arguments and then while logged in to
argus, in the daq-config-server namespace, run kubectl rollout restart deployment. If it is not
currently deployed it you can deploy it with helm install daq-config ./helmchart.
To test locally, you can build with ./deployment/build_and_push.sh --dev --no-push and then
run the container daq-config-server-dev (with the command daq-config-server --dev), daq-config-server-db-dev,
and daq-config-server-gui-dev, all with the --net host option.
To test on argus, log in to argus in your namespace and run:
helm install daq-config ./helmchart/ --values dev-values.yaml
followed by:
kubectl port-forward service/daq-config-server-svc 8555
after which you should be able to access the API on http://localhost:8555/docs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file daq_config_server-0.2.0.tar.gz.
File metadata
- Download URL: daq_config_server-0.2.0.tar.gz
- Upload date:
- Size: 107.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
987800f230134297fa028abd63c9b27a89ef79535b7d0d84587fb43ccdf36a36
|
|
| MD5 |
ced23b735647ccb4489c9020c63059bf
|
|
| BLAKE2b-256 |
48bfbb68c0f58e6348ea29b1518fb00f8d7253ebb0bed4692c4773aa66423ea1
|
File details
Details for the file daq_config_server-0.2.0-py3-none-any.whl.
File metadata
- Download URL: daq_config_server-0.2.0-py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5cac86a72be803e460f7a535b9bf6558a6afebeae6103752d836e51d5624ce6
|
|
| MD5 |
19cb5983edbea20c60a5a67032d71b06
|
|
| BLAKE2b-256 |
aa61c319140aea5c2283c7eba27aabec69f22dec308ffc39f43802e9a446e817
|