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のアプリケーションが作成されます。
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が …
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント