git bash上でxargsやaws cliを使ってLambda関数 一括削除 まとめて削除
以下の記事はアメブロで2022-12-17に投稿したものです。
awsREST-APIの開発ビルド、デプロイを繰り返していると
Lambda関数のストレージ制限に引っかかって
デプロイ失敗するようになってしまった。
なぜだかわからないが、Lambda関数がバージョン管理するようになっていて
3xxいくつまでバージョンが進んでいて何年も前のモノも残っていた。
しょうがいないから
awsコンソールから削除しようとしたら、まとめて削除ができそうにない。
検索してみたら、aws-cli、xargs、jqを使って削除しているサイトがあったので
それを参考に作成して、git-bashから実行したらawsからエラー報告がくる。
> failed to satisfy constraint: Member must satisfy regular expression pattern
echoを使って確認しても問題ないのだけど、xargsに-pオプションを付けてみたら
なんかxargsが起動したコマンドのfunction名にゴミが付随していた。
このゴミのせいでaws-cliがエラーを起こしているようだった。
ダメな例)
xargs -I {} aws lambda delete-function --function-name {}
うまくいった例)
xargs -I {} sh -c 'aws lambda delete-function --function-name {}'
としたら動作した。
使い方が悪いのか、git-bashのバグなのかよくわからない、、、
bash、xargsはgitForWindowsのモノだ
コメント
コメントを投稿