GitHub Actions에서 가장 상위 개념인 워크플로우(Workflow, 작업 흐름)는 쉽게 말해 자동화해놓은 작업 과정이라고 볼 수 있다. 워크플로우는 코드 저장소 내에서 .github/workflows
폴더 아래에 위치한 YAML 파일로 설정하며, 하나의 코드 저장소에는 여러 개의 워크플로우, 즉 여러 개의 YAML 파일을 생성할 수 있다.
이 워크플로우 YAML 파일에는 크게 2가지를 정의해야하는데, 첫번째는 on
속성을 통해서 해당 워크플로우가 언제 실행되는지를 정의한다.
예를 들어, 코드 저장소의 main
브랜치에 push
이벤트가 발생할 때 마다 워크플로우를 실행하려면 다음과 같이 설정해준다.
.github/workflows/example.yml
on:
push:
branches:
- main
jobs:
# ...(생략)...
다른 예로, 매일 자정에 워크플로우를 실행하려면 다음과 같이 설정한다.
.github/workflows/hello
on:
schedule:
- cron: "0 0 * * *"
jobs:
# ...(생략)...