使用node.js在AWS Lambda中调用shell脚本

时间:2016-04-14 14:33:50

标签: node.js shell amazon-web-services lambda

我是AWS Lambda的新手。我试图引用一个基本的" Hello World"来自在Domain.js中编码的AWS Lambda函数的shell脚本。

run.js文件包含以下内容:

#!/bin/bash
echo "Hello, World!"  

我还通过将它存储在包含以下内容的index.js文件中来编写函数:

var exec = require('child_process').exec;

exports.handler = function(event, context) {
    exec('./run.sh' , function(error, stdout) {
        context.done(error, stdout);
    });
};

我创建了一个包含这两个文件的zip文件,并通过创建一个新的Lambda函数并将其授予lambda_basic_execution角色将其上传到AWS Lambda控制台。

我希望能够看到Hello World,尝试了这段代码的变体,但到目前为止还无法从AWS Lambda函数调用shell脚本。

提前致谢!

安迪

1 个答案:

答案 0 :(得分:1)

Lambda仅支持child_process.spawnchild_process.spawnSync。尝试将您的通话更改为child_process.exec,这应该为您解决。