튜토리얼: 모던 3계층 웹 애플리케이션 블루프린트로 프로젝트 생성 - 아마존 CodeCatalyst

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

튜토리얼: 모던 3계층 웹 애플리케이션 블루프린트로 프로젝트 생성

블루프린트가 포함된 프로젝트를 생성하여 소프트웨어 개발을 더 빠르게 시작할 수 있습니다. 블루프린트로 만든 프로젝트에는 코드를 관리하는 소스 리포지토리, 애플리케이션을 빌드하고 배포하기 위한 워크플로우 등 필요한 리소스가 포함되어 있습니다. 이 자습서에서는 Modern 3계층 웹 애플리케이션 블루프린트를 사용하여 Amazon에서 프로젝트를 생성하는 방법을 안내합니다. CodeCatalyst 이 자습서에는 배포된 샘플을 보고, 다른 사용자를 초대하여 작업하도록 하고, pull 요청이 병합될 AWS 계정 때 자동으로 빌드되어 연결된 리소스에 배포되는 pull 요청을 사용하여 코드를 변경하는 작업도 포함됩니다. 보고서, 활동 피드, 기타 도구를 사용하여 프로젝트를 생성하는 경우, 블루프린트는 AWS 계정 프로젝트와 관련된 AWS 리소스를 생성합니다. CodeCatalyst 블루프린트 파일을 사용하면 샘플 최신 애플리케이션을 빌드 및 테스트하고 의 인프라에 배포할 수 있습니다. AWS 클라우드

다음 그림은 의 CodeCatalyst 도구를 사용하여 이슈를 생성하여 변경 사항을 추적하고 병합하고 자동으로 빌드한 다음 인프라를 AWS CDK 허용하고 AWS CloudFormation 프로비저닝하는 작업을 실행하는 CodeCatalyst 프로젝트에서 워크플로를 시작하는 방법을 보여줍니다.

작업은 연결된 AWS 계정 리소스에서 리소스를 생성하고 API Gateway 엔드포인트가 있는 서버리스 AWS Lambda함수에 애플리케이션을 배포합니다. AWS Cloud Development Kit (AWS CDK) 작업은 하나 이상의 스택을 템플릿으로 변환하고 AWS CDK 스택을 AWS CloudFormation 템플릿에 배포합니다. AWS 계정스택의 리소스에는 동적 웹 콘텐츠를 배포하기 위한 Amazon CloudFront 리소스, 애플리케이션 데이터를 위한 Amazon DynamoDB 인스턴스, 배포된 애플리케이션을 지원하는 역할 및 정책이 포함됩니다.

이슈 생성부터 소스 리포지토리 변경에 이르는 코드 변경은 자동으로 구축되어 내부 리소스에 배포됩니다. AWS

모던 3계층 웹 애플리케이션 블루프린트로 프로젝트를 만들면 다음 리소스가 포함된 프로젝트가 생성됩니다.

프로젝트에서: CodeCatalyst

  • 샘플 코드와 워크플로 YAML이 있는 소스 리포지토리

  • 기본 브랜치가 변경될 때마다 샘플 코드를 빌드하고 배포하는 워크플로입니다.

  • 작업을 계획하고 추적하는 데 사용할 수 있는 이슈 보드 및 백로그

  • 샘플 코드에 자동 보고서가 포함된 테스트 보고서 세트

관련 항목 AWS 계정:

  • 애플리케이션에 필요한 리소스를 생성하는 세 개의 AWS CloudFormation 스택.

이 자습서에서 AWS 또는 이 자습서의 CodeCatalyst 일부로 생성될 리소스에 대한 자세한 내용은 을 참조하십시오레퍼런스.

참고

프로젝트에 포함되는 리소스와 샘플은 선택한 블루프린트에 따라 달라집니다. CodeCatalyst Amazon은 정의된 언어 또는 프레임워크와 관련된 리소스를 정의하는 여러 프로젝트 청사진을 제공합니다. 블루프린트에 대한 자세한 내용은 을 참조하십시오. CodeCatalyst 청사진이 포함된 포괄적인 프로젝트 만들기

사전 조건 

이 자습서에서 최신 응용 프로그램 프로젝트를 만들려면 다음과 설정 및 로그인 CodeCatalyst 같은 작업을 완료해야 합니다.

1단계: 현대적인 3계층 웹 애플리케이션 프로젝트 만들기

프로젝트를 만든 후에는 코드를 개발 및 테스트하고, 개발 작업을 조정하고, 프로젝트 지표를 확인할 수 있습니다. 프로젝트에는 개발 도구와 리소스도 포함되어 있습니다.

