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.
déploiement sam
Cette page fournit des informations de référence pour la AWS Serverless Application Model commande Command Line Interface (AWS SAMCLI)sam deploy.
-
Pour une introduction à la AWS SAMCLI, voir Qu'est-ce que AWS SAM INTERFACE DE LIGNE DE COMMANDE (CLI)?
-
Pour obtenir de la documentation sur l'utilisation de la AWS SAMCLI
sam deploycommande, consultezPrésentation du déploiement avec AWS SAM.
La sam deploy commande déploie une application sur l'utilisateur AWS Cloud . AWS CloudFormation
Usage
$<environment variables>sam deploy<options>
Variables d’environnement
SAM_CLI_POLL_DELAY-
Définissez la variable d'
SAM_CLI_POLL_DELAYenvironnement avec une valeur de secondes dans votre shell pour configurer la fréquence à laquelle l'interface de ligne de commande AWS SAM vérifie l'état de la CloudFormation pile, ce qui est utile lorsque vous constatez une limitation de. CloudFormation Cette variable d'environnement est utilisée pour interroger les appelsdescribe_stackd'API, qui sont effectués pendant l'exécutionsam deploy.Voici un exemple de cette variable :
$SAM_CLI_POLL_DELAY=5sam deploy
Options
--capabilitiesLIST-
Liste des fonctionnalités que vous devez spécifier pour CloudFormation permettre la création de certaines piles. Certains modèles de pile peuvent inclure des ressources qui affectent vos autorisations Compte AWS, par exemple en créant de nouveaux utilisateurs Gestion des identités et des accès AWS (IAM). Pour ces piles, vous devez explicitement reconnaître leurs capacités en spécifiant cette option. Les seules valeurs valides sont
CAPABILITY_IAMetCAPABILITY_NAMED_IAM. Si vous disposez de ressources IAM, vous pouvez spécifier l'une ou l'autre de ces capacités. Si vous disposez de ressources IAM avec des noms personnalisés, vous devez spécifierCAPABILITY_NAMED_IAM. Si vous ne spécifiez pas cette option, l'opération renvoie une erreurInsufficientCapabilities.Lorsque vous déployez une application qui contient des applications imbriquées, vous devez utiliser
CAPABILITY_AUTO_EXPANDpour confirmer que l'application contient des applications imbriquées. Pour de plus amples informations, veuillez consulter Déploiement d'applications imbriquées. --config-envTEXT-
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
default. Pour plus d'informations sur les fichiers de configuration, consultez Fichier de configuration CLI AWS SAM. --config-filePATH-
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à la racine du répertoire du projet. Pour plus d'informations sur les fichiers de configuration, consultez Fichier de configuration CLI AWS SAM. --confirm-changeset | --no-confirm-changeset-
Invite à confirmer si la CLI AWS SAM déploie le jeu de modifications calculé.
--debug-
Activez la journalisation de débogage pour imprimer le message de débogage généré par la CLI AWS SAM et pour afficher les horodatages.
--disable-rollback | --no-disable-rollback-
Spécifiez s'il faut annuler votre CloudFormation stack en cas d'erreur lors d'un déploiement. Par défaut, en cas d'erreur lors d'un déploiement, votre CloudFormation stack revient à son dernier état stable. Si vous spécifiez
--disable-rollbacket une erreur se produit pendant un déploiement, les ressources créées ou mises à jour avant l'erreur ne sont pas restaurées. --express | --no-express-
Spécifie s'il faut utiliser le mode CloudFormation Express. Lorsqu'elle est active, les opérations de pile se terminent une fois que la configuration des ressources est appliquée. Les ressources continuent d'être prêtes en arrière-plan. Le temps de déploiement peut être réduit jusqu'à 4 fois.
AWS SAMCLITransmet le comportement d'annulation au CloudFormation
DeploymentConfigparamètre lorsque vous le spécifiez--disable-rollbackégalement.La valeur par défaut est
--no-express. --fail-on-empty-changeset | --no-fail-on-empty-changeset-
Indiquez s'il faut renvoyer un code de sortie différent de zéro s'il n'existe aucune modification à apporter à la pile. Le comportement par défaut consiste à renvoyer un code de sortie autre que zéro.
--force-upload-
Spécifiez cette option pour télécharger des artefacts, même s’ils correspondent à des artefacts existants dans le compartiment Amazon S3. Les artefacts correspondants sont remplacés.
--guided, -g-
Spécifiez cette option pour que la CLI AWS SAM utilise des invites pour vous guider tout au long du déploiement.
--help-
Affichez ce message et quittez.
--image-repositoriesTEXT-
Un mappage des fonctions vers l'URI de leur référentiel Amazon ECR. Référencez les fonctions par leur identifiant logique. Voici un exemple :
$sam deploy --image-repositoriesFunction1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repoVous pouvez spécifier cette option plusieurs fois au sein d'une même commande.
--image-repositoryTEXT-
Le nom du référentiel Amazon ECR vers lequel cette commande charge l'image de la fonction. Cette option est requise pour les fonctions déclarées avec le type de package
Image. --kms-key-idTEXT-
L'ID d'une clé AWS Key Management Service (AWS KMS) utilisée pour chiffrer les artefacts qui sont au repos dans le compartiment Amazon S3. Si vous ne spécifiez pas cette option, elle AWS SAM utilise les clés de S3-managed chiffrement Amazon.
--metadata-
Une carte de métadonnées à attacher à tous les artefacts référencés dans le modèle.
--no-execute-changeset-
Indique s'il faut appliquer le jeu de modifications. Spécifiez cette option si vous voulez afficher les modifications de la pile avant d'appliquer le jeu de modifications. Cette commande crée un jeu de modifications CloudFormation puis se termine sans appliquer le jeu de modifications. Pour appliquer le jeu de modifications, exécutez la même commande sans cette option.
--no-progressbar-
N’affichez pas de barre de progression lors du téléchargement d’artefacts sur Amazon S3.
--notification-arnsLIST-
Liste des ARN de rubrique Amazon Simple Notification Service (Amazon SNS) CloudFormation associés à la pile.
--on-failure [ROLLBACK | DELETE | DO_NOTHING]-
Spécifiez l'action à entreprendre lorsqu'une pile ne peut pas être créée.
Les options suivantes sont disponibles :
-
ROLLBACK– Récupère la pile à un état antérieur connu et valide. -
DELETE– Récupère la pile à un état antérieur connu et valide, s'il en existe un. Sinon, supprime la pile. -
DO_NOTHING– Ne récupère ni ne supprime la pile. L'effet est le même que celui de--disable-rollback.
Le comportement par défaut est
ROLLBACK.Note
Vous pouvez spécifier l'
--disable-rollbackoption ou l'--on-failureoption, mais pas les deux. -
--output[ text | json ]-
Format de la sortie de commande :
-
text— Imprime une sortie régulière et lisible par l'homme. C’est la valeur par défaut. -
json— Imprime une sortie structurée et lisible par machine. Utilisez ce format lorsque vous souhaitez utiliser la sortie par programmation, par exemple dans les CI/CD pipelines, les extensions IDE et AI-assisted les outils.
Un déploiement s'effectue sur une certaine période. Lorsque vous spécifiez
--output json, le flux d'objets JSON est AWS SAMCLI imprimé, un par ligne, au fur et à mesure de la progression du déploiement. Chaque objet comprend untypechamp qui identifie le type d'informations qu'il contient, telles que l'ensemble de modifications, les événements de déploiement, les sorties de la pile et le résultat final. En cas d'échec, l'objet final inclut unerrorobjet qui décrit ce qui s'est mal passé.Note
L'
--output jsonoption n'est pas compatible avec les options qui nécessitent des instructions interactives, telles que--guidedet--confirm-changeset. -
--parameter-overridesLIST-
Chaîne contenant des remplacements de CloudFormation paramètres codés sous forme de paires clé-valeur. Chaque remplacement utilise le format.
ParameterKey=name,ParameterValue=valueLes remplacements multiples sont séparés par des espaces. Voici deux exemples :$sam deploy --parameter-overridesParameterKey=value1,ParameterValue=value2$sam deploy --parameter-overridesParameterKey=value1,ParameterValue=value2 ParameterKey=hello,ParameterValue=world ParameterKey=apple,ParameterValue=banana --profileTEXT-
Le profil spécifique de votre fichier d'informations d'identification qui permet d'obtenir les AWS informations d'identification.
--regionTEXT-
Le Région AWS vers lequel déployer. Par exemple, us-east-1.
--resolve-image-repos-
Créez automatiquement des référentiels Amazon ECR à utiliser pour l’empaquetage et le déploiement de déploiements non guidés. Cette option s’applique uniquement aux fonctions et aux couches avec un
PackageType: Imagespécifié. Si vous spécifiez l'option--guided, la CLI AWS SAM ignore--resolve-image-repos.Note
Si vous créez AWS SAM automatiquement des référentiels Amazon ECR pour des fonctions ou des couches avec cette option, et que vous supprimez ultérieurement ces fonctions ou couches de votre AWS SAM modèle, les référentiels Amazon ECR correspondants sont automatiquement supprimés.
--resolve-s3-
Créez automatiquement un compartiment Amazon S3 à utiliser pour l’empaquetage et le déploiement de déploiements non guidés. Si vous spécifiez l'option
--guided, l'interface CLI AWS SAM ignore--resolve-s3. Si vous spécifiez les deux options--s3-bucketet--resolve-s3, une erreur se produit. --role-arnTEXT-
Le nom de ressource Amazon (ARN) d'un rôle IAM qui est CloudFormation assumé lors de l'application de l'ensemble de modifications.
--s3-bucketTEXT-
Le nom du compartiment Amazon S3 dans lequel cette commande télécharge votre CloudFormation modèle. Si le modèle a une taille supérieure à 51 200 octets, l'option
--s3-bucketou l'option--resolve-s3est obligatoire. Si vous spécifiez les deux options--s3-bucketet--resolve-s3, une erreur se produit. --s3-prefixTEXT-
Le préfixe ajouté aux noms des artefacts téléchargés vers le compartiment Amazon S3. Le nom du préfixe est un nom de chemin d'accès (nom de dossier) pour le compartiment Amazon S3.
--save-params-
Enregistrez les paramètres que vous fournissez sur la ligne de commande dans le fichier AWS SAM de configuration.
--signing-profilesLIST-
Liste des profils de signature pour signer les packages de déploiement. Cette option prend une liste de paires valeur clé, où la clé est le nom de la fonction ou de la couche à signer et la valeur est le profil de signature, avec un propriétaire de profil optionnel délimité par
:. Par exemple,FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner. --stack-nameTEXT-
(Obligatoire) Le nom de la CloudFormation pile sur laquelle vous effectuez le déploiement. Si vous spécifiez une pile existante, la commande met à jour la pile. Si vous spécifiez une nouvelle pile, celle-ci est créée par la commande.
-
Liste de balises à associer à la pile créée ou mise à jour. CloudFormation propage également ces balises aux ressources de la pile qui les supportent.
--template-file, --template, -tPATH-
Le chemin et le nom du fichier où se trouve votre AWS SAM modèle.
Note
Si vous spécifiez cette option, vous AWS SAM déployez uniquement le modèle et les ressources locales vers lesquelles il pointe.
--use-json-
Sortie JSON pour le CloudFormation modèle. La sortie par défaut est YAML.
Exemple
Pour un exemple détaillé et une présentation détaillée de l'utilisation de la sam deploy sous-commande, reportez-vous à. Présentation du déploiement avec AWS SAM