0
Lambdaのソースコード差分を取得する
2021-09-05

プロダクションとステージングでコード差分がーとかそういうのを検知する目的でスクリプトを書いてた

そういえばこんなものも書いたなと言うことで供養がてら残しておく

  • lambda-diff
#!/bin/bash

# lambda-diff profile FunctionName1 FunctionName2

get_lambda_zip(){
  curl -o /tmp/$2.zip `aws --profile=$1 lambda get-function --function-name $2 | jq -r '.Code.Location'`
}

unzip_lambda_code(){
  unzip -p /tmp/$1.zip | cat -
}

get_lambda_zip $1 $2
get_lambda_zip $1 $3

diff -u -w <(unzip_lambda_code $2) <(unzip_lambda_code $3)

ファイルが複数存在する場合の考慮はしていない(できるかもためしていない)

Nodeだとindex.jsだけで完結する場合に差分を検出できる

Lambdaの設定差分だけであればコマンド一発で書ける(当時は自動化するためにスクリプト化してた)

  • lambda-config-diff
#!/bin/bash

# lambda-config-diff profile FunctionName1 FunctionName2

diff -u -w <(aws --profile=$1 lambda get-function-configuration --function-name $2) <(aws --profile=$1 lambda get-function-configuration --function-name $3)

このスクリプトを定期的に実行して差分があればメールなりSlackなりに通知したりして差分が出た!みたいなのを検知できる

0

Profile

swfz
swfz
日々学んだことを残していく
Today I Learned
コード片置き場

Account

RSS

Powered by Pixela
© 2024. swfz