사전 프로덕션 환경에서 끌어오기 요청 검토
이 문서에서는 사전 프로덕션 환경을 사용하여 Azure Static Web Apps와 함께 배포된 애플리케이션에 대한 변경 내용을 검토하는 방법을 보여줍니다. 사전 프로덕션 환경은 프로덕션에서 사용할 수 없는 변경 내용을 포함하는 애플리케이션의 완벽하게 작동하는 스테이징된 버전입니다.
참고 항목
끌어오기 요청 환경은 Azure DevOps에 대해 자동으로 지원되지 않지만 명명된 환경을 사용하여 수동으로 설정할 수 있습니다.
Azure Static Web Apps는 리포지토리에서 YAML 워크플로를 생성합니다. 워크플로가 감시하는 분기에 대해 끌어오기 요청을 만들면 사전 프로덕션 환경이 빌드됩니다. 사전 프로덕션 환경에서는 앱을 스테이징하므로 변경 내용을 프로덕션으로 푸시하기 전에 검토할 수 있습니다. 사전 프로덕션 환경의 수명 주기는 끌어오기 요청에 연결됩니다. 끌어오기 요청이 닫히면 사전 프로덕션 환경이 자동으로 삭제됩니다.
사전 프로덕션 환경 내에서 다음 작업을 수행할 수 있습니다.
- 콘텐츠 및 레이아웃 업데이트와 같은 프로덕션 및 스테이징 간의 시각적 변경 내용 검토
- 팀에 변경 내용을 보여주기
- 애플리케이션의 서로 다른 버전을 비교합니다.
- 수용 테스트를 사용하여 변경 내용의 유효성을 검사
- 프로덕션에 배포하기 전에 온전성 검사 수행
필수 조건
- Azure Static Web Apps로 구성된 기존 GitHub 리포지토리입니다. 정적 앱이 없는 경우 첫 번째 정적 앱 빌드를 참조하세요.
변경
다음 단계에 표시된 것처럼 GitHub에서 직접 리포지토리를 변경합니다.
GitHub에서 프로젝트의 리포지토리로 이동한 다음 분기를 선택합니다.
분기 이름을 입력하고 분기 만들기를 선택합니다.
앱 폴더로 이동하여 제목 또는 단락과 같은 일부 텍스트 콘텐츠를 변경합니다. 편집을 선택하여 파일을 변경합니다.
완료되면 변경 내용 커밋을 선택합니다.
끌어오기 요청 만들기
업데이트를 게시하기 위한 끌어오기 요청을 만듭니다.
GitHub에서 프로젝트의 끌어오기 요청 탭을 엽니다.
비교 및 끌어오기 요청을 선택합니다.
필요에 따라 변경 내용에 대한 세부 정보를 입력한 다음 끌어오기 요청 만들기를 선택합니다.
필요한 경우 검토자를 할당하고 의견을 추가하여 변경 내용을 논의할 수 있습니다.
Azure Static Web Apps를 사용하는 동시에 여러 사전 프로덕션 환경이 동시에 존재할 수 있습니다. 조사되는 분기에 대해 끌어오기 요청을 만들 때마다 변경 내용으로 스테이징된 버전이 고유한 사전 프로덕션 환경에 배포됩니다.
분기에 여러 변경 작업을 수행하고 새 커밋을 푸시할 수 있습니다. 끌어오기 요청이 모든 변경 내용을 반영하도록 자동으로 업데이트됩니다.
변경 내용 검토
GitHub Actions 배포 워크플로가 실행되고 사전 프로덕션 환경에 변경 내용이 배포됩니다.
워크플로에서 앱 빌드 및 배포를 완료하면 GitHub 봇은 사전 프로덕션 환경의 URL을 포함하는 주석을 끌어오기 요청에 추가합니다.
사전 프로덕션 URL을 선택하여 스테이징된 변경 내용을 확인합니다.
URL은
https://<SUBDOMAIN-PULL_REQUEST_ID>.<AZURE_REGION>.azurestaticapps.net
과 같이 구성됩니다. 지정된 끌어오기 요청에 대해 URL은 새 업데이트를 푸시하는 경우에도 동일하게 유지됩니다. 동일한 사전 프로덕션 환경도 끌어오기 요청의 수명 동안 재사용됩니다.
엔드투엔드 테스트를 사용하여 검토 프로세스를 자동화하기 위해 Azure Static Web Apps 배포를 위한 GitHub 작업에는 static_web_app_url
출력 변수가 있습니다.
워크플로의 나머지 부분에 있는 이 URL을 참조하여 사전 프로덕션 환경에 대해 테스트를 실행할 수 있습니다.
변경 내용 게시
끌어오기 요청을 병합하여 프로덕션에 게시합니다.
끌어오기 요청 병합을 선택합니다.
변경 내용이 추적된 분기("프로덕션" 분기)에 복사됩니다. 그런 다음, 추적된 분기에서 배포 워크플로가 시작되고 애플리케이션을 다시 빌드한 후에 변경 내용이 적용됩니다.
프로덕션 URL을 열어 웹 사이트의 라이브 버전을 로드하고 확인합니다.
제한 사항
GitHub 리포지토리가 비공개인 경우에도 누구나 URL을 통해 스테이징된 버전의 애플리케이션에 액세스할 수 있습니다.
Warning
누구나 사전 프로덕션 환경에 액세스할 수 있으므로 중요한 콘텐츠에 주의해야 합니다.
Static Web Apps로 배포된 각 앱에 사용할 수 있는 사전 프로덕션 환경 수는 호스팅 플랜에 따라 다릅니다. 예를 들어 무료 계층을 사용하는 경우 프로덕션 환경 외에도 세 개의 사전 프로덕션 환경을 사용할 수 있습니다.
사전 프로덕션 환경은 지리적으로 분산되지 않습니다.
GitHub Actions 배포만 사전 프로덕션 환경을 지원합니다.