이 자습서에서는 모던 3계층 웹 애플리케이션 블루프린트를 사용하여 대화형 애플리케이션을 만들어 보겠습니다. 프로젝트의 일부로 자동으로 생성되어 실행되는 워크플로우는 애플리케이션을 빌드하고 배포합니다. 워크플로는 스페이스에 대해 모든 역할 및 계정 정보를 구성한 후에만 정상적으로 실행됩니다. 워크플로가 성공적으로 실행되면 엔드포인트 URL로 이동하여 애플리케이션을 볼 수 있습니다.

블루프린트로 프로젝트를 만들려면
  1. https://codecatalyst.aws/ 에서 CodeCatalyst 콘솔을 엽니다.

  2. CodeCatalyst 콘솔에서 프로젝트를 만들려는 스페이스로 이동합니다.

  3. 프로젝트 만들기를 선택합니다.

  4. '블루프린트로 시작하기'를 선택합니다.

  5. 검색 창에 modern를 입력합니다.

  6. 모던 3티어 웹 애플리케이션 블루프린트를 선택한 후 다음을 선택합니다.

  7. 프로젝트 이름에 프로젝트 이름을 입력합니다. 예:

    MyExampleProject.

    참고

    이름은 스페이스에서 고유해야 합니다.

  8. 계정에서 가입 시 추가한 AWS 계정 이름을 선택합니다. 블루프린트는 이 계정에 리소스를 설치합니다.

  9. 배포 역할에서 가입 시 추가한 역할을 선택합니다. 예를 들어 CodeCatalystWorkflowDevelopmentRole-spaceName를 선택합니다.

    목록에 역할이 없는 경우 추가하세요. 역할을 추가하려면 Add IAM role (IAM role) 을 선택하고 역할을 자신의 AWS 계정역할에 추가합니다. 자세한 정보는 연결된 AWS 리소스에 대한 액세스 허용 AWS 계정을 참조하세요.

  10. 컴퓨팅 플랫폼에서 Lambda를 선택합니다.

  11. 프런트엔드 호스팅 옵션에서 Amplify 호스팅을 선택합니다. 에 대한 자세한 내용은 AWS Amplify호스팅이란 AWS Amplify 무엇입니까? 를 참조하십시오. AWS Amplify 사용 설명서에서

  12. 배포 지역에 Mysfits 애플리케이션 및 지원 AWS 리전 리소스를 배포하기 위한 블루프린트를 구축할 지역의 지역 코드를 입력합니다. 지역 코드 목록은 의 지역 엔드포인트를 참조하십시오. AWS 일반 참조

  13. 애플리케이션 이름에서 기본값을 로 유지합니다. mysfitsstring

  14. (선택 사항) 프로젝트 미리 보기 생성에서 코드 보기를 선택하여 블루프린트가 설치할 소스 파일을 미리 봅니다. 워크플로우 보기를 선택하면 블루프린트가 설치할 CI/CD 워크플로 정의 파일을 미리 볼 수 있습니다. 미리보기는 선택에 따라 동적으로 업데이트됩니다.

  15. 프로젝트 만들기를 선택합니다.

프로젝트 워크플로는 프로젝트를 만들자마자 시작됩니다. 코드 빌드 및 배포를 완료하는 데 시간이 조금 걸릴 수 있습니다. 그때까지는 다른 사람을 프로젝트에 초대하세요.

2단계: 프로젝트에 다른 사람 초대하기

이제 프로젝트를 설정했으니 함께 일할 다른 사람을 초대하세요.

프로젝트에 다른 사람 초대하기
  1. 사용자를 초대하려는 프로젝트로 이동합니다.

  2. 탐색 창에서 프로젝트 설정을 선택합니다.

  3. 멤버 탭에서 초대를 선택합니다.

  4. 프로젝트 사용자로 초대하려는 사람들의 이메일 주소를 입력합니다. 이메일 주소를 공백이나 쉼표로 구분하여 여러 개 입력할 수 있습니다. 프로젝트 구성원이 아닌 스페이스 구성원 중에서 선택할 수도 있습니다.

  5. 사용자의 역할을 선택합니다.

    사용자 추가를 마치면 초대를 선택합니다.

3단계: 협업할 이슈 생성 및 작업 진행 상황 추적

CodeCatalyst 기능, 작업, 버그 및 문제가 있는 프로젝트와 관련된 기타 작업을 추적하는 데 도움이 됩니다. 이슈를 생성하여 필요한 작업과 아이디어를 추적할 수 있습니다. 기본적으로 이슈를 생성하면 백로그에 추가됩니다. 진행 중인 작업을 추적할 수 있는 게시판으로 이슈를 옮길 수 있습니다. 특정 프로젝트 멤버에게 이슈를 할당할 수도 있습니다.

