-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
[MLMD][Lineage] Integrate Lineage View into KFP #2918
[MLMD][Lineage] Integrate Lineage View into KFP #2918
Conversation
* Update licenses to make gen_licenses script pass in Docker build * Revert docker build dev change
…age-in-kfp-wip-merge-latest
@kwasi: The label(s) In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@kwasi: The label(s) In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, few comments.
.filter(k => k[0] !== '__ALL_META__') | ||
.map(k => ( | ||
{propertyMap.getEntryList() | ||
// TODO: __ALL_META__ is something of a hack, is redundant, and can be ignored |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// TODO: __ALL_META__ is something of a hack, is redundant, and can be ignored | |
// TODO: __ALL_META__ is something of a hack, is redundant, and can be ignored |
{propertyMap.getEntryList() | ||
// TODO: __ALL_META__ is something of a hack, is redundant, and can be ignored | ||
.filter((k:any) => k[0] !== '__ALL_META__') | ||
// @ts-ignore |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something more specific perhaps?
frontend/src/lib/Utils.tsx
Outdated
import { CustomTableRow, css } from '../components/CustomTableRow'; | ||
import { ServiceError } from '../generated/src/apis/metadata/metadata_store_service_pb_service'; | ||
// import { ServiceError } from '../generated/src/apis/metadata/metadata_store_service_pb_service'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you want to remove this line?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
frontend/src/lib/Utils.tsx
Outdated
} | ||
// export function serviceErrorToString(error: ServiceError): string { | ||
// return `Error: ${error.message}. Code: ${error.code}`; | ||
// } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
@@ -260,6 +264,7 @@ class SectionIO extends Component< | |||
} | |||
const data: ArtifactInfo = { | |||
id, | |||
// @ts-ignore |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
More specific?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed
This PR has no changes to the Status page, but the snapshot fails locally for me unless I update the snapshot. Reverting to the initial state to try to fix build failures.
I updated the KFP cluster to the latest version of the API server image as recommended by @jingzhang36 and confirmed that Pipeline creation is fixed on the server. The latest version of this code is pushed to the shared cluster. |
@kwasi: The label(s) In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Bobgy Thanks for the detailed review! The fixes to the error handling and ArtifactList loading will make a big difference.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kwasi Thank you! The changes look awesome.
Some last minor comments, you can ask someone else from the team to lgtm when you feel ready with this.
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: avdaredevil, Bobgy The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/test kubeflow-pipeline-sample-test |
PR is ready for final approvals and merging. Built a new image and deployed to https://2de286866441b3ac-dot-us-west1.notebooks.googleusercontent.com/ |
/lgtm |
/hold cancel |
/test kubeflow-pipeline-sample-test |
/retest |
…ineage-in-kfp-wip-merge-latest
/retest |
1 similar comment
/retest |
/lgtm |
Tests are now getting past CreateContainer before they fail so I'll give it some time then retest again. |
/retest |
1 similar comment
/retest |
@kwasi I'm not sure how much efforts it would be -- can we move mlmd client related imports to a subpath of '@kubeflow/frontend'. Maybe '@kubeflow/frontend/metadata/client'.
We can do this in a separate PR if you think the proposal is reasonable. |
@Bobgy We can definitely do that. I made an issue to track it with a link to your comment. |
* Minimal change to verify that the new image will work on Marketplace * Very rough working copy of LineageView in KFP * Update kubeflow-frontend dependency * Fix lint errors * Update to latest version of kubeflow-frontend * Update licenses to make gen_licenses script pass in Docker build * Revert docker build dev change * Bump kubeflow/frontend hash to latest version with pre-built library * Remove debug string * Replace metadata APIs with versions from kubeflow/frontend * Use latest dev version of kubeflow/frontend package * Pass route builder to ArtifactDetails for building details pages routes * Review ResourcesInfo.tsx * Review changes part 2 * Revert change to Status snapshot This PR has no changes to the Status page, but the snapshot fails locally for me unless I update the snapshot. Reverting to the initial state to try to fix build failures. * Revert Status snapshot to master * Remove unneeded @ts-ignore * Bump to latest mainline kubeflow/frontend hash * Respond to comments PR comments * Scope kubeflow/frontend to @kubeflow/frontend in package.json * Use explicit tab name ordering * Make ArtifactDetails class functions members to avoid binding * Add missing await when loading ArtifactList Fixes issue where loading spinner hides immediately before artifact list loads. * Fix casing on global constants in ArtifactDetails * Improve readability on ExecutionList.tsx * Remove `()!` pattern caused by not having @types/google-protobuf * Remove a stray @ts-ignore * Remove side effects from getRowsFrom{Artifacts,Executions} * Add error handling back to Artifact and Execution pages * Fix error message handling on getArtifacts() * Fix ArtifactList response * Check for potentially undefined `code` in serviceErrorToString * Restore missing error handlers
/assign @kwasi
/cc @avdaredevil
/area front-end
Changes
Validation
Deployment: https://2de286866441b3ac-dot-us-west1.notebooks.googleusercontent.com/
This change is