こんにちは!株式会社フォトラクションでWEB開発をしている下川原です。
Photoruction Advent Calendar 2022の4日目の記事になります。
はじめに
どんな人がこの記事を読むと幸せになるか。
AWS Lambdaを環境ごとに分ける!
1. 下準備
まずは、検証用、本番用にする直前のLambda関数ができていることが重要!
2.バージョンを作成する(AWS CLIで行う場合)
aws lambda publish-version --function-name myTestsFunctions --description "とりあえず動くようにした" (説明) aws lambda publish-version バージョンを作成するコマンド オプション --function-name 関数を指定 --description バージョン説明を記載(わかりやすい説明が良い)
コマンドを実行後の内容を控えておく。(Versionが大事)
{ "FunctionName": "myTestsFunctions", "FunctionArn": "arn:aws:lambda:ap-northeast-1:******:function:myTestsFunctions:1", "Version": "1", ... }
2.バージョンを作成する(AWSコンソールで行う場合)
lambda関数の画面からバージョン
[新しいバージョンを発行]
押すと、バージョン説明を入力してその時点のソースコードでバージョンができる
バージョン説明は、わかりやすくすると良い。
3.エイリアスを作成する(AWS CLIで行う場合)
aws lambda create-alias --function-name myTestsFunctions --name staging --function-version 1 --description "検証用" ・説明 aws lambda create-alias エイリアスを新たに作るコマンド オプション --function-name 関数を指定 --name エイリアスの名前(staging , production, develop用途に応じてどうぞ) --function-version エイリアスに設定するバージョンを設定 --description バージョン説明を記載(わかりやすい説明が良い)
3. エイリアスを作成する(AWSコンソールで行う場合)
名前を入力
staging , production, develop用途に応じてどうぞ
説明
わかりやすいと良い
バージョン
どのバージョンを割り当てるか指定をする
加重エイリアス(オプション)
今回は必要なし。
複数エイリアスを紐づけて、それぞれに重みをつけることができる。
分散させて処理を行うなど用途は色々
4.再度ソースコードの修正を行いたい場合
ソースコードの修正を終えて
手順2を再度行うことで、新しいバージョンを発行する。
そのあと、エイリアスを更新する
エイリアスを更新(AWS CLIで行う場合)
aws lambda update-alias --function-name myTestsFunctions --name staging --function-version 2 ・説明 aws lambda update-alias エイリアスを更新するコマンド オプション --function-name 関数を指定 --name エイリアスの名前(staging , production, develop用途に応じてどうぞ) --function-version エイリアスに設定するバージョンを設定 --description バージョン説明を記載(わかりやすい説明が良い)
エイリアスを更新(AWS コンソールで行う場合)
エイリアスの設定画面 > 一般設定 > 編集
新たなバージョンを選択して保存をする
さいごに
Lambda関数を本番用、ステージング用、開発用と別けるのではなく、
バージョン管理とエイリアスをしっかり設定することで、
即座に反映したい環境へ、反映ができるので活用していただきたい。
参考
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/configuration-versions.html
株式会社フォトラクションでは一緒に働く仲間を募集しています