AWS CLIでLambda関数のソースコードをダウンロードする手順を示す。
まずget-functionコマンドにてLambdaのソースコードが収められたURL(“Location”: …)とともにLambda関数の各種設定情報を取得する。
$ aws lambda get-function --function-name <Lambda関数名> { "Code": { "RepositoryType": "S3", "Location": "https://awslambda-..." }, :
次にこのURLに対してcurl等でコンテンツを取り出す。以下のようにすればzip圧縮されたソースコード一式をダウンロードできる。
$ func="<Lambda関数名>" $ url=$(aws lambda get-function --function-name ${func} | jq -r '.Code.Location') $ curl -o lambda.zip $url
尚、Lambda関数がバージョン管理されている場合、最新のバージョンをダウンロードするのであれば上記の手順でよいが、特定のバージョンのソースコードをダウンロードするにはまずlist-versions-by-functionコマンドにて保存されているバージョンを確認した後、取得したいバージョンを–qualifierオプションで指定してget-functionコマンドを実行すればよい。
$ aws lambda list-versions-by-function --function-name <Lambda関数名> { "Versions": [ { : "Version": "$LATEST", : "LastModified": "2019-04-24T05:24:34.064+0000", : }, { : "Version": "1", : "LastModified": "2019-03-14T02:08:41.267+0000", : }, { : "Version": "2", : "LastModified": "2019-03-12T02:18:20.732+0000", } : ] } $ aws lambda get-function --function-name <Lambda関数名> --qualifier <バージョン番号>