-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
Objectives
Refactor Maestro service to support indexing a broader range of structures beyond just the current analysisCentric or fileCentric schemas. This enhancement will make it possible to eliminate specific attachments or dependencies on fields associated with entities like donor, specimen, sample, and others, creating a more flexible and adaptable indexing service capable of handling diverse schema requirements.
Desired solution
- Refactor Maestro from Java to Typescript: Will lead into a long-term maintainability while keeping the comunity and industry trends regarding programming languages. Improve overall code quality by removing dead or unused code. Maestro V5 - Typescript refactoring #284
- Modular application: To enable the application to function either as a standalone server or as a portable library that provides its core functionalities. This means restructuring the application in such a way that its essential features can operate independently when run as a server, while also being encapsulated within a library format that can be easily integrated into other projects or services. Maestro V5 - Modular application #281
- Kafka integration: To provide an optional configuration that allows the application to listen for incoming Kafka messages to trigger the process to index data. This feature, which is already present in the current version should be compatible. Maestro V5 - Kafka integration #285
- ElasticSearch: Compatible with ElasticSearch v7 and v8. Maestro V5 - Elasticsearch compatibility #282
- Song integration: To be able to integrate Song as a repository source. Maestro V5 - Song compatible #280
- Lyric integration: To be able to integrate Lyric as a repository source. This should work similarly as it works with Song. Maestro V5 - Lyric integration #283
Additional context
Business as Usual: Most of the enhancements shouldn't impact existing indexing process. i.e integration with Song, Kafka and indexing endpoints