sam deploy - AWS Serverless Application Model

sam deploy

Esta página proporciona información de referencia para el comando sam deploy de la interfaz de la línea de comandos AWS Serverless Application Model (AWS SAM CLI).

El comando sam deploy implementa una aplicación para el Nube de AWS usando AWS CloudFormation.

Uso

$ <environment variables> sam deploy <options>

Variables de entorno

SAM_CLI_POLL_DELAY

Establezca la variable de entorno SAM_CLI_POLL_DELAY con un valor de segundos en su intérprete de comandos para configurar la frecuencia con la que la CLI de AWS SAM comprueba el estado de la pila de CloudFormation, lo cual es útil cuando se ve la aceleración desde CloudFormation. Esta variable de entorno se utiliza para sondear las llamadas a la API describe_stack, que se realizan durante la ejecución de sam deploy.

A continuación se muestra un ejemplo de la variable.

$ SAM_CLI_POLL_DELAY=5 sam deploy

Opciones

--capabilities LIST

Una lista de las capacidades que debe especificar para que CloudFormation pueda crear determinadas pilas. Puede haber plantillas de pila que incluyan recursos que afecten a los permisos en su Cuenta de AWS, como, por ejemplo, mediante la creación de nuevos usuarios de (IAM) en AWS Identity and Access Management. Para estas pilas, debe reconocer explícitamente sus capacidades especificando esta opción. Los únicos valores válidos son CAPABILITY_IAM y CAPABILITY_NAMED_IAM. Si tiene recursos de IAM, puede especificar cualquiera de las dos capacidades. Si tiene recursos de IAM con nombres personalizados, debe especificar CAPABILITY_NAMED_IAM. Si no especifica esta opción, la operación devuelve un error InsufficientCapabilities.

Cuando implementa una aplicación que contiene aplicaciones anidadas, debe usar CAPABILITY_AUTO_EXPAND para reconocer que la aplicación contiene aplicaciones anidadas. Para obtener más información, consulte Implementar aplicaciones anidadas.

--config-env TEXT

El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor predeterminado es default. Para obtener más información sobre los archivos de configuración, consulta Archivo de configuración de la CLI de AWS SAM.

--config-file PATH

La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es samconfig.toml en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta Archivo de configuración de la CLI de AWS SAM.

--confirm-changeset | --no-confirm-changeset

Solicita confirmar si la CLI de AWS SAM implementa el conjunto de cambios calculado.

--debug

Active el registro de depuración para imprimir el mensaje de depuración que la CLI de AWS SAM genera y para mostrar las marcas temporales.

--disable-rollback | --no-disable-rollback

Especifica si desea revertir la pila de CloudFormation en caso de que se produzca un error durante una implementación. De forma predeterminada, si se produce un error durante una implementación, la pila de CloudFormation vuelve al último estado estable. Si especificas --disable-rollback y se produce un error durante una implementación, los recursos que se crearon o actualizaron antes de que se produjera el error no se revertirán.

--fail-on-empty-changeset | --no-fail-on-empty-changeset

Especifica si desea devolver un código de salida distinto de cero si no hay cambios que realizar en la pila. El comportamiento predeterminado es devolver un código de salida distinto de cero.

--force-upload

Especifica esta opción para cargar artefactos incluso si coinciden con los artefactos existentes en el bucket de Amazon S3. Los artefactos coincidentes se sobrescriben.

--guided, -g

Especifica esta opción para que la CLI de AWS SAM utilice indicaciones que le guíen durante la implementación.

--help

Muestre este mensaje y salga de él.

--image-repositories TEXT

Un mapeo de funciones a su URI del repositorio de Amazon ECR. Haga referencia a las funciones por su ID lógico. A continuación, se muestra un ejemplo:

$ sam deploy --image-repositories Function1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo

Puede especificar esta opción varias veces con un solo comando.

--image-repository TEXT

El nombre del repositorio de Amazon ECR en el que este comando carga la imagen de la función. Esta opción es necesaria para las funciones declaradas con el tipo de paquete Image.

--kms-key-id TEXT

El ID de una clave AWS Key Management Service (AWS KMS) que se utiliza para cifrar los artefactos que se encuentran en reposo en el bucket de Amazon S3. Si no especifica esta opción, entonces AWS SAM utiliza las claves de cifrado administradas por Amazon S3.

--metadata

Un mapa de metadatos para adjuntar a todos los artefactos a los que se hace referencia en la plantilla.

--no-execute-changeset

Indica si se debe aplicar el conjunto de cambios. Especifica esta opción si desea ver los cambios de la pila antes de aplicar el conjunto de cambios. Este comando crea un conjunto de cambios CloudFormation y, a continuación, se cierra sin aplicar el conjunto de cambios. Para aplicar el conjunto de cambios, ejecuta el mismo comando sin esta opción.

