• AWS CodeBuild
    • '빌드' 및 '테스트'를 자동화 하는 서비스
    • 소스
      • S3, GitHub, CodeCommit 등등 선택가능
    • 환경
      • 제공하는 DockerImage를 사용하거나, 직접 특정 DockerImage를 지정하거나... 
      • (빌드과정에서, 도커 이미지를 빌드하거나~ 관련 권한의 승격이 필요하면~ 해당 옵션 체크!!!)
      • IAM의 Role을 지정하고, 필요한 권한을 부여해야함. (예를들면... ECR푸쉬 , S3읽/쓰 등등에 권한)
    • Buildspec
      • 보통 buildspec.yaml 파일을 소스코드에 위치한다. 지원하는 스펙에 맞게, 잘... 작성하면 됨... 
      • env : ...
      • phase/install : ...
      • phase/pre_build : ...
      • phase/build : ...
      • phase/post_build : ...
      • artifacts : ...
      • 예1) 
      • version: 0.2
        
        phases:
          pre_build:
            commands:
              - echo Logging in to Amazon ECR...
              - $(aws ecr get-login --no-include-email --region $AWS_DEFAULT_REGION)
              - COMMIT_HASH=$(echo $CODEBUILD_RESOLVED_SOURCE_VERSION | cut -c 1-8)
              - IMAGE_TAG=${COMMIT_HASH:=latest}
          build:
            commands:
              - echo Build started on `date`
              - docker build -t $IMAGE_REPO_NAME:latest .
              - docker tag $IMAGE_REPO_NAME:latest $ACCOUNT_ID.dkr.ecr.ap-northeast-2.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
          post_build:
            commands:
              - echo Build completed on `date`
              - docker push $ACCOUNT_ID.dkr.ecr.ap-northeast-2.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
      • 예2)
      • version: 0.2
        phases:
          install:
            runtime-versions:
              python: 3.7
          pre_build:
            commands:
              - echo Pre-Build on `date`
          build:
            commands:
              - echo Build:sam-build on `date`
              - sam build --use-container
              - echo Build:sam-package on `date`
              - sam package --template-file .aws-sam/build/template.yaml --output-template-file packaged.yaml --s3-bucket 버킷
          post_build:
            commands:
              - echo Post-Build on `date`
        artifacts:
          files:
            - template.yaml
            - packaged.yaml
      • ...
    • 아티팩트
      • 빌드 결과물이 있다면, S3으로 떨굴수있다.
    • 로그 : ...
    • ...

-끝-

'AWS' 카테고리의 다른 글

Amazon Kinesis Data Streams  (0) 2020.10.18
AWS CodeDepoly  (0) 2020.08.29
Amazon EKS  (0) 2020.07.16
Amazon SageMaker Studio  (0) 2020.07.16
AWS Serverless Application Repository  (0) 2020.06.29

+ Recent posts