Unable to run openssl via child_process call in Node.js 10x

0

I am trying to call openssl from my lambda function but am getting the following error:
Command failed: openssl: command not found

openssl is part of Amazon Linux so I'm not sure why this isn't working (I confirmed this works with Python 3.7 environment). Any help would be greatly appreciated!

Here is a sample of my code:

const exec = require('child_process').exec
const fs = require("fs")
exports.handler = async function (event, context, callback) {
exec('openssl help', (error, stdout, stderr) => {
if (error) {
throw error
}
callback(null, "success")
})
}

Edited by: gstclair on Jun 28, 2019 2:57 PM

질문됨 5년 전1462회 조회
2개 답변
0
수락된 답변

For anybody having this same issue, openssl wasn't present in the Node.js container. We switched to Python, which had openssl.

답변함 4년 전
0

Hello,
Yes, I have tested OpenSSL 1.0.2k, in nodejs12.x lambda runtime with custom layer codebase, it's working fine.

Here, the link I follow, to add a custom layer to lambda.  
Reference Links:  
1. https://stackoverflow.com/questions/58548580/npm-package-pem-doesnt-seem-to-work-in-aws-lambda-nodejs-10-x-results-in-ope/58965884#58965884  
2. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html  
3. https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html?icmpid=docs_lambda_rss  
4. Sample Code: https://docs.aws.amazon.com/lambda/latest/dg/lambda-nodejs.html  

If you want to upgrade the OpenSSL version anyhow, then you should refer: https://stackoverflow.com/questions/36468984/aws-lambda-python-libssl-c-library - I have also tested his, it's works well.
답변함 4년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