해당 안 되는 workflow skip
가장 단순한 dynamic matrix 는 '변경이 이 workflow 가 test 하는 거 안 만지면 전체 workflow skip'. paths: 와 paths-ignore: 가 event 아래 전체 workflow 필터.
패턴
- Glob:
'src/**','**/*.py'. - 여러 개:
['src/**', 'tests/**']. - YAML 필터에 부정 지원 안 함; 대신
paths-ignore.
뭐가 평가되는가
이전 SHA 와 새 push 사이 (또는 PR base 와 head 사이) diff. 어느 변경 파일이라도 필터 매치하면 workflow 실행. 아니면 trigger 안 됨.
Path 필터와 required check 상호작용
Required status check 인 workflow 가 paths 로 필터되면 check 발화 안 함 — 하지만 여전히 'required'. 매치 파일 안 만지는 PR 은 hang. 해결책:
- 'Allow merging if status checks are skipped' 설정 (정책 의존).
- 항상 green 보고하는 no-op fallback workflow.
- Workflow level 아니고 job 안에서
paths-filteraction 사용.