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.
AWS Lambda référence d'action de déploiement
Vous utilisez une action de AWS Lambda déploiement pour gérer le déploiement de votre code d'application pour votre déploiement sans serveur. Vous pouvez déployer une fonction et utiliser des stratégies de déploiement pour le déploiement du trafic comme suit :
-
Canary et déploiements linéaires pour le transfert du trafic
-
Déploiements en une seule fois
Note
Cette action n'est prise en charge que pour les pipelines de type V2.
Rubriques
Type d'action
-
Catégorie :
Deploy
-
Propriétaire :
AWS
-
Fournisseur :
Lambda
-
Version :
1
Paramètres de configuration
- FunctionName
-
Obligatoire : oui
Le nom de la fonction que vous avez créée dans Lambda, par exemple.
MyLambdaFunction
Vous devez déjà avoir créé une version.
- FunctionAlias
-
Obligatoire : non
Alias de la fonction que vous avez créée dans Lambda et sur laquelle vous souhaitez être déployée, par exemple.
live
L'alias doit exister et être associé à une version lorsque l'exécution de l'action commence. (Ce sera la version cible du rollback.)S'il n'est pas fourni, l'action déploie l'artefact source vers une nouvelle version
$LATEST
et en crée une nouvelle. Dans ce cas d'utilisation, la stratégie de déploiement et les options de version cible ne sont pas disponibles. - PublishedTargetVersion
-
Obligatoire : non
Version de la fonction Lambda souhaitée pour le déploiement. FunctionAlias Il peut s'agir de variables de pipeline ou de niveau d'action, telles que
#{variables.lambdaTargetVersion}
. La version doit être publiée au début de l'exécution de l'action.Obligatoire si aucun artefact d'entrée n'est fourni.
- DeployStrategy
-
Obligatoire : Non (la valeur par défaut est
AllAtOnce
)Détermine le taux adopté par l'action de déploiement Lambda pour transférer le trafic de la version d'origine de la fonction Lambda vers la nouvelle version pour. FunctionAlias Les stratégies de déploiement disponibles sont canariennes ou linéaires. Formats acceptés :
-
AllAtOnce
-Transfère immédiatement tout le trafic vers les fonctions Lambda mises à jour.
Si ce n'est pas spécifié, la valeur par défaut est
AllAtOnce
) -
Canary10Percent5Minutes
- Transfère 10 % du trafic au premier incrément. Les 90 % restants sont déployés 5 minutes plus tard.Les valeurs du pourcentage et des minutes peuvent être modifiées.
-
Linear10PercentEvery1Minute
- Transfère 10 % du trafic chaque minute jusqu'à ce que tout le trafic soit transféré.Les valeurs du pourcentage et des minutes peuvent être modifiées.
Les considérations suivantes s'appliquent à ce champ :
-
Le temps d'attente total maximal est de 2 jours.
-
Disponible uniquement lorsque cela FunctionAliasest fourni.
-
- Alertes
-
Obligatoire : non
Liste séparée par des virgules des noms d'alarme configurés pour le déploiement Lambda. Au maximum, 10 alarmes peuvent être ajoutées. L'action échoue lorsque les alarmes surveillées passent à l'état ALARM.
L'image suivante montre un exemple de page d'édition pour l'action.

Artefacts d'entrée
-
Nombre d'objets :
1
-
Description : les fichiers fournis, le cas échéant, pour prendre en charge les actions du script lors du déploiement.
Artefacts de sortie
-
Nombre d'objets :
0
-
Description : les artefacts de sortie ne s'appliquent pas à ce type d'action.
Variables de sortie
Lorsque cette action est configurée, elle produit des variables qui peuvent être référencées par la configuration d'action d'une action en aval dans le pipeline. Cette action produit des variables qui peuvent être visualisées en tant que variables de sortie, même si l'action n'a pas d'espace de noms. Vous configurez une action avec un espace de noms pour rendre ces variables disponibles pour la configuration des actions en aval.
Pour de plus amples informations, veuillez consulter Référence aux variables.
- FunctionVersion
-
La nouvelle version de la fonction Lambda qui a été déployée.
Autorisations relatives à la politique des rôles de service pour l'action de déploiement Lambda
Lors de l' CodePipeline exécution de l'action, le rôle de CodePipeline service nécessite les autorisations suivantes, définies de manière appropriée pour l'accès avec le moins de privilèges.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "StatementForLambda", "Effect": "Allow", "Action": [ "lambda:GetAlias", "lambda:GetFunctionConfiguration", "lambda:GetProvisionedConcurrencyConfig", "lambda:PublishVersion", "lambda:UpdateAlias", "lambda:UpdateFunctionCode" ], "Resource": [ "arn:aws:lambda:aws:{{customerAccountId}}:function:{{FunctionName}}", "arn:aws:lambda:aws:{{customerAccountId}}:function:{{FunctionName}}:*" ] }, { "Sid": "StatementForCloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:DescribeAlarms" ], "Resource": [ "arn:aws:cloudwatch:aws:{{customerAccountId}}:alarm:{{AlarmNames}}" ] }, { "Sid": "StatementForLogs1", "Effect": "Allow", "Action": [ "logs:CreateLogGroup" ], "Resource": [ "arn:aws:logs:aws:{{customerAccountId}}:log-group:/aws/codepipeline/{{pipelineName}}", "arn:aws:logs:aws:{{customerAccountId}}:log-group:/aws/codepipeline/{{pipelineName}}:*" ] }, { "Sid": "StatementForLogs2", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:aws:{{customerAccountId}}:log-group:/aws/codepipeline/{{pipelineName}}:log-stream:*" ] } ] }
Déclaration d'action
Consultez aussi
Les ressources connexes suivantes peuvent s'avérer utiles dans le cadre de l'utilisation de cette action.
-
Tutoriel : Déploiements de fonctions Lambda avec CodePipeline— Ce didacticiel explique comment créer un exemple de fonction Lambda dans lequel vous allez créer un alias et une version, ajouter la fonction Lambda compressée à votre emplacement source et exécuter l'action Lambda dans votre pipeline.