11[ ![ Frontend CI] ( https://github.com/DiamondLightSource/daq-config-server/actions/workflows/gui_ci.yml/badge.svg )] ( https://github.com/DiamondLightSource/daq-config-server/actions/workflows/gui_ci.yml )
2- [ ![ Backend CI] ( https://github.com/DiamondLightSource/daq-config-server/actions/workflows/backend_ci .yml/badge.svg )] ( https://github.com/DiamondLightSource/daq-config-server/actions/workflows/backend_ci.yml )
2+ [ ![ Backend CI] ( https://github.com/DiamondLightSource/daq-config-server/actions/workflows/ci .yml/badge.svg )] ( https://github.com/DiamondLightSource/daq-config-server/actions/workflows/backend_ci.yml )
33[ ![ Coverage] ( https://codecov.io/gh/DiamondLightSource/daq-config-server/branch/main/graph/badge.svg )] ( https://codecov.io/gh/DiamondLightSource/daq-config-server )
44[ ![ PyPI] ( https://img.shields.io/pypi/v/daq-config-server.svg )] ( https://pypi.org/project/daq-config-server )
55[ ![ License] ( https://img.shields.io/badge/License-Apache%202.0-blue.svg )] ( https://opensource.org/licenses/Apache-2.0 )
66
77# DAQ Config Server
88
9- A service to put and get your config values from .
9+ IMPORTANT: This repository is currently under a rework, none of the features are production-ready yet .
1010
11- Comprises a FastAPI backend with a valkey database to C/R/U/D config values, and a Chakra/React frontend for easier management .
11+ A service to read files on Diamond's filesystem from a BlueAPI container .
1212
13- Currently the scope is JUST storing and retrieving feature flags for Hyperion/I03 UDC but we hope to expand this to replace all DAQ config files.
13+ Comprises a FastAPI backend
14+
15+ Currently the scope is JUST reading files on /dls_sw/
1416
1517| Source | < https://github.com/DiamondLightSource/daq-config-server > |
1618| :------: | :----------------------------------------------------------------: |
1719| Docker | ` docker run ghcr.io/DiamondLightSource/daq-config-server:latest ` |
1820| Releases | < https://github.com/DiamondLightSource/daq-config-server/releases > |
1921
20- A simple app for storing and fetching values. Has a Valkey (Redis) instance as well as options for file-backed legacy
21- values (e.g. ` beamlineParameters ` ...)
22-
2322Currently the server application always needs to be run with the ` --dev ` flag, as it cannot yet look at the DLS
2423filesystem to find the real beamline parameter files.
2524
@@ -34,32 +33,22 @@ use_stub_offsets: bool = config_server.best_effort_get_feature_flag("use_stub_of
3433
3534```
3635
37- To work on the GUI you will probably need to run:
38-
39- ``` bash
40- module load node
41- npm install
42- ```
43-
44- in the gui directory to setup the environment.
45-
4636## Testing and deployment
4737
48- There is a convenient script in ` ./deployment/build_and_push_all .sh ` to build all the containers , which takes
38+ There is a convenient script in ` ./deployment/build_and_push .sh ` , which takes
4939a ` --dev ` option to push containers with ` -dev ` appended to their names and a ` --no-push ` option for local
50- development. This ensures that environment variables for dev or prod builds are included in the built container,
51- such as the GUI pointing at the subdomain URL vs. localhost, and the ` root_path ` of the FastAPI app. To push to
40+ development. This ensures that environment variables for dev or prod builds are included in the built container. To push to
5241the registry you must have identified to gcloud by having loaded a kubernetes module and running ` gcloud auth login. `
5342
5443To deploy a live version, you can run the above script with no arguments and then while logged in to
5544argus, in the ` daq-config-server ` namespace, run ` kubectl rollout restart deployment ` . If it is not
56- currently deploy it you can deploy it with ` helm install daq-config ./helmchart ` .
45+ currently deployed it you can deploy it with ` helm install daq-config ./helmchart ` .
5746
58- To test locally, you can build everything with ` ./deployment/build_and_push_all .sh --dev --no-push ` and then
59- run the containers ` daq-config-server-dev ` (with the command ` daq-config-server --dev ` ), ` daq-config-server-db-dev ` ,
47+ To test locally, you can build with ` ./deployment/build_and_push .sh --dev --no-push ` and then
48+ run the container ` daq-config-server-dev ` (with the command ` daq-config-server --dev ` ), ` daq-config-server-db-dev ` ,
6049and ` daq-config-server-gui-dev ` , all with the ` --net host ` option.
6150
62- To test on pollux , log in to pollux in your namespace and run:
51+ To test on argus , log in to argus in your namespace and run:
6352
6453``` bash
6554helm install daq-config ./helmchart/ --values dev-values.yaml
@@ -68,7 +57,7 @@ helm install daq-config ./helmchart/ --values dev-values.yaml
6857followed by:
6958
7059``` bash
71- kubectl port-forward service/daq-config-server-svc 8080 8555
60+ kubectl port-forward service/daq-config-server-svc 8555
7261```
7362
74- after which you should be able to access the frontend on ` http://localhost:8080 ` and the API on ` http://localhost:8555 `
63+ after which you should be able to access the API on ` http://localhost:8555/docs `
0 commit comments