'on' block 이 scheduler
모든 workflow 는 on: 아래 trigger 를 선언해. 가장 흔한 trigger 들, 대략 쓸 순서대로:
push— 모든 push 시 발사. Branch, tag, path 로 필터링 가능.pull_request— PR open, sync (새 commit), reopen 등 시 발사. Branch, path, type 으로 필터링.schedule— cron 스타일, UTC.'0 6 * * *'= 매일 06:00 UTC.workflow_dispatch— UI/API/CLI 에서 수동 trigger. Input first-class.release— release event (created, published, edited) 시 발사.workflow_call— 다른 workflow 가 호출 가능하게 (reusable workflow).repository_dispatch— 외부 시스템이 POST 로 발사.merge_group— merge queue 안에서 발사.
Filter 가 trigger 를 좁혀
그냥 on: push 는 거의 안 원해. main 으로 push 나 source 파일이 변경된 push 를 원하지. 각 event 아래 filter:
branches/branches-ignoretags/tags-ignorepaths/paths-ignore— 변경 파일에 매칭되는 glob.types— sub-type 있는 event (PR opened/synchronized/reopened) 용.