

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# AWS SAM anatomía de la plantilla
<a name="sam-specification-template-anatomy"></a>

Un archivo AWS SAM de plantilla sigue de cerca el formato de un archivo de CloudFormation plantilla, que se describe en [Anatomía de la plantilla](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) de la *Guía del AWS CloudFormation usuario*. Las principales diferencias entre los archivos AWS SAM de CloudFormation plantilla y los archivos de plantilla son las siguientes:
+ **Declaración de transformación.** La declaración `Transform: AWS::Serverless-2016-10-31` es obligatoria para los archivos de plantilla de AWS SAM . Esta declaración identifica un archivo CloudFormation de plantilla como un archivo AWS SAM de plantilla. Para obtener más información, consulta la [Transformación](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html) en la *AWS CloudFormation Guía del usuario de *.
+ **Sección Globals.** La `Globals` sección es exclusiva de AWS SAM. Define las propiedades que son comunes a todas las funciones sin servidor y APIs. Todos los `AWS::Serverless::StateMachine` recursos `AWS::Serverless::Function``AWS::Serverless::Api`,`AWS::Serverless::CapacityProvider`, `AWS::Serverless::HttpApi``AWS::Serverless::SimpleTable`, y heredan las propiedades que se definen en la `Globals` sección. Para obtener más información, consulta [Sección global de la plantilla AWS SAM](sam-specification-template-anatomy-globals.md).
+ **Sección de recursos.** En AWS SAM las plantillas, la `Resources` sección puede contener una combinación de CloudFormation recursos y AWS SAM recursos. Para obtener más información sobre CloudFormation los recursos, consulte la [referencia sobre los tipos de AWS recursos y propiedades](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) en la *Guía del AWS CloudFormation usuario*. Para obtener más información sobre AWS SAM los recursos, consulte[AWS SAM recursos y propiedades](sam-specification-resources-and-properties.md).

Todas las demás secciones de un archivo de AWS SAM plantilla corresponden a la sección del archivo de CloudFormation plantilla del mismo nombre.

## YAML
<a name="template-anatomy-outline.yaml"></a>

El siguiente ejemplo muestra un fragmento de código de plantilla con formato YAML.

```
Transform: AWS::Serverless-2016-10-31

Globals:
  set of globals

Description:
  String

Metadata:
  template metadata

Parameters:
  set of parameters

Mappings:
  set of mappings

Conditions:
  set of conditions

Resources:
  set of resources

Outputs:
  set of outputs
```

## Secciones de la plantilla
<a name="template-anatomy-sections"></a>

AWS SAM las plantillas pueden incluir varias secciones principales. Solo se requieren las secciones `Transform` y `Resources`.

Puedes incluir las secciones de la plantilla en cualquier orden. Sin embargo, si usa extensiones de idioma, debe agregar `AWS::LanguageExtensions` *antes* de la transformación sin servidor (es decir, antes de `AWS::Serverless-2016-10-31`), como se muestra en el siguiente ejemplo:

```
Transform:
  - AWS::LanguageExtensions
  - AWS::Serverless-2016-10-31
```

Al crear la plantilla, puede ser útil utilizar el orden lógico de la siguiente lista. Esto se debe a que los valores de una sección pueden hacer referencia a valores de una sección anterior.

**[Transformar (obligatorio)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html)**  
En el AWS SAM caso de las plantillas, debe incluir esta sección con un valor de`AWS::Serverless-2016-10-31`.  
Las transformaciones adicionales son opcionales. Para obtener más información, consulta la [Transformación](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html) en la *AWS CloudFormation Guía del usuario de *.

**[Globals (opcional)](sam-specification-template-anatomy-globals.md)**  
Propiedades comunes a todas las funciones sin servidor y a APIs las tablas sencillas. Todos los `AWS::Serverless::StateMachine` recursos `AWS::Serverless::Function``AWS::Serverless::Api`,`AWS::Serverless::CapacityProvider`, `AWS::Serverless::HttpApi``AWS::Serverless::SimpleTable`, y heredan las propiedades que se definen en la `Globals` sección.  
Esta sección es exclusiva de. AWS SAM No hay una sección correspondiente en las plantillas de CloudFormation .

**[Descripción (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-description-structure.html)**  
Una cadena de texto que describe la plantilla.  
Esta sección se corresponde directamente con la `Description` sección de CloudFormation plantillas.

**[Metadatos (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html)**  
Objetos que proporcionan información adicional acerca de la plantilla.  
Esta sección se corresponde directamente con la `Metadata` sección de CloudFormation plantillas.

**[Parámetros (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html)**  
Valores que se van a pasar a tu plantilla en tiempo de ejecución (al crear o actualizar una pila). Puedes consultar los parámetros en las secciones `Resources` y `Outputs` de la plantilla. Los objetos que se declaran en la sección `Parameters` hacen que el comando **sam deploy --guided** presente solicitudes adicionales al usuario.  
Los valores que se transfieren mediante el parámetro `--parameter-overrides` del comando `sam deploy` (y las entradas del archivo de configuración) tienen prioridad sobre las entradas del archivo de plantilla de AWS SAM . Para obtener más información sobre el comando `sam deploy`, consulta [sam deploy](sam-cli-command-reference-sam-deploy.md) en la referencia de comandos de la AWS SAM CLI. Para obtener más información sobre el archivo de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

**[Mapeos (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/mappings-section-structure.html)**  
Un mapeo de claves y valores asociados que puede utilizar para especificar valores de parámetros condicionales, similar a una tabla de búsqueda. Puede asociar una clave a un valor correspondiente mediante la función intrínseca [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html) en las secciones `Resources` y `Outputs`.  
Esta sección se corresponde directamente con la `Mappings` sección de CloudFormation plantillas.

**[Condiciones (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/conditions-section-structure.html)**  
Condiciones que controlan si determinados recursos se crean o si a determinadas propiedades de recursos se les asigna un valor durante la creación de la pila o la actualización. Por ejemplo, puede crear un recurso condicionalmente que depende de si la pila es para un entorno de prueba o de producción.  
Esta sección se corresponde directamente con la `Conditions` sección de CloudFormation plantillas.

**[Recursos (obligatorio)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html)**  
Los recursos de la pila y sus propiedades, como una instancia de Amazon Elastic Compute Cloud (Amazon EC2) o un depósito de Amazon Simple Storage Service (Amazon S3). Puedes consultar los recursos en las secciones `Resources` y `Outputs` de la plantilla.  
Esta sección es similar a la sección `Resources` de plantillas de CloudFormation . En AWS SAM las plantillas, esta sección puede contener AWS SAM recursos además de los CloudFormation recursos.

**[Salidas (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/outputs-section-structure.html)**  
Los valores que se devuelven siempre que ve las propiedades de su pila. Por ejemplo, puede declarar un resultado para el nombre de un bucket de S3 y, a continuación, llamar al comando `aws cloudformation describe-stacks` AWS Command Line Interface (AWS CLI) para ver el nombre.  
Esta sección se corresponde directamente con la sección `Outputs` de plantillas de CloudFormation .

## Pasos a seguir a continuación
<a name="template-anatomy-next-steps"></a>

Para descargar e implementar un ejemplo de aplicación sin servidor que contenga un archivo de AWS SAM plantilla, consulta [Empezar con AWS SAM](serverless-getting-started.md) y sigue las instrucciones que se indican en[Tutorial: Implemente una aplicación Hello World con AWS SAM](serverless-getting-started-hello-world.md).