가장 바깥 단위
워크플로는 GitHub Actions의 가장 바깥 단위야. .github/workflows/ 경로에 있는 단일 YAML 파일이며, 언제 무엇이 실행되고 무엇이 실행되는지를 정의해. 하나의 워크플로는 여러 작업을 가질 수 있고, 하나의 저장소는 여러 워크플로를 가질 수 있어.
모든 워크플로가 갖춰야 할 세 가지 요소는 이거야:
- name — Actions UI에 보이는 이름이야. 생략해도 되지만 적어주는 게 친절해.
- on — 이 워크플로를 실행하는 조건이 되는 이벤트들이야.
- 작업 — 이름이 붙은 작업 단위들의 모음이며, 각각 러너에서 실행돼.
파일 확장자는 .yml이나 .yaml 둘 다 괜찮아. 파일명은 자유지만 URL에 노출될 뿐 내부에서 참조되지는 않아.
따라할 만한 관습
- 관심사 하나당 워크플로 하나를 두자 —
ci.yml,release.yml,nightly.yml처럼. 모든 작업을 하나에 몰아넣지 마. - 파일명과 워크플로 이름을 일치시키자 (예:
name: ci→ci.yml). 나중에 grep 할 때 시간이 절약돼. - 워크플로는 200줄 이하로 유지해. 넘어가면 재사용 가능한 워크플로나 composite 액션(quest 후반부에 나옴)으로 쪼개.