#前提・実現したいこと
Lambda上でAWSCLIを動かしてタグ付きEBSスナップショットを取得。
発生している問題・エラーメッセージ
Lambda上でAWSCLIを動かしてS3 Syncするを参考にさせて頂き、lambda上でAWSCLIが操作可能になり。
次に
AWSCLIでタグ付きEBSスナップショットを取得するを参考にさせて頂きlambda_function.pyに
Python
1import subprocess 2import os 3 4def lambda_handler(event, context): 5 cmd = '''./aws ec2 create-snapshot --volume-id vol-xxxxxxxxxxx --tag-specification 'ResourceType="snapshot",Tags=[{Key="Name",Value="TESTSS"}]' --description "addtagsnapshot" ''' 6 result = subprocess.run( 7 cmd.split(" "), 8 stdout=subprocess.PIPE, 9 stderr=subprocess.STDOUT 10 ) 11 print(result.stdout.decode())
と入力してLambda上で実行してみたのですが
lambdaのログは
START RequestId: bae3a9d7-c7b6-458e-a08f-fc89202766c5 Version: $LATEST Error parsing parameter '--tag-specifications': Expected: '=', received: ''' for input: 'ResourceType="snapshot",Tags=[{Key="Name",Value="TESTSS"}]' ^
と帰ってきてしまい実行することができませんでした。
思うこと
Lambda上でAWSCLIを動かしてS3 Syncするの記事のlambda_function.py
import subprocess def lambda_handler(event, context): cmd = './aws s3 sync s3://<src bucket name> s3://<dest bucket name>' result = subprocess.run( cmd.split(" "), stdout=subprocess.PIPE, stderr=subprocess.STDOUT ) print(result.stdout.decode())
このコードを改良すれば実行することができると思うのですが、私の現在の実力だとどうして良いのか分からず、どうかお力添えいただけますと幸いです。
よろしくお願いいたします。
補足情報
Python 3.7.2
aws-cli/1.16.185 Python/3.7.2 Linux/4.4.0-151-generic botocore/1.12.175
あなたの回答
tips
プレビュー