Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Transformación AWS::Serverless

Modo de enfoque
Transformación AWS::Serverless - AWS CloudFormation
Filtrar vista

En este tema se describe cómo usar la transformación AWS::Serverless para procesar una plantilla escrita en la sintaxis de AWS Serverless Application Model (AWS SAM) y transformarla en una plantilla compatible con CloudFormation.

Para obtener más información sobre el uso de la transformación AWS::Serverless, consulte AWS SAM transform en GitHub.

Uso

Para usar la transformación AWS::Serverless, debe declararla en el nivel superior de la plantilla de CloudFormation. No se puede utilizar AWS::Serverless como transformación integrada en ninguna otra sección de la plantilla.

La declaración debe usar la cadena literal AWS::Serverless-2016-10-31 como valor. No puede utilizar un parámetro o función para especificar un valor de transformación.

Sintaxis

Para declarar esta transformación en su plantilla de CloudFormation, use la siguiente sintaxis:

JSON

{ "Transform":"AWS::Serverless-2016-10-31", "Resources":{ ... } }

YAML

Transform: AWS::Serverless-2016-10-31 Resources: ...

La transformación AWS::Serverless es una declaración independiente sin parámetros adicionales.

Ejemplos

En los siguientes ejemplos se muestra cómo usar la transformación AWS::Serverless y la sintaxis de AWS SAM para simplificar la declaración de una función de Lambda y su rol de ejecución.

JSON

{ "Transform":"AWS::Serverless-2016-10-31", "Resources":{ "MyFunction":{ "Type":"AWS::Serverless::Function", "Properties":{ "Handler":"index.handler", "Runtime":"nodejs20.x", "CodeUri":"s3://amzn-s3-demo-bucket/MySourceCode.zip" } } } }

YAML

Transform: AWS::Serverless-2016-10-31 Resources: MyFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs20.x CodeUri: 's3://amzn-s3-demo-bucket/MySourceCode.zip'

Al crear un conjunto de cambios de la plantilla, CloudFormation amplía la sintaxis de AWS SAM, tal y como se define en la transformación. La plantilla procesada amplía el recurso AWS::Serverless::Function, declarando una función de Lambda y un rol de ejecución.

{ "Resources": { "MyFunction": { "Type": "AWS::Lambda::Function", "Properties": { "Handler": "index.handler", "Code": { "S3Bucket": "amzn-s3-demo-bucket", "S3Key": "MySourceCode.zip" }, "Role": { "Fn::GetAtt": ["MyFunctionRole", "Arn"] }, "Runtime": "nodejs20.x" } }, "MyFunctionRole": { "Type": "AWS::IAM::Role", "Properties": { "ManagedPolicyArns": ["arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"], "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [{ "Action": ["sts:AssumeRole"], "Effect": "Allow", "Principal": { "Service": ["lambda.amazonaws.com"] } }] } } } } }

Para obtener más información sobre las aplicaciones sin servidor y AWS Serverless Application Model (AWS SAM), consulte la Guía para desarrolladores de AWS Serverless Application Model.

Para conocer los tipos de recursos y propiedades específicos de AWS SAM, consulte AWS SAM resources and properties en la Guía para desarrolladores de AWS Serverless Application Model.

Para obtener información general sobre el uso de las macros, consulte Procesamientos personalizados en plantillas de CloudFormation con macros de plantillas en la Guía del usuario de AWS CloudFormation.

En esta página

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.