Skip to content

Add iskylims upload to pipeline_manager and improve platform configuration #773

@saramonzon

Description

@saramonzon

Current behavior

  • pipeline_manager currently uploads sample metadata only to relecov-platform.
  • It does not upload to iskylims
  • The upload behavior is controlled through the extra_config dictionary, which can specify either relecov or iskylims as a target platform — but not both - this is:
    • Not consistently enforced.
    • Not a fixed schema, which makes usage unclear and validation difficult.
    • Also used by the validate module, which relies on it to check for duplicates in relecov-platform.

Expected behavior

  • pipeline_manager should be able to upload to both relecov-platform and iskylims, according to configuration.
  • The decision on which platform(s) to use should be based on the central configuration.json, not hardcoded conditions or loosely structured extra_config.

1. Extend pipeline_manager to support iskylims upload

  • Reuse or generalize existing upload logic UploadDatabase class as for relecov-platform

2. Refactor how platforms are configured

  • Define a new field in configuration.json, e.g.:
    "platforms": {
      "upload": ["relecov", "iskylims"],
      "relecov": {
        "url": "https://relecov-platform/api",
        "token": "xxxxx"
      },
      "iskylims": {
        "url": "https://iskylims/api",
        "token": "yyyyy"
      }
    }
    

3. Use this configuration for both validate and pipeline-manager. Ensure that relecov-platform is uploaded first so you can get the unique_sample_id

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions