Github가 공식적으로 제공하는 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD 플랫폼
💡 CI/CD (Continuous Integration / Continous Deployment)
- 하나의 서비스를 계획부터 실행까지 진행하는 것을 말함
리포지토리에서 Pull Request
나 push
같은 이벤트를 트리거로 GitHub 작업 워크플로(Workflow) 구성 가능
🤔 Workflow?
- 하나 이상의 작업이 실행되는 자동화 프로세스
- 각 작업은 자체 가상 머신 또는 컨테이너 내부에서 실행
.yml
혹은.yaml
파일에 의해 구성됨- 테스트, 배포 등 기능에 따라 여러 개의 워크플로 생성 가능
- 생성된 워크플로는
.github/workflows
디렉토리 이하에 위치
❗비공개 레포지토리의 경우, Github Actions가 작동할 때의 용량과 시간이 제한됨
❗공개 레포지토리는 무료로 사용 가능
.yml (설정 파일)
과 .sh (쉘 스크립트)
에 의해 각 배포 결과를 로그로 저장하며 빌드 파일(.jar
) 실행