feat: Implement FileBasedAgentRegistryService #167
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit introduces a new implementation of AgentRegistryService,
FileBasedAgentRegistryService
, which reads agent routing information from a YAML file.Key changes:
FileBasedAgentRegistryService
inlmos-runtime-core
that parses anagent-registry.yaml
file.lmos-runtime-spring-boot-starter
to switch betweenAPI
andFILE
based registry types (lmos.runtime.agent-registry.type) and to specify the YAML file path (lmos.runtime.agent-registry.file-path).LmosRuntimeAutoConfiguration
to conditionally instantiate the configuredAgentRegistryService
implementation.lmos-runtime-core.model.registry
and made necessary adjustments for YAML deserialization (e.g., nullable fields).kaml
library for YAML parsing inlmos-runtime-core
.FileBasedAgentRegistryService
inlmos-runtime-core
.lmos-runtime-spring-boot-starter
to verify the correct service instantiation and functionality within the Spring context.The choice of
AgentRegistryService
is now configurable via properties:lmos.runtime.agent-registry.type
: Set toFILE
to use the new service, orAPI
(default) for the existing LMOS Operator based service.lmos.runtime.agent-registry.file-path
: Specifies the path to theagent-registry.yaml
file when type isFILE
.The
lmos-runtime-core
andlmos-runtime-spring-boot-starter
modules build and pass all their tests. An unrelated issue with Helm setup was noted in thelmos-runtime-graphql-service
module but does not affect this feature.