프로젝트에 대한 이슈를 만들려면
  1. 탐색 창에서 이슈를 선택합니다.

  2. 이슈 생성을 선택합니다.

  3. 이슈 제목에 이슈의 이름을 입력합니다. 문제에 대한 설명을 제공할 수도 있습니다. 이 예시에서는 다음을 사용합니다. make a change in the src/mysfit_data.json file.

  4. 우선순위, 추정치, 상태, 라벨을 선택합니다. 담당자 아래에서 +Add me를 선택하여 자신에게 문제를 할당하세요.

  5. 이슈 생성을 선택합니다. 이제 게시판에 이슈가 표시됩니다. 카드를 선택하여 이슈를 진행 중 열로 이동합니다.

자세한 정보는 에서 문제가 있는 작업을 추적하고 정리하세요. CodeCatalyst 을 참조하세요.

4단계: 소스 리포지토리 보기

블루프린트는 애플리케이션 또는 서비스를 정의하고 지원하는 파일이 포함된 소스 리포지토리를 설치합니다. 소스 리포지토리에서 주목할 만한 몇 가지 디렉터리 및 파일은 다음과 같습니다.

  • .cloud9 디렉터리 — 개발 환경을 지원하는 파일이 들어 있습니다. AWS Cloud9

  • .codecatalyst 디렉터리 - 블루프린트에 포함된 각 YAML 워크플로우에 대한 워크플로 정의 파일을 포함합니다.

  • .idea 디렉터리 — 개발 환경을 위한 지원 파일이 들어 있습니다. JetBrains

  • .vscode 디렉터리 — 비주얼 스튜디오 코드 개발 환경을 위한 지원 파일이 들어 있습니다.

  • cdkStacks 디렉터리 - 의 인프라를 정의하는 AWS CDK 스택 파일이 들어 있습니다. AWS 클라우드

  • src 디렉터리 - 애플리케이션 소스 코드가 들어 있습니다.

  • 테스트 디렉터리 - 애플리케이션을 빌드하고 테스트할 때 실행되는 자동화된 CI/CD 워크플로의 일부로 실행되는 정수 및 단위 테스트용 파일을 포함합니다.

  • 디렉터리 - 프런트엔드 소스 코드가 들어 있습니다. 다른 파일에는 프로젝트에 대한 중요한 메타데이터가 포함된 package.json 파일, 웹 사이트 index.html 페이지, 린팅 코드용 파일, 루트 .eslintrc.cjs 파일 및 컴파일러 옵션을 지정하는 tsconfig.json 파일 등의 프로젝트 파일이 포함됩니다.

  • Dockerfile파일 — 애플리케이션의 컨테이너를 설명합니다.

  • README.md파일 — 프로젝트의 구성 정보가 들어 있습니다.

프로젝트의 소스 리포지토리로 이동하려면
  1. 프로젝트로 이동하여 다음 중 하나를 수행하십시오.

    • 프로젝트 요약 페이지의 목록에서 원하는 리포지토리를 선택한 다음 리포지토리 보기를 선택합니다.

    • 탐색 창에서 코드를 선택한 다음 소스 리포지토리를 선택합니다. 소스 리포지토리의 목록에서 리포지토리 이름을 선택합니다. 필터 막대에 리포지토리 이름의 일부를 입력하여 리포지토리 목록을 필터링할 수 있습니다.

  2. 리포지토리 홈 페이지에서 리포지토리의 콘텐츠와 관련 리소스에 대한 정보 (예: pull request 및 워크플로 수) 를 볼 수 있습니다. 기본적으로 기본 브랜치의 콘텐츠가 표시됩니다. 드롭다운 목록에서 다른 브랜치를 선택하여 보기를 변경할 수 있습니다.

5단계: 테스트 브랜치가 포함된 개발 환경 생성 및 빠른 코드 변경

개발 환경을 만들어 소스 리포지토리의 코드를 빠르게 작업할 수 있습니다. 이 자습서에서는 다음을 수행한다고 가정합니다.

  • AWS Cloud9 개발 환경 만들기.

  • 개발 환경을 만들 때 메인 브랜치 외부의 새 브랜치에서 작업하기 위한 옵션을 선택하세요.

  • 이 새 브랜치의 이름을 test 사용하세요.

이후 단계에서는 개발 환경을 사용하여 코드를 변경하고 풀 리퀘스트를 생성할 것입니다.

새 브랜치를 사용하여 개발 환경을 만들려면
  1. https://codecatalyst.aws/ 에서 CodeCatalyst 콘솔을 엽니다.

  2. 개발 환경을 생성하려는 스페이스로 이동합니다.

  3. 프로젝트의 소스 리포지토리 목록에서 리포지토리 이름을 선택합니다. 또는 탐색 창에서 코드를 선택하고 소스 리포지토리를 선택한 다음 개발 환경을 만들려는 리포지토리를 선택합니다.

  4. 리포지토리 홈 페이지에서 개발 환경 생성을 선택합니다.

  5. 드롭다운 메뉴에서 지원되는 IDE를 선택합니다. 자세한 정보는 개발 환경을 위해 지원되는 통합 개발 환경을 참조하세요.

  6. 복제할 리포지토리를 선택하고, 새 브랜치에서 작업을 선택하고, 브랜치 이름 필드에 브랜치 이름을 입력하고, 다음에서 브랜치 생성 드롭다운 메뉴에서 새 브랜치를 만들 브랜치를 선택합니다.

  7. 원하는 경우 개발 환경의 별칭을 추가할 수 있습니다.

  8. 선택적으로 개발 환경 구성 편집 버튼을 선택하여 개발 환경의 컴퓨팅, 스토리지 또는 제한 시간 구성을 편집합니다.

  9. 생성을 선택합니다. 개발 환경이 생성되는 동안 개발 환경 상태 열에 시작 중이 표시되고, 개발 환경이 생성되면 상태 열에 실행 중이 표시됩니다. 선택한 IDE의 개발 환경과 함께 새 탭이 열립니다. 코드를 편집하고 변경 내용을 커밋 및 푸시할 수 있습니다.

이 섹션에서는 pull 요청이 병합될 AWS 계정 때 자동으로 빌드되어 연결된 리소스에 배포되는 pull 요청을 사용하여 코드를 변경하는 방식으로 생성된 샘플 애플리케이션을 사용하여 CodeCatalyst 작업해 봅니다.

파일을 변경하려면 src/mysfit_data.json
  1. 프로젝트 개발 환경으로 이동합니다. 에서 AWS Cloud9측면 탐색 메뉴를 확장하여 파일을 찾아보십시오. 펼치고 mysfitssrc, 엽니다src/mysfit_data.json.

  2. 파일에서 "Age": 필드 값을 6에서 12로 변경합니다. 줄은 다음과 같아야 합니다.

    { "Age": 12, "Description": "Twilight's personality sparkles like the night sky and is looking for a forever home with a Greek hero or God. While on the smaller side at 14 hands, he is quite adept at accepting riders and can fly to 15,000 feet. Twilight needs a large area to run around in and will need to be registered with the FAA if you plan to fly him above 500 feet. His favorite activities include playing with chimeras, going on epic adventures into battle, and playing with a large inflatable ball around the paddock. If you bring him home, he'll quickly become your favorite little Pegasus.", "GoodEvil": "Good", "LawChaos": "Lawful", "Name": "Twilight Glitter", "ProfileImageUri": "https://www.mythicalmysfits.com/images/pegasus_hover.png", "Species": "Pegasus", "ThumbImageUri": "https://www.mythicalmysfits.com/images/pegasus_thumb.png" },
  3. 파일을 저장합니다.

  4. 명령을 사용하여 mysfits 저장소로 변경합니다. cd /projects/mysfits

  5. git add, git commit, git push 명령을 사용하여 변경 내용을 추가하고 커밋하고 푸시할 수 있습니다.

    git add . git commit -m "make an example change" git push

6단계: 최신 애플리케이션을 빌드하는 워크플로우 보기

최신 애플리케이션 프로젝트를 만든 후 워크플로를 포함하여 사용자를 대신하여 여러 리소스를 CodeCatalyst 생성합니다. 워크플로는.yaml 파일에 정의된 자동화된 프로시저로, 코드를 빌드, 테스트 및 배포하는 방법을 설명합니다.

이 자습서에서는 워크플로를 CodeCatalyst 만들고 프로젝트를 만들 때 워크플로를 자동으로 시작했습니다. (프로젝트를 만든 지 얼마나 되었는지에 따라 워크플로가 계속 실행 중일 수 있습니다.) 다음 절차를 사용하여 워크플로의 진행 상황을 확인하고, 생성된 로그와 테스트 보고서를 검토하고, 마지막으로 배포된 응용 프로그램의 URL을 탐색하십시오.

워크플로우 진행 상황을 확인하려면
  1. CodeCatalyst 콘솔의 탐색 창에서 CI/CD를 선택한 다음 워크플로를 선택합니다.

    워크플로 목록이 나타납니다. 다음은 프로젝트를 만들 때 CodeCatalyst 블루프린트가 생성하고 시작한 워크플로입니다.

  2. 워크플로 목록을 살펴보세요. 다음 네 가지가 보일 것입니다.

    • 맨 위에 있는 두 개의 워크플로는 이전에 만든 test 브랜치에 해당합니다5단계: 테스트 브랜치가 포함된 개발 환경 생성 및 빠른 코드 변경. 이러한 워크플로는 main 브랜치의 워크플로를 복제합니다. ApplicationDeploymentPipelinemain 브랜치와 함께 사용하도록 구성되었으므로 활성화되지 않습니다. 풀 리퀘스트가 이루어지지 않아 OnPullRequest워크플로가 실행되지 않았습니다.

    • 맨 아래에 있는 두 개의 워크플로는 앞서 블루프린트를 실행할 때 만든 main 브랜치에 해당합니다. ApplicationDeploymentPipeline워크플로가 활성 상태이고 실행 중 (또는 완료) 상태입니다.

      참고

      Build @cdk_bootstrap 또는 DeployBackend오류와 함께 ApplicationDeploymentPipeline실행이 실패한다면, 이전에 모던 3계층 웹 애플리케이션을 실행했는데 기존 리소스가 남아 있어 현재 블루프린트와 충돌하기 때문일 수 있습니다. 이러한 이전 리소스를 삭제한 다음 워크플로를 다시 실행해야 합니다. 자세한 정보는 리소스 정리을 참조하세요.

  3. 하단에서 main 브랜치와 관련된 ApplicationDeploymentPipeline워크플로를 선택합니다. 이 워크플로는 main 브랜치의 소스 코드를 사용하여 실행되었습니다.

    워크플로 다이어그램이 나타납니다. 다이어그램에는 각각 작업 또는 작업을 나타내는 여러 블록이 나와 있습니다. 대부분의 액션은 세로로 정렬되며 맨 위에 있는 액션이 아래 액션보다 먼저 정렬됩니다. 나란히 정렬된 액션은 병렬로 실행됩니다. 함께 그룹화된 액션이 모두 성공적으로 실행되어야 아래 액션을 시작할 수 있습니다.

    기본 블록은 다음과 같습니다.

    • WorkflowSource— 이 블록은 소스 리포지토리를 나타냅니다. 여기에는 다른 정보 중에서도 소스 리포지토리 이름 (mysfits) 과 워크플로우 실행을 자동으로 시작한 커밋이 표시됩니다. CodeCatalyst 프로젝트를 만들 때 이 커밋을 생성했습니다.

    • 빌드 — 이 블록은 다음 액션을 시작하려면 둘 다 성공적으로 완료해야 하는 두 액션을 그룹화한 것입니다.

    • DeployBackend— 이 블록은 애플리케이션의 백엔드 구성 요소를 클라우드에 배포하는 작업을 나타냅니다. AWS

    • 테스트 - 이 블록은 다음 작업을 시작하려면 둘 다 성공적으로 완료해야 하는 두 테스트 작업을 그룹화한 것입니다.

    • DeployFrontend— 이 블록은 애플리케이션의 프론트엔드 구성 요소를 클라우드에 배포하는 작업을 나타냅니다. AWS

  4. 정의 탭 (상단 근처) 을 선택합니다. 워크플로우 정의 파일이 오른쪽에 나타납니다. 이 파일에는 다음과 같은 주목할 만한 섹션이 있습니다.

    • 맨 위에 있는 Triggers 섹션. 이 섹션은 코드가 소스 리포지토리의 main 브랜치에 푸시될 때마다 워크플로를 시작해야 함을 나타냅니다. 다른 브랜치 (예:test) 로 푸시해도 이 워크플로우는 시작되지 않습니다. 워크플로는 main 브랜치에 있는 파일을 사용하여 실행됩니다.

    • Actions섹션, 아래Triggers. 이 섹션에서는 워크플로 다이어그램에 표시되는 작업을 정의합니다.

  5. 상단 근처의 최신 상태 탭을 선택하고 워크플로 다이어그램에서 원하는 작업을 선택합니다.

  6. 오른쪽에서 구성 탭을 선택하면 최근 실행 중에 작업에 사용된 구성 설정을 볼 수 있습니다. 각 구성 설정에는 워크플로 정의 파일에 일치하는 속성이 있습니다.

  7. 콘솔을 열어 두고 다음 절차로 이동합니다.

빌드 로그와 테스트 보고서를 검토하려면
  1. 최신 상태 탭을 선택합니다.

  2. 워크플로 다이어그램에서 DeployFrontend작업을 선택합니다.

  3. 작업이 완료될 때까지 기다리십시오. “진행 중” 아이콘 ( Workflow in progress. ) 이 “성공” 아이콘 ( Workflow success. ) 으로 바뀌는지 확인하십시오.

  4. build_backend 작업을 선택합니다.

  5. Logs 탭을 선택하고 두 개의 섹션을 펼쳐 이 단계에 대한 로그 메시지를 확인하세요. 백엔드 설정과 관련된 메시지를 볼 수 있습니다.

  6. 보고서 탭을 선택한 다음 backend-coverage.xml 보고서를 선택합니다. CodeCatalyst 관련 보고서를 표시합니다. 보고서에는 실행된 코드 커버리지 테스트가 표시되며 테스트를 통해 성공적으로 검증된 코드 행의 비율 (예: 80%) 이 표시됩니다.

    테스트 보고서에 대한 자세한 내용은 을 참조하십시오. 워크플로를 사용한 테스트

    작은 정보

    탐색 창에서 보고서를 선택하여 테스트 보고서를 볼 수도 있습니다.

  7. CodeCatalyst 콘솔을 열어 두고 다음 절차로 이동합니다.

