-
Notifications
You must be signed in to change notification settings - Fork 333
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
Add functionality for parsing Action inputs from a workflow file #1392
Conversation
No semantic changes.
This is a common case, so we should handle it.
This better handles cases where customers have a monorepo and have separate jobs for different components.
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.
OK. This will now throw if we can't determine what the actual input value is. I don't actually see where getting the category is being used. Is that coming in a later PR? We should make sure that the action doesn't fail if it can't find the category (most likely, the action will already have failed for some other reason, so we need to at least make sure that this failure doesn't hide the original failure).
This functionality is just for #1393 — ideally we'd minimise the number of places where we need to do this hacky parsing of the workflow. We wrap it in a try-catch block there to avoid hiding the original failure as you mention. I think the |
I think that all makes sense. I'll review #1393 later today. Maybe just adding a comment to the function suggesting that it should be wrapped in a try-catch. |
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. Optionally, add a comment to the tryOrThrow...
functions to suggest wrapping in try-catch.
In order to upload SARIF files for code scanning runs where the
init
step failed, we need to be able to handle the case where theanalyze
Action did not run. In this case, thepost-analyze
step will not be run, and therefore we don't know the inputs toanalyze
. (In particular, we care aboutcategory
,upload
, andcheckout_path
.)This PR implements some functionality to make a best effort attempt to work out the value of an input to an Action given the workflow file and information that's available to the
init
step like matrix variables. I recommend reviewing the first commit separately since it separates out workflow-related code into a separate fileworkflow.ts
.Merge / deployment checklist