buildspec.yml
appsepc.yml
CodeDeploy 서비스
를 이용하면 실행되고 있는 서버 애플리케이션에 실시간으로 변경 사항을 전달할 수 있다. 또한 S3 서비스
를 통해 S3 버킷을 통해 업로드된 정적 웹 사이트에 변경 사항을 실시간으로 전달하고 반영할 수 있다.개발환경 구축
EC2 인스턴스 역할 부여
파이프라인 구축
💡
appsepc.yml
: CodeDeploy-Agent가 인식하는 파일
→ 내부의 파일은 appspec.yml 파일이 구성하고 있는 배포 수명 주기에 따라서 실행된다.
💡 CodeDeploy-Agent는 파이프라인 실행 때마다 로그를 해당 EC2 instance에 저장한다.
cd /opt/codedeploy-agent/deployment-root/deployment-logs
에서 로그파일 목록을 확인 후 열어보면 로그를 확인할 수 있다.
Pull Request
나 push
같은 이벤트를 트리거로 GitHub 작업 워크플로(Workflow)를 구성할 수 있다. 워크플로는 하나 이상의 작업이 실행되는 자동화 프로세스로, 각 작업은 자체 가상 머신 또는 컨테이너 내부에서 실행된다다..yml
(혹은 .yaml
) 파일에 의해 구성되며, 테스트, 배포 등 기능에 따라 여러개의 워크플로도 만들 수 있다. 생성된 워크플로는 .github/workflows
디렉토리 이하에 위치.실습 과정
Github Actions
동작 → 워크플로가 완료되어 S3 버킷
에 빌드한 결과물
이 전송됨S3 버킷에 저장된 빌드 결과물
을 CodeDeploy
를 통해 EC2
로 전달