최신 응용 프로그램이 성공적으로 배포되었는지 확인합니다.
  1. ApplicationDeploymentPipeline워크플로로 돌아가서 최근 실행의 Run- string 링크를 선택합니다.

  2. 워크플로 다이어그램에서 DeployFrontend작업을 찾고 앱 보기 링크를 선택합니다. Mysfit 웹 사이트가 표시됩니다.

    참고

    DeployFrontend작업 내에서 앱 보기 링크가 보이지 않는 경우 실행 ID 링크를 선택했는지 확인하세요.

  3. 트와일라잇 글리터라는 이름의 페가수스 마이스핏을 검색해 보세요. 나이의 가치를 기록해 두세요. 맞아요6. 코드를 변경하여 연령을 업데이트해야 합니다.

7단계: 다른 사람에게 변경 내용을 검토해 달라고 요청하세요.

이름이 지정된 test 브랜치에 변경 사항이 생겼으니 풀 리퀘스트를 생성하여 다른 사람에게 검토해 달라고 요청할 수 있습니다. 브랜치의 변경 내용을 test 브랜치에 병합하기 위한 풀 요청을 만들려면 다음 단계를 수행하십시오. main

풀 리퀘스트를 만들려면
  1. 프로젝트로 이동합니다.

  2. 다음 중 하나를 수행하십시오.

    • 탐색 창에서 코드를 선택하고 풀 요청을 선택한 다음 풀 요청 생성을 선택합니다.

    • 리포지토리 홈 페이지에서 추가를 선택한 다음 풀 리퀘스트 생성을 선택합니다.

    • 프로젝트 페이지에서 풀 리퀘스트 생성을 선택합니다.

  3. 소스 리포지토리에서 지정된 소스 리포지토리가 커밋된 코드를 포함하는 리포지토리인지 확인합니다. 이 옵션은 리포지토리의 기본 페이지에서 풀 리퀘스트를 만들지 않은 경우에만 나타납니다.

  4. 대상 브랜치에서 코드를 검토한 후 병합할 브랜치를 선택합니다.

  5. 소스 브랜치에서 커밋된 코드가 들어 있는 브랜치를 선택합니다.

  6. 풀 리퀘스트 제목에 다른 사용자가 검토해야 할 내용과 이유를 이해하는 데 도움이 되는 제목을 입력합니다.

  7. (선택 사항) 풀 요청 설명에 문제 링크 또는 변경 내용 설명과 같은 정보를 입력합니다.

    작은 정보

    Pull Request에 포함된 변경 사항에 대한 설명을 CodeCatalyst 자동으로 생성하도록 나를 위한 설명 쓰기를 선택할 수 있습니다. 자동으로 생성된 설명을 풀 리퀘스트에 추가한 후 변경할 수 있습니다.

    이 기능을 사용하려면 스페이스에 대해 제너레이티브 AI 기능을 활성화해야 하며 연결된 리포지토리의 풀 요청에는 사용할 수 없습니다. 자세한 내용은 제너레이티브 AI 기능 관리를 참조하십시오.

  8. (선택 사항) 이슈에서 이슈 연결을 선택한 다음 목록에서 이슈를 선택하거나 해당 ID를 입력합니다. 이슈의 연결을 해제하려면 연결 해제 아이콘을 선택합니다.

  9. (선택 사항) 필수 검토자에서 필수 검토자 추가를 선택합니다. 프로젝트 멤버 목록에서 선택하여 추가합니다. 풀 리퀘스트를 대상 브랜치에 병합하려면 먼저 필수 검토자가 변경 사항을 승인해야 합니다.

    참고

    검토자를 필수 검토자와 선택적 검토자로 모두 추가할 수는 없습니다. 자신을 리뷰어로 추가할 수 없습니다.

  10. (선택 사항) 선택적 검토자에서 선택적 검토자 추가를 선택합니다. 프로젝트 멤버 목록에서 선택하여 추가합니다. 선택적 검토자는 풀 리퀘스트를 대상 브랜치에 병합하기 전에 변경 사항을 요구 사항으로 승인할 필요가 없습니다.

  11. 브랜치 간의 차이점을 검토하세요. 풀 리퀘스트에 표시되는 차이는 소스 브랜치의 수정 버전과 풀 리퀘스트가 생성된 시점의 대상 브랜치의 헤드 커밋인 병합 베이스 사이의 변경 내용입니다. 변경 사항이 표시되지 않으면 브랜치가 동일하거나 소스와 대상 모두에 대해 동일한 브랜치를 선택했을 수 있습니다.

  12. 풀 리퀘스트에 검토하려는 코드와 변경 사항이 포함되어 있다고 판단되면 [Create] 를 선택합니다.

    참고

    풀 리퀘스트를 생성한 후 코멘트를 추가할 수 있습니다. 풀 리퀘스트나 파일의 개별 라인, 전체 풀 리퀘스트에 댓글을 추가할 수 있습니다. @ 기호 뒤에 파일 이름을 붙여 파일 등의 리소스에 링크를 추가할 수 있습니다.

