AWS SAM에서 지원되는 리소스 속성 - AWS Serverless Application Model

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

AWS SAM에서 지원되는 리소스 속성

리소스 속성은 추가 동작 및 관계를 제어하기 위해 AWS SAM 및 AWS CloudFormation 리소스에 추가할 수 있는 속성입니다. 리소스 속성에 대한 자세한 내용은 AWS CloudFormation 사용 설명서리소스 속성 참조를 참조하세요.

AWS SAM은 AWS CloudFormation에서 정의한 리소스 속성의 하위 집합을 지원합니다. 지원되는 리소스 속성 중 일부는 해당 AWS CloudFormation 리소스의 기본 생성 AWS SAM 리소스에만 복사되고 일부는 해당 AWS CloudFormation 리소스에서 생성된 모든 AWS SAM 리소스에 복사됩니다. 해당 AWS CloudFormation 리소스에서 생성된 AWS SAM 리소스에 대한 자세한 내용은 AWS SAM용으로 생성된 AWS CloudFormation 리소스을 참조하세요.

다음 표에는 아래 AWS SAM 목록에 따른 예외에 의한 리소스 속성 지원이 요약되어 있습니다.

Resource attributes 대상 생성 리소스

DependsOn

메타데이터 1, 2

기본 AWS CloudFormation 생성 리소스에 한정합니다. AWS SAM리소스와 기본 AWS CloudFormation 리소스 간의 매핑에 대한 자세한 내용은 생성된 AWS CloudFormation 리소스 시나리오 섹션을 참조하세요.

조건

DeletionPolicy

UpdateReplacePolicy

해당 AWS CloudFormation 리소스에서 생성된 모든 AWS SAM 리소스입니다. 생성된 AWS CloudFormation 리소스의 시나리오에 대한 자세한 내용은 생성된 AWS CloudFormation 리소스 시나리오 섹션을 참조하세요.

참고:

  1. Metadata리소스 유형으로 AWS::Serverless::Function 리소스 속성을 사용하는 방법에 대한 자세한 내용은 에서 사용자 지정 런타임을 사용하여 Lambda 함수 빌드 AWS SAM 섹션을 참조하세요.

  2. Metadata리소스 유형으로 AWS::Serverless::LayerVersion 리소스 속성을 사용하는 방법에 대한 자세한 내용은 AWS SAM에서 Lambda 계층 빌드 섹션을 참조하세요.

예외

앞서 설명한 리소스 속성 규칙에는 몇 가지 예외가 있습니다.

  • AWS::Lambda::LayerVersion의 경우, AWS SAM만 있는 사용자 지정 필드는 생성된 RetentionPolicy 리소스를 위해 DeletionPolicy를 AWS CloudFormation 설정합니다. 이것은 DeletionPolicy 자체보다 우선 순위가 높습니다. 둘 다 설정되지 않은 경우 기본 사항으로 DeletionPolicyRetain에 설정됩니다.

  • AWS::Lambda::Version의 경우, DeletionPolicy를 지정하지 않으면 기본값으로 Retain이 지정됩니다.

  • DeploymentPreferences이 서버리스 함수로 지정된 시나리오의 경우 리소스 속성은 다음과 같이 생성된 AWS CloudFormation 리소스에 복사되지 않습니다.

    • AWS::CodeDeploy::Application

    • AWS::CodeDeploy::DeploymentGroup

    • 이 시나리오에 대해 생성된 AWS::IAM::Role라는 이름의 CodeDeployServiceRole

  • 귀하의 AWS SAM템플릿에 묵시적으로 생성된 API 이벤트 소스가 있는 여러 함수가 포함된 경우 이 함수들은 생성된 AWS::ApiGateway::RestApi 리소스를 공유합니다. 이 시나리오에서 함수의 리소스 속성이 서로 다른 경우, 생성된 AWS::ApiGateway::RestApi 리소스에 대해 AWS SAM는 다음 우선순위 목록에 따라 리소스 속성을 복사합니다:

    • UpdateReplacePolicy:

      1. Retain

      2. Snapshot

      3. Delete

    • DeletionPolicy:

      1. Retain

      2. Delete