Amplify 백엔드 환경으로 팀 워크플로 - AWS Amplify호스팅

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

Amplify 백엔드 환경으로 팀 워크플로

기능 분기 배포는 다음과 같이 구성됩니다.프론트엔드, 및 (선택적으로) a백엔드환경. 프런트엔드는 빌드된 후 글로벌 콘텐츠 전송 네트워크 (CDN) 에 배포되지만, 백엔드는 Amplify Studio 또는 Amplify CLI에 의해 배포됩니다.AWS. 이 배포 시나리오에 대한 자세한 내용은 단원을 참조하십시오.풀스택 연속 배포 시작하기.

참고

이제 Amplify 앱에서 Amplify 백엔드 환경을 쉽게 재사용할 수 있습니다. 자세한 정보는 앱에서 Amplify 백엔드 사용을 참조하십시오.

Amplify 호스팅을 사용하여 기능 브랜치 배포와 함께 GraphQL API 및 Lambda 함수와 같은 백엔드 리소스를 지속적으로 배포할 수 있습니다. 다음 모델을 사용하여 Amplify 호스팅과 함께 백엔드 및 프런트엔드를 배포할 수 있습니다.

기능 브랜치 워크플로

  • Amplify CLI로 prod, testdev 백엔드 환경을 생성합니다.

  • 찌르다테스트를 수행합니다주요(이전에는 마스터라고 함) 및나타나게 하다브랜치.

  • 팀 메이트는 dev 백엔드 환경을 사용하여 기능 브랜치에 대해 테스트할 수 있습니다.

  1. Amplify CLI를 설치하여 새 Amplify 프로젝트를 초기화합니다.

    npm install -g @aws-amplify/cli
  2. 프로젝트에 대해 prod 백엔드 환경을 초기화합니다. 프로젝트가 없는 경우 다음과 같은 부트스트랩 도구를 사용하여 프로젝트를 만듭니다. create-react-app 또는 개츠비.

    create-react-app next-unicorn cd next-unicorn amplify init ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: prod ... amplify push
  3. testdev 백엔드 환경을 추가합니다.

    amplify env add ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: test ... amplify push amplify env add ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: dev ... amplify push
  4. 선택한 Git 리포지토리로 코드를 푸시합니다 (이 예에서는 사용자가 main에 푸시한 것으로 가정함).

    git commit -am 'Added dev, test, and prod environments' git push origin main
  5. 앰파이를 방문하세요.AWS Management Console현재 백엔드 환경을 확인합니다. 이동 경로에서 레벨 위로 이동하여 다음에 생성된 모든 백엔드 환경의 목록을 봅니다.백엔드 환경탭.

  6. 로 전환합니다.프론트엔드 환경탭 및 저장소 공급자를 연결하고주요브랜치.

  7. 빌드 설정 화면에서 기존 백엔드 환경을 선택하여 기본 브랜치를 사용하여 연속 배포를 설정합니다. 선택찌르다드롭다운에서 Amplify 에게 서비스 역할을 부여합니다. 저장 및 배포를 선택합니다. 빌드가 완료된 후 에서 사용 가능한 기본 브랜치 배포를 받게 됩니다.https://main.appid.amplifyapp.com.

  8. 연결나타나게 하다Amplify (가정) 의 분기나타나게 하다주요이 시점에 브랜치가 동일합니다. test 백엔드 환경을 선택합니다.

  9. 이제 앰파이가 설정되었습니다. 기능 브랜치에서 새 기능에 대한 작업을 시작할 수 있습니다. 로컬 워크스테이션에서 dev 백엔드 환경을 사용하여 백엔드 기능을 추가합니다.

    git checkout -b newinternet amplify env checkout dev amplify add api ... amplify push
  10. 기능에 대한 작업을 종료한 후 코드를 커밋하고 풀 요청을 생성하여 내부적으로 검토합니다.

    git commit -am 'Decentralized internet v0.1' git push origin newinternet
  11. 변경 사항을 미리 보려면 Amplify 콘솔로 이동하여 기능 브랜치를 연결합니다. 참고: 를 가지고 있다면AWS CLI시스템에 설치되어 있음 (Amplify CLI이 아님) 터미널에서 바로 브랜치를 연결할 수 있습니다. 애플리케이션 설정 > 일반 > AppARN: arn:aws:amplify:<region>:<region>:apps/<appid>으로 이동하여 appid를 찾아볼 수 있습니다.

    aws amplify create-branch --app-id <appid> --branch-name <branchname> aws amplify start-job --app-id <appid> --branch-name <branchname> --job-type RELEASE
  12. https://newinternet.appid.amplifyapp.com에 액세스하여 기능을 팀 메이트와 공유할 수 있습니다. 모든 것이 순조로워 보이면 PR을 개발 브랜치에 병합합니다.

    git checkout develop git merge newinternet git push
  13. 이렇게 하면 Amplify의 프런트엔드와 백엔드를 업데이트할 빌드가 시작됩니다.https://dev.appid.amplifyapp.com. 내부 이해관계자가 새 기능을 검토할 수 있도록 이 링크를 내부 이해관계자와 공유할 수 있습니다.

  14. Git, Amplify 에서 기능 브랜치를 삭제하고, 클라우드에서 백엔드 환경을 제거합니다 (언제든지 'amplify env appfy env add'를 실행하여 새 백엔드 환경을 생성할 수 있음).

    git push origin --delete newinternet aws amplify delete-branch --app-id <appid> --branch-name <branchname> amplify env remove dev

