awsのlambdaを使いec2の中にあるphpを動かそうとしています。
最終的にはclowdwatchで定期的に作動させようとしています
python3.6
1import boto3 2import logging 3 4logger = logging.getLogger() 5logger.setLevel(logging.INFO) 6 7#ec2 = boto3.client('ec2') 8ssm = boto3.client('ssm') 9 10def lambda_handler(event, context): 11 try: 12 13 # Get All InstanceID 14 instances = ["インスタンスID"] 15 ssm.send_command( 16 InstanceIds = instances, 17 DocumentName = "AWS-RunShellScript", 18 Parameters = { 19 "commands": [ 20 "sh /var/www/hogeh/app/Vendor/sample.php" 21 ], 22 "executionTimeout": ["3600"] 23 }, 24 ) 25 26 except Exception as e: 27 logger.error(e) 28 raise e
上記のpythonをlambdaの関数コード内に書き込みlambda内のテストをしたらnullと正常に動いているんですが
コマンド実装を見るとステータスが失敗になってしまいます。詳細を見ると
/var/www/hogeh/app/Vendor/sample.php: line 1: ?php: No such file or directory /var/www/hogeh/app/Vendor/sample.php: line 2: syntax error near unexpected token `"hogehoge",' /var/www/hogeh/app/Vendor/sample.php: line 2: `ini_set("hogehoge", "1");' failed to run commands: exit status 2
という結果になっていました
ec2のディレクトリ内には確かに/var/www/hogeh/app/Vendor/sample.phpは存在し、ec2内でphpを動かしたら何もエラーが起きません。
どういった原因で失敗してるのかわからず困っています。
ご協力お願いします
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/20 00:39
退会済みユーザー
2018/07/20 00:47