풀 리퀘스트를 만들면 test 브랜치의 소스 파일을 사용하여 OnPullRequest워크플로가 시작됩니다. 검토자가 코드 변경을 승인하는 동안 워크플로를 선택하고 테스트 결과를 보면 결과를 확인할 수 있습니다.

변경 사항을 검토한 후 코드를 병합할 수 있습니다. 코드를 기본 브랜치에 병합하면 변경 내용을 빌드하고 배포하는 워크플로가 자동으로 시작됩니다.

콘솔에서 풀 리퀘스트를 병합하려면 CodeCatalyst
  1. 최신 애플리케이션 프로젝트로 이동하세요.

  2. 프로젝트 페이지의 오픈 풀 리퀘스트에서 병합하려는 풀 리퀘스트를 선택합니다. 풀 리퀘스트가 보이지 않는 경우 모두 보기를 선택한 다음 목록에서 선택하십시오. 병합을 선택합니다.

  3. 풀 리퀘스트에 사용할 수 있는 병합 전략 중에서 선택하십시오. 선택적으로 풀 리퀘스트를 병합한 후 소스 브랜치를 삭제하는 옵션을 선택하거나 선택 취소한 다음 병합을 선택합니다.

    참고

    병합 버튼이 활성화되지 않았거나 병합할 없음 레이블이 표시되는 경우, 한 명 이상의 필수 검토자가 아직 풀 요청을 승인하지 않았거나 콘솔에서 풀 요청을 병합할 수 없습니다. CodeCatalyst 풀 리퀘스트를 승인하지 않은 검토자는 풀 리퀘스트 세부 정보 영역의 개요에 있는 시계 아이콘으로 표시됩니다. 필요한 모든 검토자가 풀 요청을 승인했지만 병합 버튼이 여전히 활성화되지 않은 경우 병합 충돌이 발생할 수 있습니다. CodeCatalyst콘솔에서 대상 브랜치의 병합 충돌을 해결한 다음 풀 요청을 병합하거나, 충돌을 해결하고 로컬에서 병합한 다음 병합이 포함된 커밋을 푸시할 CodeCatalyst 수 있습니다. 자세한 내용은 풀 리퀘스트 병합 (Git) 및 Git 설명서를 참조하십시오.

브랜치의 변경 내용을 test 브랜치에 병합하면 변경 내용을 빌드하고 배포하는 ApplicationDeploymentPipeline워크플로가 자동으로 시작됩니다. main

병합된 커밋을 보려면 워크플로를 통해 실행하세요. ApplicationDeploymentPipeline
  1. 탐색 창에서 CI/CD를 선택한 다음 워크플로를 선택합니다.

  2. 워크플로의 에서 ApplicationDeploymentPipeline최근 실행을 확장합니다. 병합 커밋으로 워크플로 실행이 시작된 것을 볼 수 있습니다. 선택적으로 선택하여 실행 진행 상황을 확인할 수도 있습니다.

  3. 실행이 완료되면 이전에 방문한 URL을 다시 로드합니다. 페가수스를 보고 나이가 바뀌었는지 확인하세요.

    코드 변경 사항이 병합, 빌드 및 배포되어 애플리케이션에서 확인할 수 있습니다.

8단계: 이슈 종료

문제가 해결되면 CodeCatalyst 콘솔에서 해당 문제를 종료할 수 있습니다.

프로젝트 이슈를 종료하려면
  1. 프로젝트로 이동합니다.

  2. 탐색 창에서 이슈를 선택합니다.

  3. rag-and-drop 이슈를 완료 열에 추가합니다.

자세한 정보는 에서 문제가 있는 작업을 추적하고 정리하세요. CodeCatalyst 을 참조하세요.

리소스 정리

사용자 환경에서 이 자습서의 흔적을 CodeCatalyst 정리하고 AWS 제거하세요.

이 자습서에서 사용한 프로젝트를 계속 사용하거나 프로젝트 및 관련 리소스를 삭제할 수 있습니다.

참고

이 프로젝트를 삭제하면 프로젝트에 있는 모든 멤버의 모든 리포지토리, 이슈, 아티팩트가 모두 삭제됩니다.

프로젝트를 삭제하려면 다음과 같이 하세요.
  1. 프로젝트로 이동한 다음 프로젝트 설정을 선택합니다.

  2. 일반 탭을 선택합니다.

  3. 프로젝트 이름 아래에서 프로젝트 삭제를 선택합니다.

