728x90
Appspec.yml을 통하여 배포 파이프라인이 EC2에서 실행된다.
각 단계에서 script를 정의하고 있으며
레포지토리의 소스 /scripts/ 이하 경로에 sh형식의 script를 위치시켜 CodeDeploy가 각 Stage에 맞추어 실행할 수 있게끔 한다.
version: 0.0
os: linux
files:
- source: /
destination: /var/www/html/WordPress
hooks:
BeforeInstall:
- location: scripts/install_dependencies.sh
timeout: 300
runas: root
AfterInstall:
- location: scripts/change_permissions.sh
timeout: 300
runas: root
ApplicationStart:
- location: scripts/start_server.sh
- location: scripts/create_test_db.sh
timeout: 300
runas: root
ApplicationStop:
- location: scripts/stop_server.sh
timeout: 300
runas: root
Hooks가 실행되는 순서는 다음과 같다.
In-place deployments의 경우 Event들은 다음과 같이 LifeCycle이 수행된다. 이는 CodeDeploy가 이미 정해놓은 순서이다. 아래의 그림들에서 짙은 회색은 이미 콘솔에서 결정이 난 부분이기 때문에 스크립팅할 수 없다.
하늘색 부분을 위해 Hook이 있는 것이다.
In-place deployments 의 경우
ECS 의 경우
Lambda Function
'IaaS > 퍼블릭클라우드' 카테고리의 다른 글
(AWS) CodePipeline 이란? (0) | 2022.01.10 |
---|---|
(AWS) Code Deploy 대상의 다양한 타입들 (0) | 2022.01.07 |
(AWS) CodeDeploy 란? (0) | 2022.01.07 |
(AWS) CodeBuild 란? (0) | 2021.12.30 |
(AWS) CodeCommit 의 개발보안향상 및 Amazon-SNS 설정 (0) | 2021.12.28 |