--no-progressbar

No muestre una barra de progreso al cargar artefactos en Amazon S3.

--notification-arns LIST

Una lista de los ARN de temas de Amazon Simple Notification Service (Amazon SNS) CloudFormation que se asocian a la pila.

--on-failure [ROLLBACK | DELETE | DO_NOTHING]

Especifica la acción que se debe realizar cuando no se pueda crear una pila.

Están disponibles las siguientes opciones:

  • ROLLBACK: hace retroceder la pila a un estado válido conocido anteriormente.

  • DELETE: hace retroceder la pila a un estado válido conocido anteriormente, si es que existe alguno. De lo contrario, elimina la pila.

  • DO_NOTHING: no revierte ni elimina la pila. El efecto es el mismo que el de --disable-rollback.

El comportamiento predeterminado es ROLLBACK.

nota

Especifica la opción --disable-rollback o la --on-failure, pero no ambas.

--parameter-overrides LIST

Una cadena que contiene anulaciones de parámetros CloudFormation codificadas como pares de clave-valor. Cada anulación usa el formato ParameterKey=name,ParameterValue=value. Las anulaciones múltiples están separadas por espacios. A continuación, se incluyen dos ejemplos:

$ sam deploy --parameter-overrides ParameterKey=value1,ParameterValue=value2
$ sam deploy --parameter-overrides ParameterKey=value1,ParameterValue=value2 ParameterKey=hello,ParameterValue=world ParameterKey=apple,ParameterValue=banana
--profile TEXT

El perfil específico del archivo de credenciales que recibe las credenciales de AWS.

--region TEXT

La Región de AWS en la que se implementará. Por ejemplo, us-east-1.

--resolve-image-repos

Crea automáticamente repositorios de Amazon ECR para usarlos en el empaquetado y la implementación de implementaciones no guiadas. Esta opción solo se aplica a funciones y capas con la especificación PackageType: Image. Si especificas la opción --guided, entonces la CLI de AWS SAM ignora --resolve-image-repos.

nota

Si AWS SAM crea automáticamente cualquier repositorio de Amazon ECR para funciones o capas con esta opción y, posteriormente, elimina esas funciones o capas de la plantilla de AWS SAM, los repositorios de Amazon ECR correspondientes se eliminarán automáticamente.

--resolve-s3

Crea automáticamente un bucket de Amazon S3 para utilizarlo en el empaquetado y la implementación de implementaciones no guiadas. Si especificas la opción --guided, entonces la CLI AWS SAM ignora --resolve-s3. Si especificas las opciones --s3-bucket y --resolve-s3, entonces se produce un error.

--role-arn TEXT

El nombre de recurso de Amazon (ARN) del rol de (IAM) que CloudFormation asume al aplicar el conjunto de cambios.

--s3-bucket TEXT

El nombre del bucket de Amazon S3 donde este comando carga la plantilla de CloudFormation. Si la plantilla tiene más de 51 200 bytes, es necesaria la opción --s3-bucket o la opción --resolve-s3. Si especificas ambas opciones --s3-bucket y --resolve-s3, se producirá un error.

--s3-prefix TEXT

El prefijo que se ha añadido a los nombres de los artefactos que se cargan en el bucket de Amazon S3. El nombre del prefijo es un nombre de ruta (nombre de la carpeta) del bucket de Amazon S3.

--save-params

Guarda los parámetros que proporciones en la línea de comandos en el archivo de configuración de AWS SAM.

--signing-profiles LIST

La lista de perfiles de firma con los que firmar los paquetes de implementación. Esta opción utiliza una lista de pares clave-valor, donde la clave es el nombre de la función o capa que se va a firmar y el valor es el perfil de firma, con un propietario del perfil opcional delimitado con :. Por ejemplo, FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner.

--stack-name TEXT

(Obligatorio) El nombre de la pila de CloudFormation en la que está realizando la implementación. Si especificas una pila existente, el comando la actualiza. Si especificas una nueva pila, el comando la crea.

--tags LIST

Una lista de etiquetas para asociar a la pila que se ha creado o actualizado. CloudFormation también propaga estas etiquetas a los recursos de la pila que las admiten.

--template-file, --template, -t PATH

La ruta y el nombre del archivo donde se encuentra la plantilla de AWS SAM.

nota

Si especificas esta opción, entonces AWS SAM solo implementa la plantilla y los recursos locales a los que apunta.

--use-json

JSON de salida para la plantilla de CloudFormation. El resultado predeterminado es YAML.

Ejemplo

Para ver un ejemplo y un tutorial detallados sobre el uso del subcomando sam deploy, consulte Introducción a la implementación con AWS SAM.