Github Actions - CI

wondi·2025년 1월 22일

인프라구축/CI&CD

목록 보기
2/10

About continuous integration with GitHub Actions

GitHub Actions를 사용하여 저장소에서 직접 커스텀 지속적 통합(CI) 워크플로우를 만들 수 있다.

About continuous integration (지속적 통합이란?)

  • 지속적 통합(CI)는 코드를 공유 저장소에 자주 커밋하는 것을 요구하는 소프트웨어 개발 방식이다.
  • 코드를 자주 커밋하면,
    • 오류를 더 빨리 발견 가능
    • 개발자가 오류의 원인을 찾을 때 디버깅해야하 할 코드의 양이 줄어듦
    • 소프트웨어 개발 팀의 다른 구성원들의 변경사항을 병합하기 더 쉬워짐
      • 개발자가 오류를 디버깅하거나 병합 충돌을 해결하는 데 시간을 덜 쓰고, 코드 작성에 더 많은 시간을 할애할 수 있다.

저장소에 코드를 커밋할 때, 커밋이 오류를 발생시키지 않도록 지속적으로 코드를 빌드하고 테스트할 수 있다.

  • 스타일 포맷팅 검사
  • 보안 검사
  • 코드 커버리지
  • 기능 테스트
  • 기타 커스텀 검사

코드를 빌드하고 테스트하려면 서버가 필요하다. 코드를 저장소에 푸시하기 전에 로컬에서 빌드하고 테스트할 수 있고, 저장소의 새로운 코드 커밋을 확인하는 CI서버를 사용할 수 있다.

About continuous integration using GitHub Actions (GitHub Actions를 사용한 CI)

Github Actions를 사용한 CI는 저장소의 코드를 빌드하고 테스트를 실행할 수 있는 워크플로우를 제공한다.

  • GitHub 이벤트 발생 시 (예 : 새 코드 푸시)
  • 정해진 일정에 따라
  • 저장소 디스패치 웹훅을 사용한 외부 이벤트 발생 시

Github는 CI 테스트를 실행하고 각 테스트 결과를 풀 리퀘스트에 표시하므로,

  • 브랜치의 변경 사항이 오류를 발생시키는 지 확인할 수 있다.
  • 워크플로우의 모든 CI테스트가 통과하면 팀 멤버가 변경사항을 검토하거나 병합할 준비가 된 것이다
  • 테스트가 실패하면 변경사항 중 하나의 실패의 원인이 될 수 있다.

Workflow templates 워크플로우 템플릿

  • Github는 다양한 언어와 프레임워크를 위한 CI 워크플로우 템플릿을 제공한다.
  • 전체 CI 워크플로우 템플릿 목록은 actions/starter-workflows 저장소에서 찾아볼 수 있다.

출처 | github actions 공식문서

profile
Developer Wondi

0개의 댓글