AWS CloudFormation 및 Amazon S3에서 리소스를 삭제하려면
  1. CodeCatalyst스페이스에 추가한 것과 동일한 AWS Management Console 계정으로 로그인합니다.

  2. AWS CloudFormation서비스로 이동하세요.

  3. mysfits 문자열 스택을 삭제합니다.

  4. 개발-mysfits 문자열 스택을 삭제합니다.

  5. CDKToolkit 스택을 선택하십시오 (삭제하지는 마십시오). 리소스 탭을 선택합니다. StagingBucket링크를 선택하고 Amazon S3에서 버킷과 버킷 콘텐츠를 삭제합니다.

    참고

    이 버킷을 수동으로 삭제하지 않으면 모던 3계층 웹 애플리케이션 블루프린트를 다시 실행할 때 오류가 발생할 수 있습니다.

  6. (선택 사항) CDKToolkit 스택을 삭제합니다.

레퍼런스

최신 3계층 웹 애플리케이션 블루프린트는 리소스를 클라우드의 CodeCatalyst 공간과 AWS 계정에 배포합니다. AWS 이러한 리소스는 다음과 같습니다.

  • CodeCatalyst 숙소 내:

    • 다음 리소스가 포함된 CodeCatalyst 프로젝트:

      • 소스 리포지토리 — 이 리포지토리에는 'Mysfits' 웹 애플리케이션의 샘플 코드가 들어 있습니다.

      • 워크플로 — 이 워크플로는 기본 브랜치가 변경될 때마다 Mysfits 애플리케이션 코드를 빌드하고 배포합니다.

      • 이슈 보드 및 백로그 — 이 게시판과 백로그를 사용하여 작업을 계획하고 추적할 수 있습니다.

      • 테스트 보고서 세트 — 이 제품군에는 샘플 코드에 포함된 자동 보고서가 포함되어 있습니다.

  • 관련 항목 AWS 계정:

    • CDKToolkit 스택 — 이 스택은 다음 리소스를 배포합니다.

      • Amazon S3 스테이징 버킷, 버킷 정책 및 버킷을 암호화하는 데 사용되는 AWS KMS 키.

      • 배포 작업을 위한 IAM 배포 역할.

      • AWS 스택의 리소스를 지원하는 IAM 역할 및 정책

      참고

      CDKToolkit은 배포할 때마다 해체되거나 다시 생성되지 않습니다. 이 스택은 지원을 위해 각 계정에서 시작되는 스택입니다. AWS CDK

    • 개발-mysfits 문자열 BackEnd 스택 — 이 스택은 다음과 같은 백엔드 리소스를 배포합니다.

      • 아마존 API 게이트웨이 엔드포인트.

      • AWS 스택의 리소스를 지원하는 IAM 역할 및 정책.

      • AWS Lambda 함수와 계층은 최신 애플리케이션을 위한 서버리스 컴퓨팅 플랫폼을 제공합니다.

      • 버킷 배포 및 Lambda 함수를 위한 IAM 정책 및 역할.

    • mysfit 문자열 스택 — 이 스택은 프런트엔드 애플리케이션을 배포합니다. AWS Amplify

이 자습서의 일부로 리소스가 생성되는 AWS 서비스에 대한 자세한 내용은 다음을 참조하십시오.

  • Amazon S3 — 업계 최고의 확장성, 데이터 고가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스에 프런트엔드 자산을 저장하는 서비스입니다. 자세한 내용은 Amazon S3 사용 설명서를 참조하십시오.

  • Amazon API Gateway — 모든 규모에서 REST, HTTP 및 WebSocket API를 생성, 게시, 유지 관리, 모니터링 및 보호하는 서비스입니다. 자세한 내용은 API Gateway 개발자 안내서를 참조하십시오.

  • Amplify — 프론트엔드 애플리케이션을 호스팅하는 서비스입니다. 자세한 내용은 AWS Amplify 호스팅 사용 설명서를 참조하십시오.

  • AWS Cloud Development Kit (AWS CDK)— 코드로 클라우드 인프라를 정의하고 이를 통해 AWS CloudFormation프로비저닝하기 위한 프레임워크입니다. AWS CDK 여기에는 AWS CDK 앱 및 스택과 상호 작용하기 위한 명령줄 도구인 AWS CDK 툴킷이 포함됩니다. 자세한 정보는 AWS Cloud Development Kit (AWS CDK) 개발자 안내서를 참조하십시오.

  • Amazon DynamoDB — 데이터 저장을 위한 완전 관리형 NoSQL 데이터베이스 서비스입니다. 자세한 내용은 Amazon DynamoDB 개발자 안내서를 참조하십시오.

  • AWS Lambda— 서버를 프로비저닝하거나 관리하지 않고도 고가용성 컴퓨팅 인프라에서 코드를 호출하는 서비스입니다. 자세한 정보는 AWS Lambda 개발자 안내서를 참조하십시오.

  • AWS IAM — 해당 리소스에 대한 액세스를 안전하게 제어하기 위한 서비스입니다. AWS 자세한 내용은 IAM 사용 설명서를 참조하세요.