EB CLI와 Git 사용 - AWS Elastic Beanstalk

EB CLI와 Git 사용

EB CLI는 Git과 통합됩니다. 이 단원에서는 Git을 EB CLI와 함께 사용하는 방법을 간략히 살펴봅니다.

Git을 설치하고 Git 리포지토리를 시작하려면

  1. http://git-scm.com으로 이동하여 최신 Git 버전을 다운로드합니다.

  2. 다음을 입력하여 Git 리포지토리를 시작합니다.

    ~/eb$ git init

    EB CLI가 이제 애플리케이션이 Git으로 설정되었음을 인식합니다.

  3. eb init를 아직 실행하지 않은 경우 지금 실행합니다.

    ~/eb$ eb init

Git 브랜치와 Elastic Beanstalk 환경 연결

다양한 환경을 코드의 각 브랜치와 연결할 수 있습니다. 브랜치를 체크아웃하면 연결된 환경에 변경 사항이 배포됩니다. 예를 들어, 다음을 입력하여 프로덕션 환경을 마스터 브랜치와 연결하고 별도의 배포 환경을 배포 브랜치와 연결할 수 있습니다.

~/eb$ git checkout master ~/eb$ eb use prod ~/eb$ git checkout develop ~/eb$ eb use dev

변경 사항 배포

기본적으로 EB CLI는 커밋 ID와 메시지를 각각 애플리케이션 버전 레이블과 설명으로 사용하여 현재 브랜치에서 최신 커밋을 배포합니다. 커밋하지 않고 환경에 배포하려면 --staged 옵션을 사용하여 스테이징 영역에 추가된 변경 사항을 배포할 수 있습니다.

커밋하지 않고 변경 사항을 배포하려면

  1. 스테이징 영역에 새 파일과 변경된 파일을 추가합니다.

    ~/eb$ git add .
  2. eb deploy를 사용하여 스테이징된 변경 사항을 배포합니다.

    ~/eb$ eb deploy --staged

결과물을 배포하도록 EB CLI를 구성했으나 결과물을 git 리포지토리에 커밋하지 않는 경우, --staged 옵션을 사용하여 최신 빌드를 배포합니다.

Git 하위 모듈 사용

일부 코드 프로젝트에서는 최상위 레벨 리포지토리 내의 리포지토리인 Git 하위 모듈을 사용할 경우 이점을 얻을 수 있습니다. eb create 또는 eb deploy를 사용하여 코드를 배포하면 EB CLI는 하위 모듈을 애플리케이션 버전 zip 파일에 포함시킨 다음 해당 하위 모듈을 나머지 코드와 함께 업로드할 수 있습니다.

프로젝트 폴더에 있는 EB CLI 구성 파일 include_git_submodulesglobal 섹션에서 .elasticbeanstalk/config.yml 옵션을 사용하여 하위 모듈의 포함을 제어할 수 있습니다.

하위 모듈을 포함시키려면 이 옵션을 true로 설정합니다.

global: include_git_submodules: true

include_git_submodules 옵션이 누락되거나 false로 설정되면 EB CLI는 업로드된 zip 파일에 하위 모듈을 포함시키지 않습니다.

Git 하위 모듈에 대한 추가 세부 정보는 Git 도구 - 하위 모듈을 참조하십시오.

기본 동작

eb init를 실행하여 프로젝트를 구성하면 EB CLI는 include_git_submodules 옵션을 추가하고 이 옵션을 true로 설정합니다. 그러면 프로젝트에 있는 모든 하위 모듈이 배포에 포함됩니다.

EB CLI가 항상 하위 모듈 포함을 지원하는 것은 아닙니다. 하위 모듈 지원을 추가하기 전에 있었던 프로젝트에 대한 우발적이고 불필요한 변경을 방지하기 위해 EB CLI는 include_git_submodules 옵션이 누락된 경우 하위 모듈을 포함시키지 않습니다. 이러한 기존 프로젝트 중 하나가 있고 하위 모듈을 배포에 포함시키려는 경우 이 단원의 설명에 따라 옵션을 추가한 다음 해당 옵션을 true로 설정합니다.

CodeCommit 동작

CodeCommit과 Elastic Beanstalk의 통합은 현재 하위 모듈을 지원하지 않습니다. CodeCommit과 통합할 수 있도록 환경을 설정한 경우 하위 모듈은 배포에 포함되지 않습니다.

애플리케이션 버전에 Git 태그 할당

Git 태그를 버전 레이블로 사용하여 환경에서 실행 중인 애플리케이션 버전을 확인할 수 있습니다. 예를 들어 다음을 입력합니다.

~/eb$ git tag -a v1.0 -m "My version 1.0"