Source

Create Repository

코드를 저장할 CodeCommit 원격 저장소를 생성합니다.

AWS 관리 콘솔 접속

서비스 선택

CodeCommit 선택

Create Repository 선택

Repository name - DemoApp 입력

Create 선택

Clone URL 선택

Clone HTTPS 선택

Seed Repository

개발 환경에 CodeCommit 원격 저장소 정보를 저장하고, 개발한 어플리케이션을 원격 저장소에 반영합니다.

Git Clone - 복사한 URL 입력

cd ~/environment
git clone <your repository URL>

# Expected Output
Cloning into 'DemoApp'...
warning: You appear to have cloned an empty repository.

Demo Java App 다운로드

curl -s https://aws-ci-cd.workshop.aws/30-source/DemoApp.tgz | tar -xzv
cd DemoApp

Git 사용자 정보 입력

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

테스트 목적으로 진행한다면 해당 내용을 꼭 바꿀 필요는 없습니다.

CodeCommit에서 생성한 저장소로 변경 사항 동기화

git add .
git commit -m "Initial commit"
git push

Build

Create Build Project

서비스 선택

CodeBuild 선택

create build project 선택

Project name - DemoApp 입력

Source provider - AWS CodeCommit 선택

Repository - DemoApp 선택

Reference type - Branch 선택

Branch - master 입력

Environment image Managed image 선택

Operating system Ubuntu 선택

Runtime Standard 선택

Image aws/codebuild/standard:4.0 선택

Image version Always use the latest image for this runtime version 선택

Environment type Linux 선택

Service role Existing service role 선택

Role ARN infrastructureStack 선택

Allow AWS CodeBuild to modify 체크

Build specifications Use a buildspec file 선택

Type Amazon S3 선택

Bucket name infrastructurestack 선택

Name WebAppOutputArtifact.zip 입력

Artifacts packaging Zip 선택

모두 올바르게 선택한 다음 create build project를 선택하세요.

Add Build Specification

buildspec.yml 파일 생성

cat <<EOT >> ~/environment/DemoApp/buildspec.yml

이 명령어를 입력한 다음 아래 내용을 그대로 붙여넣어주세요.

version: 0.2

phases:
  install:
    runtime-versions:
      java: corretto8
  build:
    commands:
      - mvn install
artifacts:
  files:
    - target/javawebdemo.war
    - appspec.yml
    - scripts/**/*
  discard-paths: no
EOT

정상적으로 파일이 생성됐는지 확인하세요.

CodeCommit 원격 저장소에 변경된 사항 반영

cd ~/environment/DemoApp
git add .
git commit -m "Add buildspec"
git push
VERIFY BUILD

AWS 관리 콘솔 접속

서비스 선택

CodeBuild 선택

Build Project - DemoApp 선택

Start Build 선택

Status - Succeeded 변경 확인