AEM as a Cloud Service의 AEM Edge 기능 배포 전략
AEM as a Cloud Service에서 AEM Edge 함수 은(는) 환경에 바인딩됩니다. 프로그램을 프로비저닝하는 모든 환경(RDE, Dev, Stage 및 Prod)에는 고유한 AEM Edge 기능 인스턴스가 있습니다. 릴리스 프로세스에 빌드하기 전에 해당 범위에 대한 프로모션, 비밀 및 테스트를 계획하십시오.
AEM Edge 기능 범위 지정 방법
각 환경인 RDE, Dev, Stage 및 Prod는 자체 AEM Edge 기능 인스턴스를 실행합니다. 모든 인스턴스는 동일한 코드 저장소(package.json 파일 포함)에서 배포되지만 각 인스턴스는 자체 구성, 암호 및 KV 데이터를 유지합니다.
환경을 통해 코드 홍보
AEM as a Cloud Service에서 CDN 구성(edgeFunctions.yaml 및 cdn.yaml)은 AEM 사이트 프로젝트 저장소에 있으므로 모든 CDN 구성을 한 곳에 통합합니다. 그러나 AEM Edge 함수 코드는 별도의 AEM Edge 함수 프로젝트 저장소에 있습니다.
다음 환경으로 승격한다는 것은 두 저장소로 병합한 다음 각 저장소를 배포한다는 의미입니다. 높은 수준의 단계는 다음과 같습니다.
-
구성(
edgeFunctions.yaml및cdn.yaml) 변경 내용을 AEM 사이트 프로젝트의 git 분기에 병합합니다. -
Cloud Manager에서 구성 파이프라인이 병합된 분기를 사용하고 원하는 환경을 타깃팅하는지 확인합니다.
-
Cloud Manager 구성 파이프라인을 실행하여
edgeFunctions.yaml및cdn.yaml파일을 대상 환경에 배포합니다. -
AEM Edge 기능 코드 변경 내용을 AEM Edge 기능 프로젝트 git 분기에 병합합니다.
-
CLI 컨텍스트(또는 CI/CD 시스템)가 병합된 분기를 사용하고
aio aem edge-functions info명령을 사용하여 원하는 환경을 타깃팅하는지 확인하십시오. -
CLI 또는 CI/CD 시스템을 통해
aio aem edge-functions deploy <name>을(를) 실행하여 함수 코드를 대상 환경에 배포합니다.
환경별 암호 관리
비밀은 환경별로 설정됩니다. Cloud Manager에서 대상 환경의 구성 탭에 추가하십시오.
비밀이 아닌 구성은 환경에 관계없이 동일하게 작동합니다. Git로 커밋된 edgeFunctions.yaml에서 직접 선언합니다. 정확한 단계는 구성 및 암호 사용을 참조하십시오.
환경 범위에 대한 SDLC 계획
- 다른 환경에 도달하기 전에 RDE에서 함수 논리를 테스트합니다.
- 프로모션이 오래된 구성을 전달하지 않도록 환경별 비밀과 KV 데이터를 격리시킵니다.
- 나중에 생각하는 것이 아니라 릴리스 확인 목록의 일부로 환경 간의 구성 및 비밀 드리프트를 추적합니다.