J'ai suivi avec un AWS tutorial qui explique comment créer une fonction Lambda qui exécute un script Ruby. Ma seule confusion est comment je renvoie le résultat du script Ruby comme le résultat de la fonction Lambda.Retour résultat de la fonction Lambda qui exécute le script Ruby
const exec = require('child_process').exec;
exports.handler = function(event, context) {
const child = exec('./lambdaRuby.rb ' + ''' + JSON.stringify(event) + ''', (result) => {
// Resolve with result of process
context.done(result);
});
// Log process stdout and stderr
child.stdout.on('data', console.log);
child.stderr.on('data', console.error);
}
Pourquoi ne pas récrire juste la logique Ruby NodeJS pour vous sauver tous les tracas? – dashmug
Parce que Lambda ne supporte pas Ruby nativement et j'utilise un gem Ruby qui n'est pas porté au Noeud –
Je pense que vous ajoutez un autre paramètre à la fonction de gestionnaire qui est un rappel. Voir l'exemple sur http://docs.aws .amazon.com/lambda/latest/dg/nodejs-prog-model-handler.html –