AWS의 CI/CD 환경 제작 예
본문 묘사의 범위
서비스 구성
프로세스 처리
기본적인 생각
해당되는 서비스
개요
촉발
Amazon EventBridge, CodeCommit
CodeCommiit의 변화는 CloudWatch Event로 발표되기 때문에, 대상 이벤트가 발생할 때 처리를 시작합니다.
구축
CodeBuild, CodeCommit
CodeCommiit의 특정 창고·특정 지점에서 소스를 추출하여 구축에 사용할 docker 이미지를 만들고 구축 처리를 수행합니다
프로그램 설계
CodeBuild, S3
Docker 이미지의 구축 결과물(정적 내용)을 S3 섹션에 구성
구축 설계 단계
설계 대상 S3 구간 작성
buildspec.yml 만들기
version: 0.2
phases:
install:
runtime-versions:
nodejs: 14
pre_build:
commands:
- echo NPMパッケージをインストールします
- npm i
finally:
- echo インストールが完了しました
build:
commands:
- echo ビルドを開始します
- npm run build
finally:
- echo ビルドが終了しました
post_build:
commands:
- echo AWS S3にデプロイします
artifacts:
files:
- 'dist/*'
discard-paths: yes
CodeBuild 프로젝트 만들기
프로젝트 이름
컨텐트
프로젝트 설정
프로젝트 이름
구현된 CI/CD 스트림의 적절한 이름 지정(창고 이름 + 분기 이름 등)
출처
소스 공급자
공용 관계 선택
출처
창고.
구축할 원본이 있는 창고를 선택하십시오
출처
분기
구성할 브랜치 선택
컨디션
환경 이미지
특별한 일만 하지 않고'관리형 이미지'만 하면 된다.
컨디션
운영 체제
언어 런타임 버전별로 지원되는 OS 런타임이 다르므로 확인한 후 선택https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html
가짜 그림자
타입
Amazon S3 선택
가짜 그림자
통 이름
Design Target S3 제작에서 제작된 S3 구간을 지정합니다.
EventBridge를 통해 트리거 생성
프로젝트 이름
컨텐트
이름 및 설명
이름:
알기 쉬운 명확한 이름을 짓다
정의 모드
-
이벤트 모드 를 선택합니다.
정의 모드
이벤트 일치 모드
"각 서비스에 대해 미리 정의된 모델"을 선택합니다.
정의 모드
서비스 공급자
AWS 선택
정의 모드
서비스 이름
"CodeCommit"선택
정의 모드
이벤트 유형
이번에는 결합 트리거의 예를 들어 "CodeCommiit Pull Request State Chage"를 선택합니다.
{
"source": [
"aws.codecommit"
],
"detail-type": [
"CodeCommit Pull Request State Change"
],
"detail": {
"isMerged": [
"True"
],
"repositoryNames": [
"リポジトリ名"
],
"destinationReference": [
"refs/heads/develop"
]
}
}
프로젝트 이름
컨텐트
대상 선택
목표
CodeBuild 항목 선택
대상 선택
프로젝트 ARN
CodeBuild 페이지에서 만든 항목을 열고 ARN을 복사하여 붙여넣기(구축 상세 정보 → 프로젝트 ARN)
상당히 대략적인 설정 방법으로 죄송하지만 하나의 예로 참고하면 될 것 같습니다.감사합니다.
Reference
이 문제에 관하여(AWS의 CI/CD 환경 제작 예), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/asazutaiga/articles/aws-ci-cd-sample텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)