기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
템플릿 동기화 구성 생성
를 통해 템플릿 동기화 구성을 생성하는 방법을 알아봅니다AWS Proton.
템플릿 동기화 구성 사전 요구 사항 만들기:
-
리포지토리를 에 연결했습니다AWS Proton.
-
템플릿 번들은 저장소에 있습니다.
리포지터리 링크는 다음과 같은 요소로 구성됩니다.
-
리포지토리에 액세스하고 해당 알림을 구독할 수 있는AWS Proton 권한을 부여하는 AWSCodeStar 연결 연결입니다.
-
서비스 연결 역할. 리포지토리를 연결하면 서비스 연결 역할이 자동으로 생성됩니다.
첫 번째 템플릿 동기화 구성을 생성하기 전에 다음 디렉터리 레이아웃과 같이 템플릿 번들을 리포지토리로 푸시하십시오.
/templates/ # subdirectory (optional) /templates/my-env-template/ # template name /templates/my-env-template/v1/ # template version /templates/my-env-template/v1/infrastructure/ # template bundle /templates/my-env-template/v1/schema/
첫 번째 템플릿 동기화 구성을 만든 후 새 버전 (예: 아래/my-env-template/v2/
) 에 업데이트된 템플릿 번들을 추가하는 커밋을 푸시하면 새 템플릿 버전이 자동으로 생성됩니다.
/templates/ # subdirectory (optional) /templates/my-env-template/ # template name /templates/my-env-template/v1/ # template version /templates/my-env-template/v1/infrastructure/ # template bundle /templates/my-env-template/v1/schema/ /templates/my-env-template/v2/ /templates/my-env-template/v2/infrastructure/ /templates/my-env-template/v2/schema/
단일 커밋에 하나 이상의 동기화 구성 템플릿에 대한 새 템플릿 번들 버전을 포함할 수 있습니다. AWS Proton커밋에 포함된 각 새 템플릿 번들 버전에 대해 새 템플릿 버전을 만듭니다.
템플릿 동기화 구성을 생성한 후에도 콘솔에서 또는 S3 버킷에서 템플릿 번들을AWS CLI 업로드하여 새 버전의 템플릿을 수동으로 생성할 수 있습니다. 템플릿 동기화는 저장소에서 다음 방향으로만 작동합니다AWS Proton. 수동으로 만든 템플릿 버전은 동기화되지 않습니다.
템플릿 동기화 구성을 설정한 후 는 리포지토리의 변경 사항을AWS Proton 수신합니다. 변경 사항이 푸시될 때마다 템플릿과 이름이 같은 디렉터리를 찾습니다. 그런 다음 해당 디렉터리 내에서 메이저 버전처럼 보이는 디렉토리를 찾습니다. AWS Proton템플릿 번들을 해당 템플릿 메이저 버전에 등록합니다. 새 버전은 항상 해당DRAFT
상태에 있습니다. 콘솔을 사용하거나 새 버전을 게시할 수AWS CLI 있습니다.
예를 들어,my-repo/templates
브랜치에서 다음main
레이아웃과my-env-template
동기화되도록 구성된 템플릿이 있다고 가정해 보겠습니다.
/code /code/service.go README.md /templates/ /templates/my-env-template/ /templates/my-env-template/v1/ /templates/my-env-template/v1/infrastructure/ /templates/my-env-template/v1/schema/ /templates/my-env-template/v2/ /templates/my-env-template/v2/infrastructure/ /templates/my-env-template/v2/schema/
AWS Protonto의my-env-template:1
내용과/templates/my-env-template/v1/
to의/templates/my-env-template/v2/
내용을 동기화합니다my-env-template:2
. 아직 존재하지 않는 경우 이러한 주요 버전이 생성됩니다.
AWS Proton템플릿 이름과 일치하는 첫 번째 디렉터리를 찾았습니다. 템플릿 동기화 구성을 만들거나 편집할subdirectoryPath
때 를 지정하여 디렉터리AWS Proton 검색을 제한할 수 있습니다. 예를 들어, 에/production-templates/
대해 지정할 수subdirectoryPath
있습니다.
콘솔 또는 CLI를 사용하여 템플릿 동기화 구성을 생성할 수 있습니다.
동기화 서비스 템플릿
위의 예제는 환경 템플릿을 동기화하는 방법을 보여줍니다. 서비스 템플릿도 비슷합니다. 서비스 템플릿을 동기화하려면 템플릿 번들의 각 메이저 버전 디렉터리에 이름이 지정된.template-registration.yaml
파일을 추가합니다. 이 파일에는 커밋 후 서비스 템플릿 버전을 만들 때AWS Proton 필요한 추가 세부 정보가 들어 있습니다. AWS Proton콘솔 또는 API를 사용하여 서비스 템플릿 버전을 명시적으로 만들 때 이러한 세부 정보를 입력으로 제공하면 이 파일이 템플릿 동기화를 위한 이러한 입력을 대체합니다.
./templates/ # subdirectory (optional) /templates/my-svc-template/ # service template name /templates/my-svc-template/v1/ # service template version /templates/my-svc-template/v1/.template-registration.yaml # service template version properties /templates/my-svc-template/v1/instance_infrastructure/ # template bundle /templates/my-svc-template/v1/schema/
.template-registration.yaml
파일에는 다음과 같은 세부 정보가 들어 있습니다.
-
호환 가능한 환경 [필수] — 이러한 환경 템플릿 및 주요 버전을 기반으로 하는 환경은 이 서비스 템플릿 버전을 기반으로 하는 서비스와 호환됩니다.
-
지원되는 구성 요소 소스 [선택 사항] — 이러한 소스를 사용하는 구성 요소는 이 서비스 템플릿 버전을 기반으로 하는 서비스와 호환됩니다. 지정하지 않으면 구성 요소를 이러한 서비스에 연결할 수 없습니다. 구성 요소에 대한 자세한 내용은 단원을 참조하세요AWS Proton 구성 요소.
파일의 YAML 구문은 다음과 같습니다.
compatible_environments: -
env-templ-name
:major-version
- ... supported_component_sources: - DIRECTLY_DEFINED
하나 이상의 환경 템플릿/메이저 버전 조합을 지정합니다. supported_component_sources
지정은 선택 사항이며 지원되는 유일한 값은 입니다DIRECTLY_DEFINED
.
예 .템플릿 등록.yaml
이 예에서 서비스 템플릿 버전은my-env-template
환경 템플릿의 주요 버전 1 및 2와 호환됩니다. another-env-template
환경 템플릿의 주요 버전 1 및 3과도 호환됩니다. 파일은supported_component_sources
지정하지 않으므로 이 서비스 템플릿 버전을 기반으로 하는 서비스에 구성 요소를 연결할 수 없습니다.
compatible_environments: - my-env-template:1 - my-env-template:2 - another-env-template:1 - another-env-template:3
참고
이전에는 호환되는 환경을 지정하기 위해 다른 파일을AWS Proton 정의했습니다..compatible-envs
AWS Proton이전 버전과의 호환성을 위해 해당 파일과 해당 형식을 계속 지원합니다. 확장이 불가능하고 구성 요소와 같은 새로운 기능을 지원할 수 없으므로 더 이상 사용하지 않는 것이 좋습니다.