convictional / trigger-workflow-and-wait

Trigger a workflow in another (or same) repository and wait for the job to finish.
MIT License
311 stars 151 forks source link

Doesn't propagate downstream failure from JUnit results #77

Open brianjmurrell opened 1 year ago

brianjmurrell commented 1 year ago

Assume I have a workflow (we'll call the downstream workflow) which runs tests which reports their results as a JUnit result which then sets a commit status check as pass or fail depending on if the JUnit results show failure or not. This status reporting of a JUnit file is done with EnricoMi/publish-unit-test-result-action@v2 FWIW. Probably more detail than necessary but I think the main point here is that the downstream job can post failures in the commit status.

When a workflow (that we'll call the upstream workflow) that triggers/dispatches this downstream workflow using convictional/trigger-workflow-and-wait and sets propagate_failure: true runs, it does not propagate this failure into the upstream workflow.

To demonstrate through actual results, here is the upstream workflow result: https://github.com/daos-stack/argobots/actions/runs/3540793297/jobs/5944319147

The downstream result, as you know will be in the result above.

If I make the downstream workflow exit with a failure, the failure is propagated to the upstream job. So it seems failure propagation only happens if a step in the downstream workflow fails, but not if all steps were successful but a commit status reports a failure.

brianjmurrell commented 1 year ago

Any ideas here? I like this action, but it's failure here is going to be a blocker to being able to use it unfortunately.

brianjmurrell commented 1 year ago

I see the logs for the example run I mentioned in my original description have expired. Would it be helpful if I recreated them?