본문 바로가기
AWS/script

[AWS] appspec.yml

by onda.cloud 2022. 6. 4.
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

댓글