Skip to content

Implement CreateRun and UploadInputs APIs#7152

Merged
katrogan merged 22 commits intov2from
katrina/eng26-346-implement-separate-createrun-uploadinputs-apis-in-oss
Apr 3, 2026
Merged

Implement CreateRun and UploadInputs APIs#7152
katrogan merged 22 commits intov2from
katrina/eng26-346-implement-separate-createrun-uploadinputs-apis-in-oss

Conversation

@katrogan
Copy link
Copy Markdown
Contributor

@katrogan katrogan commented Apr 3, 2026

Why are the changes needed?

Implements #7139 in OSS

What changes were proposed in this pull request?

Decouples uploading inputs from calling CreateRun and switches to support CreateRun with inputs passed by URI

How was this patch tested?

Tested locally by running devbox. The UI doesn't seem to like orgs even though they're required by the CRD so I verified the hello example locally like so

 Bash(curl -s -H "Content-Type: application/json" \
        -d '{"runId":{"org":"testorg","project":"flytesnacks","domain":"development","name":"rf89z2m7s7q47pfnj6gw"}}' \…)
  ⎿  phase: ACTION_PHASE_SUCCEEDED
     start: 2026-04-03T04:17:17.656266Z
     end: 2026-04-03T04:17:27.750213Z

Labels

Please add one or more of the following labels to categorize your PR:

  • added: For new features.
  • changed: For changes in existing functionality.
  • deprecated: For soon-to-be-removed features.
  • removed: For features being removed.
  • fixed: For any bug fixed.
  • security: In case of vulnerabilities

This is important to improve the readability of release notes.

Setup process

Screenshots

Check all the applicable boxes

  • I updated the documentation accordingly.
  • All new and existing tests passed.
  • All commits are signed-off.

Related PRs

Docs link

katrogan added 11 commits March 31, 2026 13:25
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
inputs = request.GetInputs()
}

inputs = fillDefaultInputs(inputs, taskSpec.GetDefaultInputs())
Copy link
Copy Markdown
Contributor Author

@katrogan katrogan Apr 3, 2026

Choose a reason for hiding this comment

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

not sure how necessary this is for all cases, it's not ideal we read the offloaded inputs and then reupload them again below

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We use the inputs to generate the cache key at line 216. is it possible that dataproxy generates the same hash here, so we don't need to read the offload inputs?

Copy link
Copy Markdown
Member

@pingsutw pingsutw Apr 3, 2026

Choose a reason for hiding this comment

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

or I think we can only read the inputs only when cache is enabled at least.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

look at the sdk code, i think it's possible. we can pass a task template to UploadInputRequest if we want

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Never mind—ignore me. I think we just need to update generateCacheKeyForTask to make it the same as the closed-source version

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

generateCacheKeyForTask(taskTemplate, precompute-hash)

Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
inputs = request.GetInputs()
}

inputs = fillDefaultInputs(inputs, taskSpec.GetDefaultInputs())
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We use the inputs to generate the cache key at line 216. is it possible that dataproxy generates the same hash here, so we don't need to read the offload inputs?

inputs = request.GetInputs()
}

inputs = fillDefaultInputs(inputs, taskSpec.GetDefaultInputs())
Copy link
Copy Markdown
Member

@pingsutw pingsutw Apr 3, 2026

Choose a reason for hiding this comment

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

or I think we can only read the inputs only when cache is enabled at least.

katrogan added 9 commits April 3, 2026 09:45
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
… into katrina/eng26-346-implement-separate-createrun-uploadinputs-apis-in-oss
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
… into katrina/eng26-346-implement-separate-createrun-uploadinputs-apis-in-oss
Base automatically changed from katrina/eng26-338-separate-createrun-uploadinputs-apis to v2 April 3, 2026 20:26
Signed-off-by: Katrina Rogan <katroganGH@gmail.com>
@katrogan katrogan merged commit fef062b into v2 Apr 3, 2026
17 checks passed
@katrogan katrogan deleted the katrina/eng26-346-implement-separate-createrun-uploadinputs-apis-in-oss branch April 3, 2026 20:38
pingsutw added a commit that referenced this pull request Apr 4, 2026
Signed-off-by: Kevin Su <pingsutw@apache.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants