PublishVersion - AWS Lambda

PublishVersion

Crea una versión a partir del código y la configuración actuales de una función. Utilice las versiones para crear una instantánea del código y la configuración de la función que no cambia.

AWS Lambda no publica una versión si la configuración y el código de la función no han cambiado desde la última versión. Use UpdateFunctionCode o UpdateFunctionConfiguration para actualizar la función antes de publicar una versión.

Los clientes pueden invocar versiones directamente o con un alias. Para crear un alias, use CreateAlias .

Sintaxis de la solicitud

POST /2015-03-31/functions/FunctionName/versions HTTP/1.1 Content-type: application/json { "CodeSha256": "string", "Description": "string", "RevisionId": "string" }

Parámetros de solicitud del URI

La solicitud utiliza los siguientes parámetros URI.

FunctionName

El nombre de la función de Lambda.

Formatos de nombre

  • Nombre de función - MyFunction.

  • ARN de función - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • ARN parcial - 123456789012:function:MyFunction.

La limitación de longitud se aplica únicamente al ARN completo. Si solo especifica el nombre de la función, se limita a 64 caracteres de longitud.

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 140 caracteres.

Pattern: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?

Obligatorio: sí

Cuerpo de la solicitud

La solicitud acepta los siguientes datos en formato JSON.

CodeSha256

Únicamente publica una versión si el valor hash coincide con el valor que haya especificado. Utilice esta opción para evitar la publicación de una versión si el código de la función ha cambiado desde que lo actualizó por última vez. Puede obtener el hash para la versión que cargó desde la salida de UpdateFunctionCode .

Tipo: String

Requerido: No

Description

Una descripción de la versión para anular la descripción en la configuración de la función.

Tipo: String

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es de 256 caracteres.

Requerido: No

RevisionId

Actualice la función solo si el ID de revisión coincide con el ID especificado. Utilice esta opción para evitar la publicación de una versión si la configuración de la función ha cambiado desde que lo actualizó por última vez.

Tipo: String

Requerido: No

Sintaxis de la respuesta

HTTP/1.1 201 Content-type: application/json { "CodeSha256": "string", "CodeSize": number, "DeadLetterConfig": { "TargetArn": "string" }, "Description": "string", "Environment": { "Error": { "ErrorCode": "string", "Message": "string" }, "Variables": { "string" : "string" } }, "FileSystemConfigs": [ { "Arn": "string", "LocalMountPath": "string" } ], "FunctionArn": "string", "FunctionName": "string", "Handler": "string", "ImageConfigResponse": { "Error": { "ErrorCode": "string", "Message": "string" }, "ImageConfig": { "Command": [ "string" ], "EntryPoint": [ "string" ], "WorkingDirectory": "string" } }, "KMSKeyArn": "string", "LastModified": "string", "LastUpdateStatus": "string", "LastUpdateStatusReason": "string", "LastUpdateStatusReasonCode": "string", "Layers": [ { "Arn": "string", "CodeSize": number, "SigningJobArn": "string", "SigningProfileVersionArn": "string" } ], "MasterArn": "string", "MemorySize": number, "PackageType": "string", "RevisionId": "string", "Role": "string", "Runtime": "string", "SigningJobArn": "string", "SigningProfileVersionArn": "string", "State": "string", "StateReason": "string", "StateReasonCode": "string", "Timeout": number, "TracingConfig": { "Mode": "string" }, "Version": "string", "VpcConfig": { "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ], "VpcId": "string" } }

Elementos de respuesta

Si la acción se realiza correctamente, el servicio devuelve una respuesta HTTP 201.

El servicio devuelve los datos siguientes en formato JSON.

CodeSha256

El hash SHA256 del paquete de implementación de la función.

Tipo: String

CodeSize

El tamaño del paquete de implementación de la función, en bytes.

Tipo: largo

DeadLetterConfig

La cola de mensajes fallidos de la función.

Tipo: objeto DeadLetterConfig

Description

Descripción de la función.

Tipo: String

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es de 256 caracteres.

Environment

Las variables de entorno de la función.

Tipo: objeto EnvironmentResponse

FileSystemConfigs

Configuración de conexión para un sistema de archivos de Amazon EFS.

Tipo: Matriz de objetos FileSystemConfig

Miembros de la matriz: número máximo de 1 elemento.

FunctionArn

El nombre de recurso de Amazon (ARN) de la función.

Tipo: String

Pattern: arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_\.]+(:(\$LATEST|[a-zA-Z0-9-_]+))?

FunctionName

El nombre de la función.

Tipo: String

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 170 caracteres.

Pattern: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_\.]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?

Handler

La función a la que llama Lambda para comenzar a ejecutar su función.

Tipo: String

Limitaciones de longitud: longitud máxima de 128 caracteres.

Pattern: [^\s]+

ImageConfigResponse

