sam local invoke - AWS Serverless Application Model

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.

sam local invoke

Cette page fournit des informations de référence pour l'interface de ligne de AWS Serverless Application Model commande (AWS SAM CLI) sam local invoke sous-commande.

La sam local invoke sous-commande lance un appel unique d'une fonction localement. AWS Lambda

Utilisation

$ sam local invoke <arguments> <options>
Note

Si plusieurs fonctions sont définies dans votre AWS SAM modèle, indiquez l'ID logique de la fonction que vous souhaitez invoquer.

Arguments

ID de ressource

ID de la fonction Lambda à appeler.

Cet argument est facultatif. Si votre application contient une seule fonction Lambda, elle l' AWS SAM CLIinvoquera. Si votre application contient plusieurs fonctions, indiquez l'ID de la fonction à invoquer.

Valeurs valides : ID logique ou ressource de la ressourceARN.

Options

--add-host LIST

Transmet un mappage de nom d'hôte à adresse IP au fichier hôte du conteneur Docker. Ce paramètre peut être transmis plusieurs fois.

Exemple : --add-host example.com:127.0.0.1

--beta-features | --no-beta-features

Autorisez ou refusez les fonctionnalités bêta.

--config-env TEXT

Le nom d’environnement spécifiant les valeurs de paramètre par défaut dans le fichier de configuration à utiliser. La valeur par défaut est « par défaut ». Pour plus d'informations sur les fichiers de configuration, consultez AWS SAM CLI Fichier de configuration  .

--config-file PATH

Le chemin d’accès et le nom du fichier de configuration contenant les valeurs de paramètres par défaut à utiliser. La valeur par défaut est « samconfig.toml » dans la racine du répertoire du projet. Pour plus d’informations sur les fichiers de configuration, consultez AWS SAM CLI Fichier de configuration  .

--container-env-vars

(Facultatif) Transmettez les variables d’environnement au conteneur d’images de la fonction Lambda lors du débogage local.

--container-host TEXT

Hôte du conteneur Lambda émulé localement. La valeur par défaut est localhost. Si tu veux courir AWS SAM CLI dans un conteneur Docker sous macOS, vous pouvez spécifierhost.docker.internal. Si vous souhaitez exécuter le conteneur sur un hôte différent de AWS SAM CLI, vous pouvez spécifier l'adresse IP de l'hôte distant.

--container-host-interface TEXT

L’adresse IP de l’interface de réseau hôte à laquelle les ports de conteneur doivent se relier. La valeur par défaut est 127.0.0.1. Utiliser 0.0.0.0 pour se lier à toutes les interfaces.

--debug

Active la journalisation du débogage pour imprimer les messages de débogage indiquant que AWS SAM CLI génère et pour afficher les horodatages.

--debug-args TEXT

Arguments facultatifs à transmettre au débogueur.

--debug-port, -d TEXT

Si spécifié, cela démarre le conteneur de la fonction Lambda en mode débogage et expose ce port sur l’hôte local.

--debugger-path TEXT

Chemin d’accès de l’hôte vers un débogueur monté dans le conteneur Lambda.

--docker-network TEXT

Le nom ou l’identifiant d’un réseau Docker existant auquel les conteneurs Docker Lambda doivent se connecter, avec le réseau de pont par défaut. Si cela n’est pas spécifié, les conteneurs Lambda se connectent uniquement au réseau Docker de pont par défaut.

--docker-volume-basedir, -v TEXT

Emplacement du répertoire de base dans lequel se trouve le AWS SAM fichier. Si Docker est exécuté sur une machine distante, vous devez monter le chemin où se trouve le AWS SAM fichier sur la machine Docker et modifier cette valeur pour qu'elle corresponde à la machine distante.

--env-vars, -n PATH

JSONFichier contenant les valeurs des variables d'environnement de la fonction Lambda. Pour plus d’informations sur les fichiers de variables d’environnement, consultez Fichier de variable d'environnement.

--event, -e PATH

Le JSON fichier contenant les données d'événements transmises à la fonction Lambda lors de son appel. Si vous ne spécifiez pas cette option, aucun événement n’est assumé. Pour entrer JSON depuisstdin, vous devez transmettre la valeur « - ». Pour plus d'informations sur les formats de messages d'événements provenant de différents AWS services, consultez la section Utilisation d'autres services dans le Guide du AWS Lambda développeur.

--force-image-build

Spécifie si le AWS SAM CLI devrait reconstruire l'image utilisée pour appeler les fonctions Lambda avec des couches.

--help

Affiche ce message, puis se ferme.

--hook-name TEXT

Le nom du hook utilisé pour étendre AWS SAM CLI fonctionnalité.

Valeurs acceptées : terraform.

--invoke-image TEXT

L'image URI du conteneur que vous souhaitez utiliser pour l'invocation de la fonction locale. Par défaut, AWS SAM extrait l'image du conteneur depuis Amazon ECR Public (qui est répertoriée dansRéférentiels d'images pour AWS SAM). Utilisez cette option pour extraire l’image à partir d’un autre emplacement.

Par exemple, sam local invoke MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8.

--layer-cache-basedir DIRECTORY

Spécifie l’emplacement du répertoire de base dans lequel les couches utilisées par le modèle sont téléchargées.

--log-file, -l TEXT

Le fichier journal vers lequel envoyer les journaux d’exécution.

--no-event

Appelle la fonction avec un événement vide.

--parameter-overrides

Chaîne contenant des remplacements de AWS CloudFormation paramètres codés sous forme de paires clé-valeur. Utilisez le même format que le AWS Command Line Interface (AWS CLI). Le AWS SAM CLI le format correspond à des mots clés et valeurs explicites, chaque remplacement étant séparé par un espace. Voici deux exemples :

  • --parameter-overrides ParameterKey=hello,ParameterValue=world

  • --parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana

--profile TEXT

Le profil spécifique de votre fichier d'informations d'identification qui obtient les AWS informations d'identification.

--region TEXT

AWS Région dans laquelle le déploiement doit être effectué. Par exemple, us-east-1.

--save-params

Enregistrez les paramètres que vous fournissez sur la ligne de commande dans le fichier AWS SAM de configuration.

--shutdown

Imite un événement d’arrêt une fois l’appel terminé, afin de tester la gestion des extensions du comportement d’arrêt.

--skip-prepare-infra

Ignore l'étape de préparation si aucune modification d'infrastructure n'a été apportée. À utiliser avec l'option --hook-name.

--skip-pull-image

Par défaut, le AWS SAM CLI vérifie le dernier environnement d'exécution à distance de Lambda et met automatiquement à jour votre image locale pour rester synchronisée.

Spécifiez cette option pour ne pas faire défiler la dernière Docker image pour votre environnement d'exécution Lambda.

--template, -t PATH

Le fichier AWS SAM modèle.

Cette option n'est pas compatible avec --hook-name.

Note

Si vous spécifiez cette option, AWS SAM charge uniquement le modèle et les ressources locales vers lesquels il pointe.

--terraform-plan-file

Le chemin relatif ou absolu vers votre local Terraform fichier de plan lors de l'utilisation du AWS SAM CLI avec Terraform Cloud. Cette option nécessite qu'elle --hook-name soit définie surterraform.

Exemple

L'exemple suivant utilise un événement généré à des fins de test local en utilisant un s3.json événement pour appeler une fonction Lambda localement.

$ sam local invoke --event events/s3.json S3JsonLoggerFunction