Skip to content

Read beamline parameters through config server#1511

Open
jacob720 wants to merge 11 commits intomainfrom
1504_read_beamlineParameters_through_config_server
Open

Read beamline parameters through config server#1511
jacob720 wants to merge 11 commits intomainfrom
1504_read_beamlineParameters_through_config_server

Conversation

@jacob720
Copy link
Contributor

@jacob720 jacob720 commented Dec 10, 2025

Fixes #1504

Link to dodal PR (if required): DiamondLightSource/dodal#1773
(remember to update pyproject.toml with the dodal commit tag if you need it for tests to pass!)

Instructions to reviewer on how to test:

  1. Check config is read through config server

Checks for reviewer

  • Would the PR title make sense to a user on a set of release notes

@jacob720 jacob720 requested a review from a team as a code owner December 10, 2025 11:27
@jacob720 jacob720 marked this pull request as draft December 10, 2025 11:27
@jacob720 jacob720 added the dev experience Changes relating to developer experience label Dec 10, 2025
@codecov
Copy link

codecov bot commented Jan 12, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.83%. Comparing base (7a4ce56) to head (230bcd8).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1511   +/-   ##
=======================================
  Coverage   92.83%   92.83%           
=======================================
  Files         152      152           
  Lines        8614     8615    +1     
=======================================
+ Hits         7997     7998    +1     
  Misses        617      617           
Components Coverage Δ
i24 SSX 78.60% <ø> (ø)
hyperion 98.22% <100.00%> (+<0.01%) ⬆️
other 98.32% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jacob720 jacob720 marked this pull request as ready for review January 12, 2026 16:45
Copy link
Contributor

@DominicOram DominicOram left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, looks good.

Could: It feels like there's some general tidying up we can do here, but maybe that would be easier after the other moves to using the config server. For example:

  • Why do we have a separate MX config server client that we use sometimes?
  • The way we patch "dodal.common.beamlines.beamline_parameters.BEAMLINE_PARAMETER_PATHS", in mx-bluesky is quite odd in that we use i03 for everything and we just patch it all the time rather than patching what we need when we need it

yield


def _fake_config_server_get_file_contents(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should: Can we not combine this and _fake_config_server_read?

@jacob720 jacob720 force-pushed the 1504_read_beamlineParameters_through_config_server branch from 244a5bc to 26aa661 Compare January 23, 2026 17:34
@jacob720
Copy link
Contributor Author

jacob720 commented Feb 3, 2026

We have an MX config client which directly reads the the filesystem if the server is down. I think this is no longer viable since the server now does conversions, so we'd have to build that same functionality into the MX config client. Discussed with @olliesilvester a few times and we came to the conclusion we'd delete this, particularly as i03 are happy to use the config server for Hyperion now it's deployed on their beamline cluster.

I think you're right though, it would be easier to do this and other tidying once all the config server PRs are in.

@jacob720 jacob720 requested a review from DominicOram February 5, 2026 13:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dev experience Changes relating to developer experience

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate beamline paramaters to use the daq-config-server

2 participants