DAQ Config Server
A service to read files on Diamond's filesystem from a BlueAPI container. Currently this service is only able to read files on /dls_sw/. Writing to configuration files will come in a future release.
| 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 |
| Documentation | https://DiamondLightSource.github.io/daq-config-server |
Here is a minimal example to read a file from the centrally hosted service after installing this package
from daq_config_server.client import ConfigClient
config_client = ConfigClient("https://daq-config.diamond.ac.uk")
file_contents = config_client.get_file_contents({ABSOLUTE_PATH_TO_CONFIG_FILE}, desired_return_type=str)
The output will come out as a raw string - you should format it as required in your own code. You may also request that the file contents is returned as a dict or in bytes - this will raise an http exception if the file cannot be converted to that type. To be able to read a file, you must first add it to the whitelist.
Testing
To run unit tests, type tox -e tests from within the dev container
There is a convenient script in ./deployment/build_and_push.sh which can be used to easily build and run the container locally for testing, and optionally push the container to a repository. In general we should rely on the CI to be pushing new containers - however it is sometimes useful to push a development image to a private repo for development or debugging.
To run local system tests, start a local container by running ./deployment/build_and_push.sh -r -b. Then, in the dev container, forward port 8555. There are instructions on port forwarding within vscode here. Next, in a terminal in the devcontainer, run tox -e system_tests_local from the daq-config-server directory.
To run a test deployment 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
See https://DiamondLightSource.github.io/daq-config-server for more detailed documentation.
Metadata
Release files for daq-config-server 1.5.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| daq_config_server-1.5.6.tar.gz | 239.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| daq_config_server-1.5.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 277.6 kB
Release files / daq_config_server-1.5.6.tar.gz
| Download URL | daq_config_server-1.5.6.tar.gz |
|---|---|
| Size | 239.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
983881e54703f37797a13116c04e24fe871263fb22514e753891b43f00855833
|
|
BLAKE2b-256 checksum How to use checksums |
b15196c220ac843a30f89fb9af8c60dd3eaeef88c89dcfad7f353be1bf0b52ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / daq_config_server-1.5.6-py3-none-any.whl
| Download URL | daq_config_server-1.5.6-py3-none-any.whl |
|---|---|
| Size | 37.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1353a6c87d6750d0f0c67be48c38ff4608641884559ef4e7cac70361b7637597
|
|
BLAKE2b-256 checksum How to use checksums |
78380bfce9c7bc7928d7a69789163743c472cddb8172f8e2e41facc6fec17660
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|