GitFlow 워크플로우

GitFlow는 두 개의 브랜치를 사용하여 프로젝트 이력을 기록합니다. 이주요브랜치 (이전에는 master 브랜치라고 함) 는 릴리스 코드만 추적하고나타나게 하다브랜치는 새로운 기능의 통합 브랜치로 사용됩니다. GitFlow 새로운 개발과 완료된 작업을 분리하여 parallel 개발을 단순화합니다. 새로운 개발(예: 기능 및 비정기적인 버그 수정)은 기능 브랜치에서 수행됩니다. 개발자가 코드를 릴리스할 준비가 완료되면 기능 브랜치는 통합 개발 브랜치로 병합됩니다. 메인 브랜치에 대한 유일한 커밋은 다음에서 병합하는 것입니다.해제브랜치 및긴급 수정 파일분기 (긴급 버그를 수정하기 위해).

아래의 다이어그램은 GitFlow를 사용한 권장된 설정을 보여줍니다. 위의 기능 브랜치 워크플로우 섹션에서 설명된 것과 동일한 절차를 따를 수 있습니다.

각 개발자의 샌드박스

  • 팀의 각 개발자는 자신의 로컬 컴퓨터와 별도로 클라우드에 샌드박스 환경을 만듭니다 이를 통해 개발자는 다른 팀원의 변경 사항을 덮어쓰지 않고도 서로 격리되어 작업할 수 있습니다.

  • Amplify의 각 브랜치에는 자체 백엔드가 있습니다. 이렇게 하면 팀의 개발자가 직접 로컬 컴퓨터에서 프로덕션 환경으로 백엔드 또는 프런트엔드를 수동으로 푸시하지 않고 Amplify가 Git 리포지토리를 변경 사항 배포를 위한 단일 소스로 사용할 수 있습니다.

  1. Amplify CLI를 설치하여 새 Amplify 프로젝트를 초기화합니다.

    npm install -g @aws-amplify/cli
  2. 프로젝트에 대해 kita 백엔드 환경을 초기화합니다. 프로젝트가 없는 경우 다음과 같은 부트스트랩 도구를 사용하여 프로젝트를 만듭니다. create-react-app 또는 개츠비.

    cd next-unicorn amplify init ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: kita ... amplify push
  3. 선택한 Git 리포지토리로 코드를 푸시합니다 (이 예에서는 사용자가 main (이전에는 master) 로 푸시한 것으로 가정함).

    git commit -am 'Added kita sandbox' git push origin main
  4. 리포지토리 Connect >주요를 Amplify.

  5. Amplify 콘솔은 Amplify CLI에 의해 형성된 백엔드 환경을 감지합니다. 선택새 환경 생성드롭다운에서 Amplify 에게 서비스 역할을 부여합니다. 저장 및 배포를 선택합니다. 빌드가 완료된 후 에서 사용 가능한 기본 브랜치 배포를 받게 됩니다.https://main.appid.amplifyapp.com새 백엔드 환경은 브랜치에 연결됩니다.

  6. 연결나타나게 하다Amplify (가정) 의 분기나타나게 하다주요이 시점에 브랜치가 동일합니다.)새 환경 생성. 빌드가 완료된 후 https://develop.appid.amplifyapp.com에서 사용 가능한 개발 브랜치 배포를 받게 되고 새 백엔드 환경은 브랜치에 연결됩니다.