@@ -185,14 +185,18 @@ jobs:
185185 if : always()
186186 run : sudo chown -R $USER:$USER /tmp/pip-cache
187187
188- # This job runs if `nox-cross-arch` ran and succeeded.
189- # This is required because, when the `nox-cross-arch` job is skipped, its
190- # inner matrix is not expanded, and branch protection rules on the
191- # inner-matrix jobs get stuck. So instead of `nox-cross-arch`, this job can be
192- # used in the branch protection rules.
193- # At the time of writing this, there is an ongoing discussion about this here:
188+ # This job runs if all the `nox-cross-arch` matrix jobs ran and succeeded.
189+ # As the `nox-all` job, its main purpose is to provide a single point of
190+ # reference in branch protection rules, similar to how `nox-all` operates.
191+ # However, there's a crucial difference: the `nox-cross-arch` job is omitted
192+ # in PRs. Without the `nox-cross-arch-all` job, the inner matrix wouldn't be
193+ # expanded in such scenarios. This would lead to the CI indefinitely waiting
194+ # for these jobs to complete due to the branch protection rules, essentially
195+ # causing it to hang. This behavior is tied to a recognized GitHub matrices
196+ # issue when certain jobs are skipped. For a deeper understanding, refer to:
194197 # https://github.com/orgs/community/discussions/9141
195198 nox-cross-arch-all :
199+ # The job name should match the name of the `nox-cross-arch` job.
196200 name : Cross-arch tests with nox
197201 needs : ["nox-cross-arch"]
198202 runs-on : ubuntu-20.04
0 commit comments