-
Notifications
You must be signed in to change notification settings - Fork 12
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
[eas-build] Expose generic job's BuildWorkflow
#444
[eas-build] Expose generic job's BuildWorkflow
#444
Conversation
fe87540
to
a8dfd2e
Compare
e45417e
to
80c3fd0
Compare
80c3fd0
to
d666b49
Compare
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.
LGTM 🚀
What's the rationale behind returning runResult: Result<void>;
?
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 reasonable
Most importantly, I wanted to be able to return output always, if the job succeeds or fails. This is how it works in GitHub Actions too. Not sure if people use it, but if we can do it too… why not! I could do |
Why
Exposing
BuildWorkflow
fromrunGenericJobAsync
lets us fetch individual steps and their outputs after the job is complete.How
buildWorkflow.executeAsync()
withasyncResult
and returns the result fromrunGenericJobAsync
alongsidebuildWorkflow
,outputs
toGeneric.Job
so the user has a way of telling us which steps outputs are to be considered jobs outputs,robotAccessToken
-authenticated request to a newwww
endpoint.Also changes the way we're handling
outputsDir
andenvsDir
— we want the outputs and environment variables to be collected always, not only if the step succeeded. And exposesjsepEval
so we can use it in Worker.Moreover, removes
outputs
fromBuildStep
. We had two:outputs
andoutputById
, one being updated as we process the workflow and the other not.Test Plan
Adjusted tests. I've used this version to run a custom job with
set-output name test
and gotten