appspec.yml 정의
codedepoly에게 어떤 작업을 수행하도록 쓰여진 스크립트 파일입니다
형식은 YAML 또는 JSON 형식으로 되어있는 스크립트 파일입니다
appspec.yml 파일 형식

appspec.yml 실행 순서

※ 위 그림에서 Start, DownloadBundle, Install, End는 스크립트에서 처리되는 순서중 사용되는 필요한 구관입니다
appspec.yml 이벤트 설명
BeforeInstall
파일 암호 해독 및 현재 버전 백업 만들기 등 사전 설치 작업을 수행합니다
AfterInstall
애플리케이션 구성 또는 파일 권한 변경 등의 작업을 수행합니다
ApplicationStart
애플리케이션의 시작 및 로드밸런스 등록 작업 수행 또는 서버 시작 작업을 수행합니다
ApplicationStop
애플리케이션의 종료 및 설치된 패키지 제거 작업 수행 및 로드밸런스 등록 및 제거 및 서버 중지 작업을 수행합니다
ValidateService
배포가 성공적으로 완료되었나 확인하는데 사용합니다
appspec.yml 각 섹션 설명
version

version
appspec에 관한 지원버전을 나타냅니다.
os
운영체제를 나타냅니다.
files

files
실행시키기 위해서 필요한 소스 파일 및 경로를 나타냅니다
source
appspec.yml 스크립트에서 사용될 파일 소스를 의미합니다
- /(root diretory), app.py 등
destination
appspec.yml 스크립트에서 사용될 경로를 입력합니다
- /home/ec2-user/등
hooks

hooks
CodeDeploy 배포 단계에서 실행할 명령어를 지정합니다
deployment-lifecycle-event-namme (필수)
배포 수명주기에 따른 이벤트 이름을 작성합니다
- BeforeInstall, AfterInstall, ApplicationStart, ApplicationStop, ValidateService 등
location (필수)
스크립트 위치를 의미합니다
(Application root를 기준으로 합니다)
- ex) script/deployment-lifecycle-event-name
timeout (선택)
각 배포 수명 주기 이벤트에 대한 스크립트 실행에 허용되는 최대 시간을 의미합니다
- 기본 값 : 3,600초(1시간)
runas (선택)
기본적으로 인스턴스에서 실행 중인 CodeDeploy agent입니다
- codedeploy agent를 변경하지 않으면 기본 값은 root입니다
(CodeDeploy agent 상태확인 명령어 : sudo systemctl status codedeploy-agent.service)
'AWS > script' 카테고리의 다른 글
| [AWS] buildspec.yml (0) | 2022.05.29 |
|---|
댓글