가장 바깥 단위
Workflow 는 GitHub Actions 의 가장 바깥 단위야. .github/workflows/ 에 있는 단일 YAML 파일이고, 언제 뭐가 돌고 뭐가 도는지 묘사해. 하나의 workflow 가 여러 job 가질 수 있고, 하나의 repo 가 여러 workflow 가질 수 있어.
모든 workflow 가 가지는 세 가지:
- name — Actions UI 에 보이는 이름. 옵션이지만 친절해.
- on — 이 workflow 를 trigger 하는 event 들.
- jobs — 이름 붙은 작업 단위 map, 각각 runner 에서 돔.
파일 확장자는 .yml 이나 .yaml; 둘 다 됨. 파일명은 자유롭고 (URL 에 보이지만 안에서 참조되진 않아).
따라할 만한 관습
- 관심사 하나당 workflow 하나 —
ci.yml,release.yml,nightly.yml. 모든 job 을 하나에 쌓지 마. - 파일명이 workflow 이름과 일치 (예:
name: ci→ci.yml). 나중에 grep 시간 절약. - Workflow 를 200 줄 이하로 유지. 그 이상이면 reusable workflow 나 composite action (quest 후반) 으로 분해.