I want to pass 2 variables to a child process to be accessed within this process. I have tried many things mentioned in SO posts but none have proved useful.
I have a Meteor method called phantom that opens the child process.
phantom: function(firstname, lastname) {
// Attempt 1
var env = Object.create(process.env)
env.FIRST_NAME = firstname;
env.LAST_NAME = lastname;
console.log(env);
// Attempt 2
command = spawn(phantomjs.path, ['assets/app/phant.js'], {env: env});
command.stdout.firstname = firstname;
command.stdout.lastname = lastname;
command.stdout.on('data', function (data) {
console.log('stdout: ' + data);
data = users;
});
Then I have the actual phant.js file that begins with
var page = require('webpage').create();
console.log(firstname, lastname); // Returns Undefined
If you look at my comments in the first meteor method, I tried 1. Setting the first name last name values as environment variables and 2. Setting the vars with child.stdin.[var here]. None of these worked.
To be clear, the phantom script works successfully, the only issue is with loading in the vars.
Any suggestions or help would be much appreciated.