Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support promote query to service #1506

Merged
merged 11 commits into from
Sep 29, 2022
Merged

support promote query to service #1506

merged 11 commits into from
Sep 29, 2022

Conversation

akphi
Copy link
Contributor

@akphi akphi commented Sep 27, 2022

Summary

  • Closes RFC: Legend Query Production Workflows  #1424
  • Closes Productionize Query Through Service #1320
  • Supersedes Promote Query To Service #1375
  • Support promote query into service:
  • Rework Legend Query setup page
  • Misc:
    • bump dependencies
    • standardize typeahead minimum search length to 2 characters
    • Update icon for Project from repo to open book
  • Support promoting query to service mode:
    • Create a new setup mode Productionize an existing query (with icon FaArrowAltCircleUp), which let users pick a query (their query only), and then, based on that to go to a route in Legend Studio - /extensions/productionize-query/:${queryId}
    • Create a route in Studio - /productionize-query/:${queryId}
      • Query selector: with a button to preview the query
      • Project selector (default to the project matching the query's GA coordinate), if the project cannot be found, deselect the query and update the URL
      • Workspace name (validate for duplication - we want to create a new workspace)
      • Service name
      • Service pattern
      • When promoting the query to service (based on @MauricioUyaguari foundation code in Promote Query To Service #1375):
        delete the query upon completion if they are the owner of the query, after this, show a proceed to the mode where they can view their service in focus-mode or in the workspace, and prompt them to fix their workspace (if there was compilation issues detected) and then proceed with creating a review
    • From EditExistingQuery mode, if the project cannot be resolved from projectId prefix, pick the default instanceof Studio
    • From EditExistingQuery, only owner can promote to SDLC flow -> Disallow promote to service if not owner
  • Remove the limitation around owner of query promotion now
  • Add a small dialog after cloning the service in update-service-query mode to tell users what to expect: i.e. Hey, your service has been cloned, .. but it's not committed, please have it reviewed and merged, etc. As of now, you can keep working on it, using the following link, have a button to go to that service, or abort

Last but not least, thanks @MauricioUyaguari a lot for the ground work in #1375, covered a lot of cases I could have missed. I simplified the hell out of it though 😢

How did you test this change?

  • Test(s) added
  • Manual testing (please provide screenshots/recordings)
  • No testing (please provide an explanation)

Productionize query (happy path)

productionize.query.mov

Productionize query with compilation issue

productionize.query.with.compilation.issue.mov

New Project icon - Project is an Open Book!

Screen Shot 2022-09-29 at 10 26 52 AM

@changeset-bot
Copy link

changeset-bot bot commented Sep 27, 2022

🦋 Changeset detected

Latest commit: 9cc3f10

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 34 packages
Name Type
@finos/legend-application Patch
@finos/legend-application-query Patch
@finos/legend-application-query-bootstrap Patch
@finos/legend-application-studio Minor
@finos/legend-art Patch
@finos/legend-extension-dsl-data-space Patch
@finos/legend-extension-dsl-service Patch
@finos/legend-graph Patch
@finos/legend-query-builder Patch
@finos/legend-server-depot Patch
@finos/legend-shared Patch
@finos/babel-preset-legend-studio Patch
@finos/eslint-plugin-legend-studio Patch
@finos/legend-application-query-deployment Patch
@finos/legend-application-studio-bootstrap Patch
@finos/legend-application-studio-deployment Patch
@finos/legend-application-taxonomy Patch
@finos/legend-application-taxonomy-bootstrap Patch
@finos/legend-application-taxonomy-deployment Patch
@finos/legend-dev-utils Patch
@finos/legend-extension-dsl-diagram Patch
@finos/legend-extension-dsl-mastery Patch
@finos/legend-extension-dsl-persistence Patch
@finos/legend-extension-dsl-persistence-cloud Patch
@finos/legend-extension-dsl-text Patch
@finos/legend-extension-external-format-json-schema Patch
@finos/legend-extension-external-language-morphir Patch
@finos/legend-extension-external-store-service Patch
@finos/legend-extension-store-flat-data Patch
@finos/legend-extension-store-relational Patch
@finos/legend-extension-tracer-zipkin Patch
@finos/legend-server-sdlc Patch
@finos/legend-storage Patch
@finos/legend-manual-tests Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@codecov
Copy link

codecov bot commented Sep 27, 2022

Codecov Report

Merging #1506 (9cc3f10) into master (5b692ec) will decrease coverage by 0.25%.
The diff coverage is 9.80%.

@@            Coverage Diff             @@
##           master    #1506      +/-   ##
==========================================
- Coverage   40.61%   40.35%   -0.26%     
==========================================
  Files        1248     1252       +4     
  Lines       55588    56074     +486     
  Branches    12566    12687     +121     
==========================================
+ Hits        22579    22631      +52     
- Misses      32926    33361     +435     
+ Partials       83       82       -1     
Impacted Files Coverage Δ
...s/legend-application-query-bootstrap/src/index.tsx 0.00% <ø> (ø)
...n-query/src/stores/LegendQueryApplicationPlugin.ts 0.00% <ø> (ø)
...-application-query/src/stores/LegendQueryRouter.ts 11.76% <0.00%> (-1.57%) ⬇️
...d-application-query/src/stores/QueryEditorStore.ts 4.05% <0.00%> (+0.03%) ⬆️
...lication-studio/src/components/shared/DiffView.tsx 21.15% <0.00%> (ø)
...ment-editor-state/mapping/MappingExecutionState.ts 29.13% <ø> (ø)
...e/element-editor-state/mapping/MappingTestState.ts 40.89% <0.00%> (ø)
...ment-editor-state/service/ServiceExecutionState.ts 29.26% <0.00%> (ø)
packages/legend-application/src/const.ts 0.00% <0.00%> (ø)
...lication/src/stores/shared/LambdaParameterState.ts 6.57% <ø> (-1.22%) ⬇️
... and 42 more

@akphi akphi mentioned this pull request Sep 29, 2022
3 tasks
@akphi akphi changed the title support promote query to service and rework query setup screen ⚡ support promote query to service Sep 29, 2022
@akphi akphi marked this pull request as ready for review September 29, 2022 21:19
@akphi akphi merged commit 6b299d5 into finos:master Sep 29, 2022
@akphi akphi deleted the dio branch September 29, 2022 22:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla-present CLA Signed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

RFC: Legend Query Production Workflows Productionize Query Through Service
2 participants