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

feat(backend): avoid downcast and use ExecutionSpec if possible #9232

Merged
merged 1 commit into from
May 4, 2023

Conversation

yhwang
Copy link
Member

@yhwang yhwang commented Apr 25, 2023

Description of your changes:
Limit the direct Workflow data struct access to common.util and use ExecutionSpec and ExecutionStatus in other places. Create a data struct to represent the node status information in ExecutionStatus and add an API to access this information.

Checklist:

Limit the direct Workflow data struct access to common.util
and use ExecutionSpec and ExecutionStatus in other places.
Create a data struct to represent the node status information
in ExecutionStatus and add an API to access this information.
@google-oss-prow google-oss-prow bot requested review from gkcalat and Linchin April 25, 2023 17:39
@gkcalat gkcalat self-assigned this Apr 25, 2023
@yhwang
Copy link
Member Author

yhwang commented Apr 25, 2023

/cc @chensun
ExecutionSpec and ExecutionStatus are abstract interfaces added and implemented before which remove the argo Workflow data struct dependency at the backend, except the interface implementation (workflow.go under common/util).
In this PR, the downcast in api_converter.go is removed and use ExecutionSpec instead. This makes the argo Workflow dependency resides in the common/util.

Edit
The downcast was in report_server.go.

@google-oss-prow google-oss-prow bot requested a review from chensun April 25, 2023 19:17
@chensun
Copy link
Member

chensun commented Apr 27, 2023

@gkcalat can you help review this change to make sure that it's compatible with your status IR work? Thanks!

Copy link
Member

@gkcalat gkcalat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for the delay, @yhwang.
Thank you for catching this issue!

/lgtm
/approve

@google-oss-prow google-oss-prow bot added the lgtm label May 4, 2023
@google-oss-prow
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: gkcalat

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-prow google-oss-prow bot merged commit 6c72d95 into kubeflow:master May 4, 2023
@yhwang
Copy link
Member Author

yhwang commented May 4, 2023

appreciate the review @gkcalat

@yhwang yhwang deleted the avoid-downcast branch May 4, 2023 17:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants