-
Notifications
You must be signed in to change notification settings - Fork 436
2.1.8 changes phantomjs install location on Amazon Elastic Beanstalk #583
Comments
Hi, I'm also having this problem. My prerender service is designed to redeploy each week and is now failing and I cannot spin up any new prerender due to this issue. Could we please have this issue resolved asap. Thank you |
It looks like this is due to AWS running
and location.js contains the full path:
On my local OSX machine, location.js only contains a partial path:
I'll look into the code, but is there a reason that it's a full path on linux and a relative path on OSX? |
It looks like this commit changed the functionality of the 85f1d3c?diff=split#diff-f16acefe4b6553580c43edab685f50f3L351 That should take you to the right line in that commit. You'll see that before, The is an edge case that's being run into because Elastic Beanstalk runs:
It normally wouldn't happen, but that rebuild is causing @nicks is there a reason that change was made besides code cleanup? |
maybe? not sure. feel free to send a PR On Tue, Aug 2, 2016 at 8:09 PM, Todd Hooper notifications@github.com
|
For people who need a quick fix for this and can't update yet: create a file named `.ebextensions/phantomjs.config with the following contents: commands:
01-installphantom:
env:
PATH: /sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin:/opt/elasticbeanstalk/node-install/node-v6.2.2-linux-x64/bin/
command: npm install -g phantomjs-prebuilt (replace node version with the version you're using) |
When I install phantomjs-prebuilt v2.1.7 the contents of location.js are as follows:
module.exports.location = "phantom/bin/phantomjs"
module.exports.platform = "linux"
module.exports.arch = "x64"
When I install phantomjs-prebuilt v2.1.8 the contents of location.js change to:
module.exports.location = "/tmp/deployment/application/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs"
module.exports.platform = "linux"
module.exports.arch = "x64"
Now AFAIK the way Amazon Elastic Beanstalk deploys work is that once a deploy is complete it copies the contents of /tmp/deployment/application to it's proper final location and wipes the /tmp directory, so the location that location.js is pointing to no longer exists. Why would the location in location.js have changed between v2.1.7 and v2.1.8?
The text was updated successfully, but these errors were encountered: