AWS SAM+CloudFormation+CodeDeployでLambdaをデプロイする方法

AWS SAM+CloudFormation+CodeDeployでLambdaをデプロイする方法

samテンプレートのDeploymentPreferenceプロパティでTypeを指定するとCodeDeployのアプリケーションが作成されます。

samテンプレート

AWSTemplateFormatVersion: 2010-09-09
Transform: AWS::Serverless-2016-10-31
Description: This CloudFormation template to create Lambda function

Resources:
  MyLambdaFunction:
    Type: AWS::Serverless::Function
    Properties:
      FunctionName: 'sample-function'
      CodeUri: src/lambda-a
      Handler: index.handler
      Runtime: nodejs18.x
      MemorySize: 128
      Timeout: 15
      AutoPublishAlias: live
      DeploymentPreference:
        Enabled: true
        Type: Canary10Percent5Minutes

package deploy

sam package&sam deployします。

$ sam package --template-file sample.yml --s3-bucket <バケット名> --output-template-file sample_out.yml
$ sam deploy --template-file sample_out.yml --stack-name sample-stack --capabilities CAPABILITY_IAM --no-fail-on-empty-changeset

CodeDeployのアプリケーションが作成されます。

AWS SAM+CloudFormation+CodeDeployでLambdaをデプロイする方法

Lambdaのエイリアスとバージョン発行が行われています。

AWS SAM+CloudFormation+CodeDeployでLambdaをデプロイする方法

sam deploy が sam package の機能を暗黙的に実行するようになりました。sam deploy コマンドを直接使用して、アプリケーションをパッケージ化およびデプロイできます。

コチラ参照

参考サイト

チュートリアル:アップデートされた Lambda CodeDeploy 関数とAWSのサーバーレスアプリケーションモデルをデプロイします。 - AWS CodeDeploy
このチュートリアルのステップに従い CodeDeploy 、AWSのサーバーレスアプリケーション (AWSのSAM) テンプレートを使用して、更新された Lambda 関数をデプロイします。
AWS SAMを通してCodeDeployを利用したLambda関数のデプロイを理解する – ClassmethodサーバーレスAdvent Calendar 2017 #serverless #adventcalendar #reinvent | DevelopersIO
はじめに こんにちは、中山です。 このエントリはServerless Advent Calendar 2017 7日目の記事です。 以前、3日目のエントリでAWS SAMのアップデートをご紹介しました。 AWS SAMが …

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました