Status checks "required if run"

TL;DR

Is it somehow possible to change the branch protection from status checks that are required to “required if run”?


I heavily make use of the

on:
  pull_request:
    paths:

for my different workflows for GitHub Actions. Thus, depending on what files were changed in the PR a different set of checks is run. I would mark most (if not all) of them as required before a PR is merged. Problem is, if I do that the PR also waits for checks that will not be run. Is it somehow possible to change this behavior so that a check is marked as required only if it is run?

1 Like

Hi @pmeier,

I’m afraid it’s not supported. If the checkrun is required, it has to be completed and return a status value.

The only exception is if you’re an administrator, you can still merge the pull request.
adminmerge

Thanks.

Hm, that is unfortunate. Problem with you approach is that the PR is marked as “not completed yet (yellow dot)” or failed forever, although that is not the case. I guess I’ll remove the branch protection rules in that case. Thanks for your input.

Yes this is a real shame.

I’d like a “all tests run must pass” option, rather than a “these tests must run and pass (even though some of them may not be automatically started nor be relevant)” option.