CodeBuild
- 소스 코드를 컴파일하는 단계부터 테스트 실행 후 소프트웨어 패키지를 개발하여 배포하는 단계까지 마칠 수 있는 완전 관리형 지속적인 통합 서비스
- CodeBuild를 사용하면 자체 빌드 서버를 프로비저닝, 관리 및 확장할 필요가 없음
- CodeBuild는 지속적으로 확장되며 여러 빌드를 동시에 처리하기 때문에 빌드가 대기열에서 대기하지 않고 바로 처리
- 지정된 위치에서 소스코드를 가져와 Build & Test 수행
아키텍처
1. Build project는 CodeBuild에서 빌드를 실행하는 방식을 정의하는데 여기에는 소스 코드를 가져올 위치, 사용할 빌드 환경, 실행할 빌드 명령 및 빌드 출력을 저장할 위치 등의 정보가 포함된다. (빌드 환경은 운영체제, 프로그래밍 언어 실행 시간 및 CodeBuild에서 빌드를 실행하는데 사용되는 도구의 조합을 나타냄)
2. CodeBuild가 Build project를 사용하여 빌드 환경을 생성
3. CodeBuild가 빌드 환경에 소스 코드를 다운로드한 다음 Build project에 정의된 대로 또는 소스 코드에 직접 포함된 빌드 사양을 사용 (빌드 사양은 CodeBuild가 빌드를 실행하는데 사용하는 YAML 형식의 빌드 명령 및 관련 설정 모음)
4. 빌드 출력이 없으면 빌드 환경에서 출력을 S3 Bucket에 업로드 (빌드 환경은 사용자가 빌드 사양에 지정한 작업을 수행할 수 있음)
5. 빌드가 실행되는 동안 빌드 환경이 정보를 CodeBuild 및 CloudWatch Logs에 전송
6. 빌드가 실행되는 동안 CodeBuild Console, AWS CLI 또는 AWS SDK를 사용하여 CodeBuild에서는 요약된 빌드 정보를 가져옴 (CloudWatch Logs에서는 자세한 빌드 정보를 가져올 수 있지만 CodePipeline을 사용하여 빌드를 실행하는 경우에는 CodePipeline에서 제한된 빌드 정보만 가져옴)
참조 URL
https://jojoldu.tistory.com/282
https://docs.aws.amazon.com/ko_kr/codebuild/latest/userguide/welcome.html
https://luckyyowu.tistory.com/367
https://docs.aws.amazon.com/ko_kr/codebuild/latest/userguide/build-spec-ref.html
'AWS' 카테고리의 다른 글
AWS CloudFormation (0) | 2019.04.09 |
---|---|
AWS Resource Group (0) | 2019.04.09 |
AWS CodeCommit (0) | 2019.04.09 |
AWS CodePipeline (0) | 2019.04.09 |
AWS Auto Scaling (0) | 2019.03.08 |