forked from boostcampwm-2024/web17-juchumjuchum
-
Notifications
You must be signed in to change notification settings - Fork 1
github workflow 핵심 개념
김두종 edited this page Jan 15, 2025
·
1 revision
- Github Action의 하위 항목
-
workflow
는 하나 이상의 작업을 실행할 구성 가능한 자동화된 프로세스이다. -
workflow
는 레포지토리에 체크인 된YAML
파일에 정의되며, 레포지토리의 이벤트로 트리거될 때 실행되거나 수동으로 또는 정의된 일정에 따라 트리거될 수 있습니다. -
이벤트
는workflow
실행을 트리거하는 리포지토리의 특정 활동 자동화다
-
워크 플로우
- 하나 이상의 작업(Job)을 실행할 구성 가능한
자동화된 프로세스
이다. - Workflow는 레포지토리에 체크인된 YAML파일에서 정의되며, 레포지토리의 이벤트로 트리거될 때 실행되거나 수동으로 or 정의된 일정에 따라 트리거될 수 있다.
- 워크플로우는 레포지토리의
.github/workflow
디렉토리에 정의된다.
- 하나 이상의 작업(Job)을 실행할 구성 가능한
-
이벤트(트리거)
- 워크플로우를 실행하게 되는 하나의
트리거
이다. - 이벤트 종류
- pull_request
- PR 등록되면 발생되는 이벤트
- push
- 특정 브랜치에 push되었을 때 발생되는 이벤트
- i.e. main 브랜치에 머지되면 EC2 Instance에 자동 배포
- pull_request
- 워크플로우를 실행하게 되는 하나의
-
작업(Job)
- 동일한
실행기(Runner)
에서 실행되는 워크플로의단계(step)
집합이다. - 각
단계
는 실행되는셸 스크립트
또는 실행되는action
이다. - 기본적으로 작업은 종속성이 없으며,
병렬적
으로 실행된다. - 작업에 종속성이란 순차적으로 실행함을 의미하며, 종속성을 추가할 수 있다.
- 동일한
-
action
- action은 GitHub에서 Git 리포지토리를 가져오거나, 빌드 환경에 맞는 올바른 도구 체인을 설정하거나, 클라우드 공급자에 대한 인증을 설정할 수 있습니다.
- 사용자 고유의 action을 작성하거나, GitHub Marketplace에서 워크플로에 사용할 action을 찾을 수 있습니다.
-
실행기(Runner)
- 트리거될 때 워크플로를 실행하는
서버
이다 - 각 서버는 한 번에 하나의
작업(job)
을 실행 할 수 있다 - Github은 워크플로를 실행할 Ubuntu Linux, Microsoft Windows, macOS 실행기를 제공한다
- 트리거될 때 워크플로를 실행하는
참고 자료
- [1주 2일차 합동 개발 일지](marketCap 데이터 null 이슈 해결)
- 인터셉터를 이용한 로거 개발기
- 배포 환경에서 웹 소캣 연결 실패 문제 해결
- Github Actions를 이용한 CI CD 구축
- nGrinder 테스트 시나리오
- nGrinder TPS가 측정되지 않는 문제
- 메트릭 수집에 필요한 툴들 설치하기
- Node Exporter 연결 안되는 문제
- StockService에서 Repository 계층 분리하기
- Server와 Grafana연동하기
- Guest 로그인 중복 문제 해결