legend-studio icon indicating copy to clipboard operation
legend-studio copied to clipboard

Productionize Query Through Service

Open MauricioUyaguari opened this issue 1 year ago • 0 comments

Overview

Users should have a workflow to promote a query from Legend Query to a service. Right now the only option is for users to open associated project and import query

Implementation plan

Provide a promote to service button in legend query (for create , existing, dataspace query ? ) When clicked will show the following inputs will show in the model

  • [ ] SDLCInstance: config added to legend-query to load all sdlc instances
    • [ ] Ensure we authorize with corresponding sdlc instance
  • [ ] Project list of projects from sdlc instance. default to project listed in depot from gav coordinates?
    • [ ] Improvement Have the create project option here ?
  • [ ] ProjectSetupCompleted flag to indicate whether or not project has the corresponding metadata and dependencies to support query. If unchecked we will add this meatdata to the project and dependency to said project.
  • [ ] Workspace -> default to groupWorkspace
  • [ ] Service Metadata
    • [ ] path
    • [ ] url (can generate from lambda parameters)
    • [ ] documentation ?
    • [ ] owners ?

Productionize Workflow

  • ✔️ ProjectSetupCompleted
    • validation verify project setup is complete. check dependencies ? check entities?
    • fetch project entities
    • create service from form -> serialize to the entity
    • build graph from project entities + service (or use engine to compile ? )
    • if compile -> continue
    • if no compile -> show error to user
    • create group workspace
    • commit with SINGLE service entity
    • open window to corresponding group workspace service
  • 🚫 ProjectSetupCompleted
    • fetch project entities
    • create service from form -> serialize to the entity
    • project entities + pmcd -> entities + service entities -> compile/build graph
    • if compile -> continue
    • if no compile -> show error to user
    • create group workspace
    • commit with (pmcd -> entities) + service entity (create entity change)
    • open window to corresponding group workspace service

Additional context

No response

MauricioUyaguari avatar Jul 19 '22 15:07 MauricioUyaguari