Los valores de configuración de la imagen de la función.

Tipo: objeto ImageConfigResponse

KMSKeyArn

Clave KMS que se utiliza para cifrar las variables de entorno de la función. Esta clave solo se devuelve si ha configurado una CMK administrada por el cliente.

Tipo: String

Pattern: (arn:(aws[a-zA-Z-]*)?:[a-z0-9-.]+:.*)|()

LastModified

La fecha y hora de la última actualización de la función, en formato ISO-8601 (AAAA-MM-DDThh:mm:ss.sTZD).

Tipo: String

LastUpdateStatus

El estado de la última actualización que se realizó en la función. Esto se establece primero en Successful después de que se complete la creación de la función

Tipo: String

Valores válidos: Successful | Failed | InProgress

LastUpdateStatusReason

El motivo de la última actualización que se realizó en la función.

Tipo: String

LastUpdateStatusReasonCode

El código de motivo de la última actualización que se realizó en la función.

Tipo: String

Valores válidos: EniLimitExceeded | InsufficientRolePermissions | InvalidConfiguration | InternalError | SubnetOutOfIPAddresses | InvalidSubnet | InvalidSecurityGroup | ImageDeleted | ImageAccessDenied | InvalidImage

Layers

Las capas de la función.

Tipo: Matriz de objetos Layer

MasterArn

Para las funciones Lambda@Edge, el ARN de la función maestra.

Tipo: String

Pattern: arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?

MemorySize

La cantidad de memoria disponible para la función en tiempo de ejecución.

Tipo: entero

Rango válido: valor mínimo de 128. Valor máximo de 10240.

PackageType

El tipo de paquete de implementación. Establezca Image como para la imagen contenedor y configure Zip para el archivo de archivos.zip.

Tipo: String

Valores válidos: Zip | Image

RevisionId

La última revisión actualizada de la función o alias.

Tipo: String

Role

Rol de ejecución de la función.

Tipo: String

Pattern: arn:(aws[a-zA-Z-]*)?:iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+

Runtime

El entorno en tiempo de ejecución de la función Lambda.

Tipo: String

Valores válidos: nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | nodejs10.x | nodejs12.x | nodejs14.x | java8 | java8.al2 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | python3.9 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | dotnetcore3.1 | nodejs4.3-edge | go1.x | ruby2.5 | ruby2.7 | provided | provided.al2

SigningJobArn

El ARN del trabajo de firma.

Tipo: String

Pattern: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)

SigningProfileVersionArn

El ARN de la versión del perfil de firma.

Tipo: String

Pattern: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)

State

El estado actual de la función. Cuando el estado es Inactive, puede reactivar la función invocándola.

Tipo: String

Valores válidos: Pending | Active | Inactive | Failed

StateReason

El motivo del estado actual de la función.

Tipo: String

StateReasonCode

El código de motivo del estado actual de la función. Cuando el código es Creating, no puede invocar ni modificar la función.

Tipo: String

Valores válidos: Idle | Creating | Restoring | EniLimitExceeded | InsufficientRolePermissions | InvalidConfiguration | InternalError | SubnetOutOfIPAddresses | InvalidSubnet | InvalidSecurityGroup | ImageDeleted | ImageAccessDenied | InvalidImage

Timeout

La cantidad de tiempo en segundos durante el cual Lambda permite que se ejecute una función antes de pararla.

Tipo: entero

Rango válido: valor mínimo de 1.

TracingConfig

Configuración de seguimiento de AWS X-Ray de la función.

Tipo: objeto TracingConfigResponse

Version

La versión de la función Lambda.

Tipo: String

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 1024 caracteres.

Pattern: (\$LATEST|[0-9]+)

VpcConfig

Configuración de red de la función.

Tipo: objeto VpcConfigResponse

Errors

CodeStorageExceededException

Ha superado el tamaño máximo de su código total por cuenta. Más información

Código de estado HTTP: 400

InvalidParameterValueException

Uno de los parámetros de la solicitud no es válido.

Código de estado HTTP: 400

PreconditionFailedException

El RevisionId proporcionado no coincide con el RevisionId más reciente para la función o alias de Lambda. Llame a la API de GetFunction o GetAlias para recuperar la última versión de RevisionId para su recurso.

Código de estado HTTP: 412

ResourceConflictException

El recurso ya existe o hay otra operación en marcha.

Código de estado HTTP: 409

ResourceNotFoundException

El recurso especificado en la solicitud no existe.

Código de estado HTTP: 404

ServiceException

El servicio AWS Lambda detectó un error interno.

Código de estado HTTP: 500

TooManyRequestsException

Se ha superado el límite de rendimiento de la solicitud.

Código de estado HTTP: 429

Véase también

Para obtener más información sobre el uso de esta API en un SDK de AWS de un lenguaje específico, consulte: