🌐 UpdateFunctionCode - AWS LambdaUpdateFunctionCode - AWS Lambda - docs.aws.amazon.com

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

UpdateFunctionCode

Met Ă  jour le code d’une fonction Lambda. Si la signature de code est activĂ©e pour la fonction, le package de code doit ĂȘtre signĂ© par un Ă©diteur de confiance. Pour plus d’informations, consultez Configuration de la signature de code pour Lambda.

Si le type de package de la fonction est Image, vous devez spĂ©cifier le package de code dans ImageUri comme URI d’une image de conteneur dans le registre Amazon ECR.

Si le type de package de la fonction est Zip, vous devez spĂ©cifier que le package de dĂ©ploiement en tant qu’archive de fichiers de type .zip. Saisissez le compartiment Simple Storage Service (Amazon S3) et la clĂ© de l’emplacement du fichier .zip. Vous pouvez Ă©galement fournir le code de fonction en ligne Ă  l’aide du domaine ZipFile.

Le code du package de dĂ©ploiement doit ĂȘtre compatible avec l’architecture de l’ensemble des instructions cible de la fonction (x86-64 ou arm64).

Le code de la fonction est verrouillĂ© lorsque vous publiez une version. Vous ne pouvez pas modifier le code d’une version publiĂ©e, mais uniquement celui d’une version non publiĂ©e.

Note

Pour une fonction dĂ©finie en tant qu’image conteneur, Lambda rĂ©sout l’étiquette d’image en hachage d’image. Dans Amazon ECR, si vous mettez Ă  jour l’étiquette d’image vers une nouvelle image, Lambda ne met pas automatiquement Ă  jour la fonction.

Syntaxe de la demande

PUT /2015-03-31/functions/FunctionName/code HTTP/1.1 Content-type: application/json { "Architectures": [ "string" ], "DryRun": boolean, "ImageUri": "string", "Publish": boolean, "RevisionId": "string", "S3Bucket": "string", "S3Key": "string", "S3ObjectVersion": "string", "ZipFile": blob }

ParamĂštres de demande URI

La demande utilise les paramĂštres URI suivants.

FunctionName

Nom de la fonction Lambda.

Formats de nom
  • Nom de fonction – my-function.

  • ARN de fonction – arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • ARN partiel – 123456789012:function:my-function.

Contrainte de longueur qui s’applique uniquement Ă  l’ARN complet. Si vous spĂ©cifiez uniquement le nom de la fonction, ce dernier est limitĂ© Ă  64 caractĂšres.

Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 140.

ModĂšle : (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-_]+))?

Obligatoire : oui

Corps de la demande

Cette demande accepte les données suivantes au format JSON.

Architectures

Architecture de l’ensemble des instructions prise en charge par la fonction. Saisissez un tableau de chaĂźnes avec l’une des valeurs valides (arm64 ou x86_64). La valeur par dĂ©faut est x86_64.

Type : tableau de chaĂźnes

Membres du tableau : nombre fixe de 1 Ă©lĂ©ment.

Valeurs valides : x86_64 | arm64

Obligatoire : non

DryRun

DĂ©finissez sur true pour valider les paramĂštres de demande et les autorisations d’accĂšs sans modifier le code de la fonction.

Type : valeur boolĂ©enne

Obligatoire : non

ImageUri

URI d’une image de conteneur dans le registre Amazon ECR. Ne l’utilisez pas pour une fonction dĂ©finie avec une archive de fichiers de type .zip.

Type : chaĂźne

Obligatoire : non

Publish

DĂ©finissez sur VRAI pour publier une nouvelle version de la fonction aprĂšs la mise Ă  jour du code. Cela a le mĂȘme effet que l’appel de PublishVersion sĂ©parĂ©ment.

Type : valeur boolĂ©enne

Obligatoire : non

RevisionId

Ne mettez Ă  jour la fonction que si l’ID de rĂ©vision correspond Ă  l’ID spĂ©cifiĂ©. Utilisez cette option pour Ă©viter de modifier une fonction qui a changĂ© depuis la derniĂšre lecture.

Type : chaĂźne

Obligatoire : non

S3Bucket

Compartiment Amazon S3 situĂ© dans la mĂȘme RĂ©gion AWS que votre fonction. Le compartiment peut se trouver sur un autre Compte AWS. Utilisez-le uniquement avec une fonction dĂ©finie avec un package de dĂ©ploiement d’archive de fichiers de type .zip.

Type : chaĂźne

Contraintes de longueur : Longueur minimum de 3. Longueur maximum de 63.

ModĂšle : ^[0-9A-Za-z\.\-_]*(?<!\.)$

Obligatoire : non

S3Key

ClĂ© Amazon S3 du package de dĂ©ploiement. Utilisez-le uniquement avec une fonction dĂ©finie avec un package de dĂ©ploiement d’archive de fichiers de type .zip.

Type : chaĂźne

Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 1024.

Obligatoire : non

S3ObjectVersion

Pour les objets versionnĂ©s, la version de l’objet de package de dĂ©ploiement Ă  utiliser.

Type : chaĂźne

Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 1024.

Obligatoire : non

ZipFile

Contenu codĂ© en base64 du package de dĂ©ploiement. AWS Le kit SDK et les clients AWS CLI gĂšrent l’encodage pour vous. Utilisez-le uniquement avec une fonction dĂ©finie avec un package de dĂ©ploiement d’archive de fichiers de type .zip.

Type : objet de donnĂ©es binaires encodĂ©es en base64

Obligatoire : non

Syntaxe de la réponse

HTTP/1.1 200 Content-type: application/json { "Architectures": [ "string" ], "CodeSha256": "string", "CodeSize": number, "DeadLetterConfig": { "TargetArn": "string" }, "Description": "string", "Environment": { "Error": { "ErrorCode": "string", "Message": "string" }, "Variables": { "string" : "string" } }, "EphemeralStorage": { "Size": number }, "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" } ], "LoggingConfig": { "ApplicationLogLevel": "string", "LogFormat": "string", "LogGroup": "string", "SystemLogLevel": "string" }, "MasterArn": "string", "MemorySize": number, "PackageType": "string", "RevisionId": "string", "Role": "string", "Runtime": "string", "RuntimeVersionConfig": { "Error": { "ErrorCode": "string", "Message": "string" }, "RuntimeVersionArn": "string" }, "SigningJobArn": "string", "SigningProfileVersionArn": "string", "SnapStart": { "ApplyOn": "string", "OptimizationStatus": "string" }, "State": "string", "StateReason": "string", "StateReasonCode": "string", "Timeout": number, "TracingConfig": { "Mode": "string" }, "Version": "string", "VpcConfig": { "Ipv6AllowedForDualStack": boolean, "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ], "VpcId": "string" } }

Eléments de réponse

Si l’action aboutit, le service renvoie une rĂ©ponse HTTP 200.

Les données suivantes sont renvoyées au format JSON par le service.

Architectures

Architecture de l’ensemble des instructions prise en charge par la fonction. L’architecture est un tableau de chaĂźnes avec l’une des valeurs valides. La valeur d’architecture par dĂ©faut est x86_64.

Type : tableau de chaĂźnes

Membres du tableau : nombre fixe de 1 Ă©lĂ©ment.

Valeurs valides : x86_64 | arm64

CodeSha256

Hachage SHA256 du package de dĂ©ploiement de la fonction.

Type : chaĂźne

CodeSize

Taille du package de déploiement de la fonction, exprimée en octets.

Type : long

DeadLetterConfig

File d’attente de lettres mortes de la fonction.

Type : objet DeadLetterConfig

Description

Description de la fonction.

Type : chaĂźne

Contraintes de longueur : Longueur minimum de 0. Longueur maximum de 256.

Environment

Variables d’environnement de la fonction. Omis des journaux AWS CloudTrail.

Type : objet EnvironmentResponse

EphemeralStorage

Taille du rĂ©pertoire /tmp de la fonction en Mo. La valeur par dĂ©faut est 512, mais peut ĂȘtre tout nombre entier compris entre 512 et 10 240 Mo. Pour plus d’informations, consultez la section Configuration du stockage Ă©phĂ©mĂšre (console).

Type : objet EphemeralStorage

FileSystemConfigs

ParamĂštres de connexion pour un systĂšme de fichiers Amazon EFS.

Type : tableau d’objets FileSystemConfig

Membres du tableau : nombre maximum de 1 Ă©lĂ©ment.

FunctionArn

Amazon Resource Name (ARN) de la fonction.

Type : chaĂźne

ModĂšle : 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

Nom de la fonction.

Type : chaĂźne

Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 170.

ModĂšle : (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

Fonction que Lambda appelle pour commencer à exécuter votre fonction.

Type : chaĂźne

Contraintes de longueur : Longueur maximum de 128.

ModĂšle : [^\s]+

ImageConfigResponse

Valeurs de configuration d’image de la fonction.

Type : objet ImageConfigResponse

KMSKeyArn

La AWS KMS key qui est utilisĂ©e pour chiffrer les variables d’environnement de la fonction. Lorsque Lambda SnapStart est activĂ©, cette clĂ© est Ă©galement utilisĂ©e pour chiffrer l'instantanĂ© de la fonction. Cette clĂ© est renvoyĂ©e uniquement si vous avez configurĂ© une clĂ© gĂ©rĂ©e par le client.

Type : chaĂźne

ModĂšle : (arn:(aws[a-zA-Z-]*)?:[a-z0-9-.]+:.*)|()

LastModified

Date et heure de la derniĂšre mise Ă  jour de la fonction, au format ISO-8601 (AAAA-MM-JJThh:mm:ss.sTZD).

Type : chaĂźne

LastUpdateStatus

État de la derniĂšre mise Ă  jour effectuĂ©e sur la fonction. Cette valeur est d’abord dĂ©finie sur Successful une fois la crĂ©ation de la fonction terminĂ©e.

Type : chaĂźne

Valeurs valides : Successful | Failed | InProgress

LastUpdateStatusReason

Motif pour lequel la derniÚre mise à jour a été effectuée sur la fonction.

Type : chaĂźne

LastUpdateStatusReasonCode

Code motif pour lequel la derniÚre mise à jour a effectuée sur la fonction.

Type : chaĂźne

Valeurs valides : EniLimitExceeded | InsufficientRolePermissions | InvalidConfiguration | InternalError | SubnetOutOfIPAddresses | InvalidSubnet | InvalidSecurityGroup | ImageDeleted | ImageAccessDenied | InvalidImage | KMSKeyAccessDenied | KMSKeyNotFound | InvalidStateKMSKey | DisabledKMSKey | EFSIOError | EFSMountConnectivityError | EFSMountFailure | EFSMountTimeout | InvalidRuntime | InvalidZipFileException | FunctionError

Layers

Couches de la fonction.

Type : tableau d’objets Layer

LoggingConfig

Les paramĂštres de configuration Amazon CloudWatch Logs de la fonction.

Type : objet LoggingConfig

MasterArn

Pour les fonctions Lambda @Edge, l’ARN de la fonction maütre.

Type : chaĂźne

ModĂšle : 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

QuantitĂ© de mĂ©moire disponible pour la fonction lors de l’exĂ©cution.

Type : entier

Plage valide : Valeur minimum de 128. Valeur maximum de 10 240.

PackageType

Type de package de dĂ©ploiement. SpĂ©cifiez Image pour l’image de conteneur et Zip pour l’archive de fichier .zip.

Type : chaĂźne

Valeurs valides : Zip | Image

RevisionId

DerniĂšre rĂ©vision mise Ă  jour de la fonction ou de l’alias.

Type : chaĂźne

Role

RĂŽle d’exĂ©cution de la fonction.

Type : chaĂźne

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

Runtime

Identifiant de l’exĂ©cution de la fonction. L’exĂ©cution est requise si le package de dĂ©ploiement est une archive de fichiers de type .zip.

La liste suivante contient les exĂ©cutions obsolĂštes. Pour plus d’informations, consultez la Politique d’obsolescence de l’exĂ©cution.

Type : chaĂźne

Valeurs valides : nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | nodejs10.x | nodejs12.x | nodejs14.x | nodejs16.x | java8 | java8.al2 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | python3.9 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | dotnetcore3.1 | dotnet6 | nodejs4.3-edge | go1.x | ruby2.5 | ruby2.7 | provided | provided.al2 | nodejs18.x | python3.10 | java17 | ruby3.2 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21

RuntimeVersionConfig

L’ARN de l’environnement d’exĂ©cution et toutes les erreurs qui se sont produites.

Type : objet RuntimeVersionConfig

SigningJobArn

ARN de la tĂąche de signature.

Type : chaĂźne

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

SigningProfileVersionArn

ARN de la version du profil de signature.

Type : chaĂźne

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

SnapStart

DĂ©finissez ApplyOn sur PublishedVersions pour crĂ©er un instantanĂ© de l’environnement d’exĂ©cution initialisĂ© lorsque vous publiez une version de fonction. Pour plus d'informations, consultez AmĂ©liorer les performances de dĂ©marrage avec Lambda SnapStart.

Type : objet SnapStartResponse

State

État actuel de la fonction. Lorsque l’état est Inactive, vous pouvez rĂ©activer la fonction en l’invoquant.

Type : chaĂźne

Valeurs valides : Pending | Active | Inactive | Failed

StateReason

Motif de l’état actuel de la fonction.

Type : chaĂźne

StateReasonCode

Code de motif de l’état actuel de la fonction. Lorsque le code est Creating, vous ne pouvez ni invoquer ni modifier la fonction.

Type : chaĂźne

Valeurs valides : Idle | Creating | Restoring | EniLimitExceeded | InsufficientRolePermissions | InvalidConfiguration | InternalError | SubnetOutOfIPAddresses | InvalidSubnet | InvalidSecurityGroup | ImageDeleted | ImageAccessDenied | InvalidImage | KMSKeyAccessDenied | KMSKeyNotFound | InvalidStateKMSKey | DisabledKMSKey | EFSIOError | EFSMountConnectivityError | EFSMountFailure | EFSMountTimeout | InvalidRuntime | InvalidZipFileException | FunctionError

Timeout

DurĂ©e en secondes pendant laquelle Lambda autorise l’exĂ©cution d’une fonction avant de l’arrĂȘter.

Type : entier

Plage valide : valeur minimum de 1.

TracingConfig

Configuration du suivi AWS X-Ray de la fonction.

Type : objet TracingConfigResponse

Version

Version de la fonction Lambda.

Type : chaĂźne

Contraintes de longueur : Longueur minimum de 1. Longueur maximum de 1024.

ModĂšle : (\$LATEST|[0-9]+)

VpcConfig

Configuration réseau de la fonction.

Type : objet VpcConfigResponse

Erreurs

Pour plus d'informations sur les erreurs courantes pour toutes les actions, consultez Erreurs courantes.

CodeSigningConfigNotFoundException

La configuration de signature de code spĂ©cifiĂ©e n’existe pas.

Code d’état HTTP : 404

CodeStorageExceededException

Votre Compte AWS a dĂ©passĂ© sa taille totale maximale de code. Pour plus d’informations, consultez Quotas Lambda.

Code d’état HTTP : 400

CodeVerificationFailedException

La signature de code a Ă©chouĂ© Ă  au moins un contrĂŽle de validation pour cause de non-concordance ou d’expiration de signature, et la politique de signature de code est dĂ©finie sur ENFORCE. Lambda bloque le dĂ©ploiement.

Code d’état HTTP : 400

InvalidCodeSignatureException

La signature du code a Ă©chouĂ© au contrĂŽle d’intĂ©gritĂ©. Si le contrĂŽle d’intĂ©gritĂ© Ă©choue, Lambda bloque le dĂ©ploiement, mĂȘme si la politique de signature de code est dĂ©finie sur WARN.

Code d’état HTTP : 400

InvalidParameterValueException

L’un des paramùtres dans la demande n’est pas valide.

Code d’état HTTP : 400

PreconditionFailedException

La valeur RevisionId fournie ne correspond pas à la derniÚre version de RevisionId la fonction ou de l'alias Lambda. Appelez l'opération GetFunction ou l'GetAliasAPI pour récupérer la derniÚre version RevisionId de votre ressource.

Code d’état HTTP : 412

ResourceConflictException

La ressource existe déjà ou une autre opération est en cours.

Code d’état HTTP : 409

ResourceNotFoundException

La ressource spĂ©cifiĂ©e dans la demande n’existe pas.

Code d’état HTTP : 404

ServiceException

Le service AWS Lambda a rencontré une erreur interne.

Code d’état HTTP : 500

TooManyRequestsException

La limite de dĂ©bit de demande a Ă©tĂ© dĂ©passĂ©e. Pour plus d’informations, consultez Quotas Lambda.

Code d’état HTTP : 429

consultez aussi

Pour plus d’informations sur l’utilisation de cette API dans l’un des kits SDK AWS spĂ©cifiques au langage, consultez les ressources suivantes :