Skip to content

opendatamesh-initiative/odm-platform-adapter-marketplace-executor-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ODM Platform Adapter Marketplace Executor Starter

This is a starter project for implementing a Marketplace Executor in the Open Data Mesh (ODM) platform. It serves as a template for creating executors that handle data product access management in the ODM ecosystem.

Overview

The Marketplace Executor is a crucial component in the ODM architecture that bridges the gap between the Data Product Catalog and various enterprise tools. It's responsible for managing access to data products listed in the catalog, effectively turning the catalog into a true Data Product marketplace.

Architecture

The executor follows a standardized interface to handle marketplace operations:

Endpoint

POST {executorBaseUrl}/api/v1/up/marketplace-executor/requests

Request Format

{
    "v": "1",
    "operation": "MARKETPLACE_SUBSCRIBE|MARKETPLACE_UNSUBSCRIBE",
    "request": {
        "name": "",
        "identifier": "",
        "provider": {
            "dataProductFqn": "",
            "dataProductPortsFqn": [""]
        },
        "consumer": {
            "type": "dataproduct | user | team",
            "identifier": "fqn | email | ?"
        },
        "requester": {
            "type": "user",
            "identifier": "email"
        },
        "properties": {},
        "startDate": "Date",
        "endDate": "Date"
    }
}

Response Format

{
    "status": "PENDING|GRANTED|DENIED|REVOKED|ERROR",
    "message": "",
    "provider": {
        "dataProductFqn": "",
        "dataProductPortsFqn": [""]
    },
    "createdAt": "Date"
}

Getting Started

  1. Fork this repository
  2. Implement the executor interface according to your specific enterprise tool requirements
  3. Configure the necessary properties and dependencies
  4. Build and deploy your custom executor

Key Features

  • Standardized interface for marketplace operations
  • Support for subscription and unsubscription operations
  • Flexible consumer type handling (data product, user, or team)
  • Configurable properties for custom implementation needs
  • Built-in support for access duration management (start/end dates)

Implementation Notes

  • Each request has a unique identifier generated by the Marketplace Service
  • The complexity of orchestrating multiple calls to grant access is delegated to the executor
  • The executor should maintain detailed logs of the resources created during the access grant process
  • Error handling and rollback mechanisms should be implemented as needed

Related Links

License

This project is licensed under the terms of the license included in the repository.

Contributing

This is a starter project intended to be forked and customized. For questions or suggestions, please refer to the ODM Initiative Discussion.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages