Présentation du déploiement avec AWS SAM - 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.

Présentation du déploiement avec AWS SAM

Utilisez l'interface AWS Serverless Application Model de ligne de commande (AWS SAM CLI) sam deploy pour déployer votre application sans serveur sur le AWS Cloud.

Prérequis

Pour l'utilisersam deploy, installez AWS SAM CLI en complétant ce qui suit :

Avant d'utiliser sam deploy, nous vous recommandons d'avoir des connaissances de base sur les points suivants :

Déploiement d'applications avec sam deploy

Lorsque vous déployez une application sans serveur pour la première fois, utilisez l'option --guided. Le AWS SAM CLI vous guidera à travers un flux interactif pour configurer les paramètres de déploiement de votre application.

Pour déployer une application à l'aide du flux interactif
  1. Accédez au répertoire racine de votre projet. Il s'agit du même emplacement que celui de votre AWS SAM modèle.

    $ cd sam-app
  2. Exécutez la commande suivante :

    $ sam deploy --guided
  3. Au cours du flux interactif, le AWS SAM CLI vous propose des options pour configurer les paramètres de déploiement de votre application.

    Les crochets ([ ]) indiquent les valeurs par défaut. Laissez la réponse vide pour sélectionner la valeur par défaut. Les valeurs par défaut sont obtenues à partir des fichiers de configuration suivants :

    • ~/.aws/config— Les paramètres généraux de votre AWS compte.

    • ~/.aws/credentials— Les informations d'identification de votre AWS compte.

    • <project>/samconfig.toml : le fichier de configuration de votre projet.

    Fournissez des valeurs en répondant aux AWS SAM CLI invite. Par exemple, vous pouvez saisir y pour oui, n pour non ou des valeurs de chaîne.

    Le AWS SAM CLI écrit vos réponses dans le samconfig.toml fichier de votre projet. Pour les déploiements suivants, vous pouvez utiliser sam deploy pour déployer à l'aide de ces valeurs configurées. Pour reconfigurer ces valeurs, utilisez à nouveau sam deploy --guided ou modifiez directement vos fichiers de configuration.

    Voici un exemple de résultat :

    sam-app $ sam deploy --guided Configuring SAM deploy ====================== Looking for config file [samconfig.toml] : Found Reading default arguments : Success Setting default arguments for 'sam deploy' ========================================= Stack Name [sam-app]: ENTER AWS Region [us-west-2]: ENTER #Shows you resources changes to be deployed and require a 'Y' to initiate deploy Confirm changes before deploy [Y/n]: ENTER #SAM needs permission to be able to create roles to connect to the resources in your template Allow SAM CLI IAM role creation [Y/n]: ENTER #Preserves the state of previously provisioned resources when an operation fails Disable rollback [y/N]: ENTER HelloWorldFunction may not have authorization defined, Is this okay? [y/N]: y Save arguments to configuration file [Y/n]: ENTER SAM configuration file [samconfig.toml]: ENTER SAM configuration environment [default]: ENTER
  4. Ensuite, le AWS SAM CLI déploie votre application sur le. AWS Cloud Pendant le déploiement, la progression s'affiche dans votre invite de commande. Les principales étapes du déploiement sont les suivantes :

    • Pour les applications dont AWS Lambda les fonctions sont regroupées sous forme d'archive de fichiers .zip, AWS SAM CLI compresse et télécharge le package dans un compartiment Amazon Simple Storage Service (Amazon S3). Si nécessaire, le AWS SAM CLI créera un nouveau compartiment.

    • Pour les applications utilisant un package de fonctions Lambda sous forme d'image de conteneur, le AWS SAM CLI télécharge l'image sur Amazon Elastic Container Registry (AmazonECR). Si nécessaire, le AWS SAM CLI créera un nouveau dépôt.

    • Le AWS SAM CLI crée un ensemble de AWS CloudFormation modifications et déploie votre application AWS CloudFormation sous forme de pile.

    • Le AWS SAM CLI modifie votre AWS SAM modèle déployé avec la nouvelle CodeUri valeur de vos fonctions Lambda.

    Voici un exemple de AWS SAM CLI sortie de déploiement :

    Looking for resources needed for deployment: Managed S3 bucket: aws-sam-cli-managed-default-samcliamzn-s3-demo-source-bucket-1a4x26zbcdkqr A different default S3 bucket can be set in samconfig.toml and auto resolution of buckets turned off by setting resolve_s3=False Parameter "stack_name=sam-app" in [default.deploy.parameters] is defined as a global parameter [default.global.parameters]. This parameter will be only saved under [default.global.parameters] in /Users/.../sam-app/samconfig.toml. Saved arguments to config file Running 'sam deploy' for future deployments will use the parameters saved above. The above parameters can be changed by modifying samconfig.toml Learn more about samconfig.toml syntax at https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-config.html Uploading to sam-app-zip/da3c598813f1c2151579b73ad788cac8 262144 / 619839 (42.29%)Uploading to sam-app-zip/da3c598813f1c2151579b73ad788cac8 524288 / 619839 (84.58%)Uploading to sam-app-zip/da3c598813f1c2151579b73ad788cac8 619839 / 619839 (100.00%) Deploying with following values =============================== Stack name : sam-app Region : us-west-2 Confirm changeset : True Disable rollback : False Deployment s3 bucket : aws-sam-cli-managed-default-samcliamzn-s3-demo-source-bucket-1a4x26zbcdkqr Capabilities : ["CAPABILITY_IAM"] Parameter overrides : {} Signing Profiles : {} Initiating deployment ===================== Uploading to sam-app-zip/be84c20f868068e4dc4a2c11966edf2d.template 1212 / 1212 (100.00%) Waiting for changeset to be created.. CloudFormation stack changeset ------------------------------------------------------------------------------------------------- Operation LogicalResourceId ResourceType Replacement ------------------------------------------------------------------------------------------------- + Add HelloWorldFunctionHell AWS::Lambda::Permissio N/A oWorldPermissionProd n + Add HelloWorldFunctionRole AWS::IAM::Role N/A + Add HelloWorldFunction AWS::Lambda::Function N/A + Add ServerlessRestApiDeplo AWS::ApiGateway::Deplo N/A yment47fc2d5f9d yment + Add ServerlessRestApiProdS AWS::ApiGateway::Stage N/A tage + Add ServerlessRestApi AWS::ApiGateway::RestA N/A pi ------------------------------------------------------------------------------------------------- Changeset created successfully. arn:aws:cloudformation:us-west-2:012345678910:changeSet/samcli-deploy1680559234/d9f58a77-98bc-41cd-b9f4-433a5a450d7a Previewing CloudFormation changeset before deployment ====================================================== Deploy this changeset? [y/N]: y 2023-04-03 12:00:50 - Waiting for stack create/update to complete CloudFormation events from stack operations (refresh every 5.0 seconds) ------------------------------------------------------------------------------------------------- ResourceStatus ResourceType LogicalResourceId ResourceStatusReason ------------------------------------------------------------------------------------------------- CREATE_IN_PROGRESS AWS::IAM::Role HelloWorldFunctionRole - CREATE_IN_PROGRESS AWS::IAM::Role HelloWorldFunctionRole Resource creation Initiated CREATE_COMPLETE AWS::IAM::Role HelloWorldFunctionRole - CREATE_IN_PROGRESS AWS::Lambda::Function HelloWorldFunction - CREATE_IN_PROGRESS AWS::Lambda::Function HelloWorldFunction Resource creation Initiated CREATE_COMPLETE AWS::Lambda::Function HelloWorldFunction - CREATE_IN_PROGRESS AWS::ApiGateway::RestA ServerlessRestApi - pi CREATE_IN_PROGRESS AWS::ApiGateway::RestA ServerlessRestApi Resource creation pi Initiated CREATE_COMPLETE AWS::ApiGateway::RestA ServerlessRestApi - pi CREATE_IN_PROGRESS AWS::Lambda::Permissio HelloWorldFunctionHell - n oWorldPermissionProd CREATE_IN_PROGRESS AWS::ApiGateway::Deplo ServerlessRestApiDeplo - yment yment47fc2d5f9d CREATE_IN_PROGRESS AWS::Lambda::Permissio HelloWorldFunctionHell Resource creation n oWorldPermissionProd Initiated CREATE_IN_PROGRESS AWS::ApiGateway::Deplo ServerlessRestApiDeplo Resource creation yment yment47fc2d5f9d Initiated CREATE_COMPLETE AWS::ApiGateway::Deplo ServerlessRestApiDeplo - yment yment47fc2d5f9d CREATE_IN_PROGRESS AWS::ApiGateway::Stage ServerlessRestApiProdS - tage CREATE_IN_PROGRESS AWS::ApiGateway::Stage ServerlessRestApiProdS Resource creation tage Initiated CREATE_COMPLETE AWS::ApiGateway::Stage ServerlessRestApiProdS - tage CREATE_COMPLETE AWS::Lambda::Permissio HelloWorldFunctionHell - n oWorldPermissionProd CREATE_COMPLETE AWS::CloudFormation::S sam-app-zip - tack ------------------------------------------------------------------------------------------------- CloudFormation outputs from deployed stack ------------------------------------------------------------------------------------------------- Outputs ------------------------------------------------------------------------------------------------- Key HelloWorldFunctionIamRole Description Implicit IAM Role created for Hello World function Value arn:aws:iam::012345678910:role/sam-app-zip- HelloWorldFunctionRole-11ZOGSCG28H0M Key HelloWorldApi Description API Gateway endpoint URL for Prod stage for Hello World function Value https://njzfhdmls0.execute-api.us-west-2.amazonaws.com/Prod/hello/ Key HelloWorldFunction Description Hello World Lambda Function ARN Value arn:aws:lambda:us-west-2:012345678910:function:sam-app- HelloWorldFunction-XPqNX4TBu7qn ------------------------------------------------------------------------------------------------- Successfully created/updated stack - sam-app-zip in us-west-2
  5. Pour visualiser votre application déployée, procédez comme suit :

    1. Ouvrez la AWS CloudFormation console directement avec URL https://console.aws.amazon.com/cloudformation.

    2. Sélectionner Piles

    3. Identifiez votre pile par le nom de l'application et sélectionnez-la.

Vérifiez les modifications avant le déploiement

Vous pouvez configurer AWS SAM CLI pour afficher votre ensemble de AWS CloudFormation modifications et demander confirmation avant le déploiement.

Pour confirmer les modifications avant le déploiement
  1. Lors de sam deploy --guided, saisissez Y pour confirmer les modifications avant le déploiement.

    #Shows you resources changes to be deployed and require a 'Y' to initiate deploy
    Confirm changes before deploy [Y/n]: Y

    Vous pouvez également modifier votre fichier samconfig.toml comme suit :

    [default.deploy]
    [default.deploy.parameters]
    confirm_changeset = true
  2. Au cours du déploiement, le AWS SAM CLI vous demandera de confirmer les modifications avant le déploiement. Voici un exemple :

    Waiting for changeset to be created.. CloudFormation stack changeset ------------------------------------------------------------------------------------------------- Operation LogicalResourceId ResourceType Replacement ------------------------------------------------------------------------------------------------- + Add HelloWorldFunctionHell AWS::Lambda::Permissio N/A oWorldPermissionProd n + Add HelloWorldFunctionRole AWS::IAM::Role N/A + Add HelloWorldFunction AWS::Lambda::Function N/A + Add ServerlessRestApiDeplo AWS::ApiGateway::Deplo N/A yment47fc2d5f9d yment + Add ServerlessRestApiProdS AWS::ApiGateway::Stage N/A tage + Add ServerlessRestApi AWS::ApiGateway::RestA N/A pi ------------------------------------------------------------------------------------------------- Changeset created successfully. arn:aws:cloudformation:us-west-2:012345678910:changeSet/samcli-deploy1680559234/d9f58a77-98bc-41cd-b9f4-433a5a450d7a Previewing CloudFormation changeset before deployment ====================================================== Deploy this changeset? [y/N]: y

Spécifier des paramètres supplémentaires lors du déploiement

Vous pouvez spécifier des valeurs de paramètres supplémentaires à configurer lors du déploiement. Pour ce faire, modifiez votre modèle AWS SAM et configurez la valeur de votre paramètre pendant le déploiement.

Pour spécifier des paramètres supplémentaires
  1. Modifiez la Parameters section de votre AWS SAM modèle. Voici un exemple :

    AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Globals: ... Parameters: DomainName: Type: String Default: example Description: Domain name
  2. Exécutez sam deploy --guided. Voici un exemple de résultat :

    sam-app $ sam deploy --guided Configuring SAM deploy ====================== Looking for config file [samconfig.toml] : Found Reading default arguments : Success Setting default arguments for 'sam deploy' ========================================= Stack Name [sam-app-zip]: ENTER AWS Region [us-west-2]: ENTER Parameter DomainName [example]: ENTER

Configuration de la signature de code pour vos fonctions Lambda

Vous pouvez configurer la signature de code pour vos fonctions Lambda au moment du déploiement. Pour ce faire, modifiez votre AWS SAM modèle et configurez la signature de code lors du déploiement.

Pour configurer la signature de code
  1. Spécifiez CodeSigningConfigArn dans votre AWS SAM modèle. Voici un exemple :

    AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Resources: HelloWorldFunction: Type: AWS::Serverless::Function Properties: CodeUri: hello_world/ Handler: app.lambda_handler Runtime: python3.7 CodeSigningConfigArn: arn:aws:lambda:us-east-1:111122223333:code-signing-config:csc-12e12345db1234567
  2. Exécutez sam deploy --guided. Le AWS SAM CLI vous invitera à configurer la signature de code. Voici un exemple de résultat :

    #Found code signing configurations in your function definitions
    Do you want to sign your code? [Y/n]: ENTER
    #Please provide signing profile details for the following functions & layers
    #Signing profile details for function 'HelloWorld'
    Signing Profile Name: 
    Signing Profile Owner Account ID (optional):
    #Signing profile details for layer 'MyLayer', which is used by functions {'HelloWorld'}
    Signing Profile Name: 
    Signing Profile Owner Account ID (optional):

Bonnes pratiques

  • Lors de l'utilisationsam deploy, le AWS SAM CLI déploie les artefacts de construction de votre application situés dans le .aws-sam répertoire. Lorsque vous apportez des modifications aux fichiers d'origine de votre application, exécutez sam build pour mettre à jour le répertoire .aws-sam avant de procéder au déploiement.

  • Lorsque vous déployez une application pour la première fois, utilisez sam deploy --guided pour configurer les paramètres de déploiement. Pour les déploiements suivants, vous pouvez utiliser sam deploy pour déployer avec vos paramètres configurés.

Options pour sam deploy

Les options suivantes sont couramment utilisées pour sam deploy. Pour obtenir la liste de toutes les options, consultez sam deploy.

Utiliser le flux interactif guidé pour déployer votre application

Utilisez l'option --guided pour configurer les paramètres de déploiement de votre application à travers un flux interactif. Voici un exemple :

$ sam deploy --guided

Les paramètres de déploiement de votre application sont enregistrés dans le fichier samconfig.toml de votre projet. Pour en savoir plus, consultez Configuration des paramètres de projet.

Résolution des problèmes

Pour résoudre le problème AWS SAM CLI, voir Résolution des problèmes de la CLI AWS SAM.

Exemples

Déployer une application Hello World qui contient une fonction Lambda packagée sous la forme d'une archive de fichier .zip

Pour un exemple, consultez Étape 3 : Déployez votre application sur AWS Cloud dans le didacticiel de l'application Hello World.

Déployer une application Hello World qui contient une fonction Lambda packagée en tant qu'image de conteneur

Tout d'abord, nous l'utilisons sam init pour créer notre application Hello World. Au cours du flux interactif, nous sélectionnons l'exécution Python3.9 et le type de package Image.

$ sam init ... Which template source would you like to use? 1 - AWS Quick Start Templates 2 - Custom Template Location Choice: 1 Choose an AWS Quick Start application template 1 - Hello World Example 2 - Multi-step workflow ... Template: 1 Use the most popular runtime and package type? (Python and zip) [y/N]: ENTER Which runtime would you like to use? 1 - aot.dotnet7 (provided.al2) ... 15 - nodejs12.x 16 - python3.9 17 - python3.8 ... Runtime: 16 What package type would you like to use? 1 - Zip 2 - Image Package type: 2 Based on your selections, the only dependency manager available is pip. We will proceed copying the template using pip. ... Project name [sam-app]: ENTER ----------------------- Generating application: ----------------------- Name: sam-app Base Image: amazon/python3.9-base Architectures: x86_64 Dependency Manager: pip Output Directory: . Configuration file: sam-app/samconfig.toml Next steps can be found in the README file at sam-app/README.md ...

Ensuite, nous cd vers le répertoire racine de notre projet et exécutons sam build. Le AWS SAM CLI construit notre fonction Lambda localement en utilisant Docker.

sam-app $ sam build Building codeuri: /Users/.../sam-app runtime: None metadata: {'Dockerfile': 'Dockerfile', 'DockerContext': '/Users/.../sam-app/hello_world', 'DockerTag': 'python3.9-v1'} architecture: x86_64 functions: HelloWorldFunction Building image for HelloWorldFunction function Setting DockerBuildArgs: {} for HelloWorldFunction function Step 1/5 : FROM public.ecr.aws/lambda/python:3.9 ---> 0a5e3da309aa Step 2/5 : COPY requirements.txt ./ ---> abc4e82e85f9 Step 3/5 : RUN python3.9 -m pip install -r requirements.txt -t . ---> [Warning] The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested ---> Running in 43845e7aa22d Collecting requests Downloading requests-2.28.2-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.8/62.8 KB 829.5 kB/s eta 0:00:00 Collecting idna<4,>=2.5 Downloading idna-3.4-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.5/61.5 KB 2.4 MB/s eta 0:00:00 Collecting charset-normalizer<4,>=2 Downloading charset_normalizer-3.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (199 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 199.2/199.2 KB 2.1 MB/s eta 0:00:00 Collecting certifi>=2017.4.17 Downloading certifi-2022.12.7-py3-none-any.whl (155 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.3/155.3 KB 10.2 MB/s eta 0:00:00 Collecting urllib3<1.27,>=1.21.1 Downloading urllib3-1.26.15-py2.py3-none-any.whl (140 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 140.9/140.9 KB 9.1 MB/s eta 0:00:00 Installing collected packages: urllib3, idna, charset-normalizer, certifi, requests Successfully installed certifi-2022.12.7 charset-normalizer-3.1.0 idna-3.4 requests-2.28.2 urllib3-1.26.15 Removing intermediate container 43845e7aa22d ---> cab8ace899ce Step 4/5 : COPY app.py ./ ---> 4146f3cd69f2 Step 5/5 : CMD ["app.lambda_handler"] ---> [Warning] The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested ---> Running in f4131ddffb31 Removing intermediate container f4131ddffb31 ---> d2f5180b2154 Successfully built d2f5180b2154 Successfully tagged helloworldfunction:python3.9-v1 Build Succeeded Built Artifacts : .aws-sam/build Built Template : .aws-sam/build/template.yaml Commands you can use next ========================= [*] Validate SAM template: sam validate [*] Invoke Function: sam local invoke [*] Test Function in the Cloud: sam sync --stack-name {{stack-name}} --watch [*] Deploy: sam deploy --guided

Ensuite, nous exécutons sam deploy --guided pour déployer notre application. Le AWS SAM CLI nous guide dans la configuration de nos paramètres de déploiement. Ensuite, le AWS SAM CLI déploie notre application sur le. AWS Cloud

sam-app $ sam deploy --guided Configuring SAM deploy ====================== Looking for config file [samconfig.toml] : Found Reading default arguments : Success Setting default arguments for 'sam deploy' ========================================= Stack Name [sam-app]: ENTER AWS Region [us-west-2]: ENTER #Shows you resources changes to be deployed and require a 'Y' to initiate deploy Confirm changes before deploy [Y/n]: ENTER #SAM needs permission to be able to create roles to connect to the resources in your template Allow SAM CLI IAM role creation [Y/n]: ENTER #Preserves the state of previously provisioned resources when an operation fails Disable rollback [y/N]: ENTER HelloWorldFunction may not have authorization defined, Is this okay? [y/N]: y Save arguments to configuration file [Y/n]: ENTER SAM configuration file [samconfig.toml]: ENTER SAM configuration environment [default]: ENTER Looking for resources needed for deployment: Managed S3 bucket: aws-sam-cli-managed-default-samcliamzn-s3-demo-source-bucket-1a4x26zbcdkqr A different default S3 bucket can be set in samconfig.toml and auto resolution of buckets turned off by setting resolve_s3=False Parameter "stack_name=sam-app" in [default.deploy.parameters] is defined as a global parameter [default.global.parameters]. This parameter will be only saved under [default.global.parameters] in /Users/.../sam-app/samconfig.toml. Saved arguments to config file Running 'sam deploy' for future deployments will use the parameters saved above. The above parameters can be changed by modifying samconfig.toml Learn more about samconfig.toml syntax at https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-config.html e95fc5e75742: Pushed d8df51e7bdd7: Pushed b1d0d7e0b34a: Pushed 0071317b94d8: Pushed d98f98baf147: Pushed 2d244e0816c6: Pushed eb2eeb1ebe42: Pushed a5ca065a3279: Pushed fe9e144829c9: Pushed helloworldfunction-d2f5180b2154-python3.9-v1: digest: sha256:cceb71401b47dc3007a7a1e1f2e0baf162999e0e6841d15954745ecc0c447533 size: 2206 Deploying with following values =============================== Stack name : sam-app Region : us-west-2 Confirm changeset : True Disable rollback : False Deployment image repository : { "HelloWorldFunction": "012345678910.dkr.ecr.us-west-2.amazonaws.com/samapp7427b055/helloworldfunction19d43fc4repo" } Deployment s3 bucket : aws-sam-cli-managed-default-samcliamzn-s3-demo-source-bucket-1a4x26zbcdkqr Capabilities : ["CAPABILITY_IAM"] Parameter overrides : {} Signing Profiles : {} Initiating deployment ===================== HelloWorldFunction may not have authorization defined. Uploading to sam-app/682ad27c7cf7a17c7f77a1688b0844f2.template 1328 / 1328 (100.00%) Waiting for changeset to be created.. CloudFormation stack changeset ------------------------------------------------------------------------------------------------- Operation LogicalResourceId ResourceType Replacement ------------------------------------------------------------------------------------------------- + Add HelloWorldFunctionHell AWS::Lambda::Permissio N/A oWorldPermissionProd n + Add HelloWorldFunctionRole AWS::IAM::Role N/A + Add HelloWorldFunction AWS::Lambda::Function N/A + Add ServerlessRestApiDeplo AWS::ApiGateway::Deplo N/A yment47fc2d5f9d yment + Add ServerlessRestApiProdS AWS::ApiGateway::Stage N/A tage + Add ServerlessRestApi AWS::ApiGateway::RestA N/A pi ------------------------------------------------------------------------------------------------- Changeset created successfully. arn:aws:cloudformation:us-west-2:012345678910:changeSet/samcli-deploy1680634124/0ffd4faf-2e2b-487e-b9e0-9116e8299ac4 Previewing CloudFormation changeset before deployment ====================================================== Deploy this changeset? [y/N]: y 2023-04-04 08:49:15 - Waiting for stack create/update to complete CloudFormation events from stack operations (refresh every 5.0 seconds) ------------------------------------------------------------------------------------------------- ResourceStatus ResourceType LogicalResourceId ResourceStatusReason ------------------------------------------------------------------------------------------------- CREATE_IN_PROGRESS AWS::CloudFormation::S sam-app User Initiated tack CREATE_IN_PROGRESS AWS::IAM::Role HelloWorldFunctionRole - CREATE_IN_PROGRESS AWS::IAM::Role HelloWorldFunctionRole Resource creation Initiated CREATE_COMPLETE AWS::IAM::Role HelloWorldFunctionRole - CREATE_IN_PROGRESS AWS::Lambda::Function HelloWorldFunction - CREATE_IN_PROGRESS AWS::Lambda::Function HelloWorldFunction Resource creation Initiated CREATE_COMPLETE AWS::Lambda::Function HelloWorldFunction - CREATE_IN_PROGRESS AWS::ApiGateway::RestA ServerlessRestApi - pi CREATE_IN_PROGRESS AWS::ApiGateway::RestA ServerlessRestApi Resource creation pi Initiated CREATE_COMPLETE AWS::ApiGateway::RestA ServerlessRestApi - pi CREATE_IN_PROGRESS AWS::Lambda::Permissio HelloWorldFunctionHell - n oWorldPermissionProd CREATE_IN_PROGRESS AWS::ApiGateway::Deplo ServerlessRestApiDeplo - yment yment47fc2d5f9d CREATE_IN_PROGRESS AWS::Lambda::Permissio HelloWorldFunctionHell Resource creation n oWorldPermissionProd Initiated CREATE_IN_PROGRESS AWS::ApiGateway::Deplo ServerlessRestApiDeplo Resource creation yment yment47fc2d5f9d Initiated CREATE_COMPLETE AWS::ApiGateway::Deplo ServerlessRestApiDeplo - yment yment47fc2d5f9d CREATE_IN_PROGRESS AWS::ApiGateway::Stage ServerlessRestApiProdS - tage CREATE_IN_PROGRESS AWS::ApiGateway::Stage ServerlessRestApiProdS Resource creation tage Initiated CREATE_COMPLETE AWS::ApiGateway::Stage ServerlessRestApiProdS - tage CREATE_COMPLETE AWS::Lambda::Permissio HelloWorldFunctionHell - n oWorldPermissionProd CREATE_COMPLETE AWS::CloudFormation::S sam-app - tack ------------------------------------------------------------------------------------------------- CloudFormation outputs from deployed stack ------------------------------------------------------------------------------------------------- Outputs ------------------------------------------------------------------------------------------------- Key HelloWorldFunctionIamRole Description Implicit IAM Role created for Hello World function Value arn:aws:iam::012345678910:role/sam-app-HelloWorldFunctionRole-JFML1JOKHJ71 Key HelloWorldApi Description API Gateway endpoint URL for Prod stage for Hello World function Value https://endlwiqqod.execute-api.us-west-2.amazonaws.com/Prod/hello/ Key HelloWorldFunction Description Hello World Lambda Function ARN Value arn:aws:lambda:us-west-2:012345678910:function:sam-app-HelloWorldFunction- kyg6Y2iNRUPg ------------------------------------------------------------------------------------------------- Successfully created/updated stack - sam-app in us-west-2

En savoir plus

Pour en savoir plus sur l'utilisation du AWS SAM CLI sam deploycommande, consultez ce qui suit :