Introduce Probes::Registry
What does this MR do and why?
This is a refactor such that all kinds of probes, as per specific needs, can be obtained from within this registry class, Probes::Registry.
This code refactors how the system organizes and manages health checks for cloud connectivity features. Previously, the logic for determining which health checks to run was scattered across multiple files and mixed into the main service class.
The changes create a new centralized "Registry" class that acts like a catalog, organizing all the different types of health checks into logical groups (development checks, Amazon Q checks, self-hosted checks, etc.). This makes the code much cleaner and easier to maintain.
The main service class is simplified - instead of having all the health check logic built into it, it now just asks the Registry for the appropriate set of checks based on the current configuration. An old utility module that was only used for organizing self-hosted checks was removed since the new Registry handles this better.
The changes also include comprehensive tests to ensure the Registry correctly returns the right health checks for different scenarios. This refactoring makes the codebase more organized without changing how the health checking actually works from a user perspective.
References
Screenshots or screen recordings
| Before | After |
|---|---|
How to set up and validate locally
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Related to #559206 (closed)