
📍 깃허브 액션이란 무엇일까?
개발을 하다 보면 반복적인 작업이 많다. 코드 변경 후 빌드하고, 테스트를 실행하고, 배포하는 과정이 매번 수동으로 이루어진다면 시간과 비용이 낭비될 수밖에 없다. 이를 해결하기 위해 등장한 것이 CI/CD (Continuous Integration / Continuous Deployment) 이며 GitHub에서는 이를 지원하는 GitHub Actions를 제공한다.
GitHub Actions는 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD(연속 통합 및 지속적인 업데이트) 플랫폼이다.
특정 이벤트(예: 코드 푸시, PR 생성, 이슈 등록 등)가 발생하면 미리 정의한 작업(빌드, 테스트, 배포 등)을 자동으로 실행할 수 있다.
쉽게 말해 코드를 GitHub에 푸시하면 자동으로 테스트를 실행하고, 문제가 없다면 배포까지 알아서 처리하는 강력한 기능을 제공한다. GitHub 저장소 내에서 바로 사용할 수 있어 별도의 CI/CD 도구를 설치할 필요도 없다.
CI/CD는 소프트웨어 개발을 더 빠르고 안전하게 하기 위한 자동화 프로세스라고 할 수 있다.
개발자가 새로운 코드를 추가할 때마다, 자동으로 빌드하고, 테스트를 실행하는 과정이다.
예를 들어, 개발자가 “로그인 기능”을 추가했다고 하면,
CI가 끝난 코드가 자동으로 배포(사용자에게 제공)되는 과정이다.
예를 들어, 테스트까지 끝난 코드가
➡️ 쉽게 말하면?
✅ CI = “코드 바꾸면 자동으로 검사!”
✅ CD = “테스트 통과하면 자동으로 배포!”
CI/CD를 활용하면 버그를 미리 잡고, 배포를 더 빠르게 할 수 있어 개발 생산성이 올라간다.
CI/CD는 단순한 자동화 도구가 아니라 코드 품질을 유지하고 개발 프로세스를 효율적으로 만들기 위해 필수적인 요소다. GitHub Actions를 사용하면 다음과 같은 장점이 있다.
GitHub Actions를 사용하려면 몇 가지 중요한 개념을 이해해야 한다.
하나의 자동화 프로세스를 정의하는 파일이다. .github/workflows/ 디렉토리에 YAML 형식으로 저장된다.
워크플로우를 실행하는 트리거(Trigger)이다. 예를 들어, push, pull_request, schedule 같은 이벤트가 있다.
워크플로우에서 실행되는 개별 작업 단위다. 여러 개의 Job이 병렬 또는 순차적으로 실행될 수 있다.
Job 내부에서 실행되는 개별 명령어 또는 액션이다.
워크플로우를 실행하는 환경이다. GitHub에서 제공하는 ubuntu-latest, windows-latest 등의 환경을 사용하거나 직접 서버를 세팅할 수도 있다.
GitHub Actions를 활용하면 다양한 자동화 작업을 수행할 수 있다.
GitHub Actions를 사용할 때 몇 가지 주의해야 할 사항이 있다.
참고문헌
🔗 깃허브 액션 공식 문서