Skip to content

API-based components #2

@caviri

Description

@caviri

Context
API-based components are needed in order to have a proper microservice based execution. These components will perform small tasks by performing a request to the API endpoint.

Possible solution

  • Use FastAPI to generate semi-automatically an API endpoint based on odtp.yml. The user will define a bash script that will run every time that the api is called. This run will follow the same structure of an ephemeral component. A temporary folder will be generate where to place the input/output files needed.

As a result of the run, the API could provide directly the output via JSON or via an URL to an output object stored in Minio.

Acceptance criteria

  • odtp-.yml parsing and API generation of ODTP component via odtp-component-template
  • FastAPI-based minimal example of ODTP component (odtp-component-example)
  • Report on stress testing report on multiple calls and long tasks.

Related repositories

  • odtp-component-template
  • odtp-component-example

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions