Lambda 関数をダウンロードして内容を確認する方法。ローカルのコードとデプロイされたコードが同じかわからなくなったときなど。
バージョンの確認
aws cli で特定の関数のバージョン情報を確認。
$ aws lambda list-versions-by-function --function-name hoge
{
"Versions": [
{
"TracingConfig": {
"Mode": "PassThrough"
},
"Version": "$LATEST",
"CodeSha256": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=",
"FunctionName": "hoge",
"VpcConfig": {
"SubnetIds": [],
"VpcId": "",
"SecurityGroupIds": []
},
"MemorySize": 128,
"RevisionId": "00000000-0000-0000-0000-000000000000",
"CodeSize": 111111,
"FunctionArn": "arn:aws:lambda:ap-northeast-1:000000000000:function:hoge:$LATEST",
"Environment": {
"Variables": {
"NODE_ENV": "production"
}
},
"Handler": "index.handler",
"Role": "arn:aws:iam::000000000000:role/lambda-basic-role",
"Timeout": 180,
"LastModified": "2018-11-01T19:00:00.000+0000",
"Runtime": "nodejs6.10",
"Description": "ホゲ"
}
]
}
これで、hoge という Lambda 関数のバージョンをリストアップできる。Versions 配列の中に一つだけだけど、複数バージョンがあると要素が増えていく。
Latest の情報を取得してみる。
$ aws lambda get-function --function-name hoge
{
"Code": {
"RepositoryType": "S3",
"Location": "https://awslambda-ap-ne-1-tasks.s3.ap-northeast-1.amazonaws.com/snapshots/000000000000/hoge<SNIP!>"
},
"Configuration": {
"TracingConfig": {
"Mode": "PassThrough"
},
"Version": "$LATEST",
"CodeSha256": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=",
"FunctionName": "hoge",
<SNIP!>
}
}
Code の Location の URL からコードをダウンロードできる。
特定バージョンの情報を取得するには、$ aws lambda get-function --function-name hoge --qualifier 3
のように qualifier オプションを使う。
取得する
実際の取得は wget で。
コメント