현재 나의 목표가 하나 있다.
회사 내 앱에 Github Actions를 도입하여 앱 검수 요청까지 완료하기 !!
그러기 위해선 우선 Github Actions가 무엇인지 확인해봐야 한다.
참고: https://docs.github.com/ko/actions/learn-github-actions/understanding-github-actions
1. Github Actions란?
GitHub Actions는 연속 통합 및 연속 배포(CI/CD) 플랫폼으로, 빌드, 테스트, 배포 파이프라인을 자동화할 수 있게 해준다.
예를 들어, 저장소에 새로운 Pull-Request가 생기면 이를 빌드하고 테스트하는 workflows를 만들거나,
병합된 Pull-Request를 프로덕션에 배포하는 작업을 자동화할 수 있다.
GitHub Actions는 DevOps에 국한되지 않고, 저장소에서 발생하는 다른 이벤트에도 workflows를 실행할 수 있다.
예를 들어, 새로운 이슈가 생성되면 자동으로 적절한 라벨을 추가하는 workflows 실행할 수 있다.
GitHub에서는 Linux, Windows, macOS 가상 머신을 제공하여 워크플로를 실행할 수 있으며,
자체 데이터 센터나 클라우드 인프라에서 직접 호스팅하는 셀프 호스티드 러너도 사용할 수 있다.
2. Github Actions 구성 요소
- 이벤트(Event): 저장소에서 Pull-Request가 열리거나 이슈가 생성되는 등의 이벤트가 발생하면 GitHub Actions Workflows가 트리거 됨
- 워크플로(Workflows): 이벤트가 발생할 때 실행되는 자동화된 작업의 모음. 워크플로는 하나 이상의 작업(Job)으로 구성
- 작업(Job): 워크플로 내에서 실행되는 개별 작업 단위. 작업은 순차적으로 실행되거나 병렬로 실행될 수 있다.
- 러너(Runner): 각 작업은 자체 가상 머신 러너 또는 컨테이너 내에서 실행
- 단계(Step): 각 작업 내에서 실행되는 개별 명령어 또는 스크립트입니다. 단계는 직접 정의한 스크립트를 실행하거나, 워크플로를 간소화할 수 있는 재사용 가능한 확장인 액션(Action)을 실행할 수 있다.
예를 들어, 이벤트가 발생하면 Runner 1이 Job 1을 실행하고, Job 1이 완료되면 Runner 2가 Job 2를 실행하는 다이어그램을 생각해 볼 수 있다.
각 작업(Job)은 여러 단계(Step)로 나뉜다.
각 구성요소에 대한 자세한 내용은 다음 챕터에서 다룰 예정
'개발 > 버전 관리' 카테고리의 다른 글
Github Actions로 업무 자동화 도입하기 #4. Jobs, Step, Actions, Runners (0) | 2024.08.05 |
---|---|
Github Actions로 업무 자동화 도입하기 #3 : Workflows를 트리거 하는 이벤트 (0) | 2024.07.31 |
Github Actions로 업무 자동화 도입하기 #2 : Workflows (워크플로우) (0) | 2024.07.31 |
[Git] Git에서 rebase vs merge 차이 알아보기 (0) | 2024.07.02 |