Here is a simple handler I cooked up in a node project.
importenvfrom"./env.js";env.rollbar;import{execSync}from"child_process";exportconsthandler=async(event)=>{constcwd=process.env.LAMBDA_TASK_ROOT||process.cwd();constcommand=event?.X_LAMBDA_CONSOLE?.run;if(command){try{constoptions={
cwd,env: process.env,stdio: ["ignore","pipe","pipe"],// stdin, stdout, stderrencoding: "utf-8",};conststdout=execSync(command,options);return{statusCode: 0,headers: {},body: stdout};}catch(error){conststderr=error.stderr.toString();return{statusCode: 1,headers: {},body: error.stderr.toString()};}}else{return{statusCode: 1,headers: {},body: `Command not found\n`,};}};
Here is a simple handler I cooked up in a node project.