젠킨스 등 여러 CI(지속통합)/CD(지속배포)가 있지만
깃허브로도 가능
.yml로 작성
자동화 작업 실행단위
.github/workflows 디렉토리에 yml로 작성
repository에 여러개의 workflow가 있을 수 있음
워크플로우에 포함되어있는 작업
작업의 처리 단위
워크플로우는 최소 하나의 job를 가지고 있어야함
jobs:
job1:
job2:
job3:
위와 같이 여러개를 등록 가능하며
각 job들은 기본적으로 동시에 실행되며
의존성을 추가하여 순서대로 실행하게도 할수있음
workflow가 어떤 경우에 실행되게 할지 설정할때 사용
'main 브랜치에 푸쉬 될때마다'
on:
push:
branchs:
- main
on:
어떤 OS에서 실행하는지 run-on 속성도 들어가야함
run-on: ubuntu-latest
job을 순서대로 처리하기위해 사용
시퀀스 타입을 사용하기 때문에 - 로 구분
steps:
- cd test
- ./test.sh
복잡한 명령에는 actions를 사용
커맨드 or 스크립트 처리시엔 run을 사용
액션 실행시에는 uses를 사용
반복되는 작업을 추상화시킨것
다른 repository에서 사용할 수 있도록 공유도 가능