Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include PhantomJS for native Spiderable support #36

Open
llama opened this issue Feb 14, 2014 · 6 comments
Open

Include PhantomJS for native Spiderable support #36

llama opened this issue Feb 14, 2014 · 6 comments

Comments

@llama
Copy link

llama commented Feb 14, 2014

No description provided.

@paralin
Copy link
Member

paralin commented Feb 14, 2014

Can't you just add the meteor package for this? Why force it in the buildpack?

Just
meteor add spiderable

@llama
Copy link
Author

llama commented Feb 14, 2014

Spiderable requires PhantomJS, which needs to be installed on top of the Cedar stack. I've tried to do it four ways without success:

  1. Using the PhantomJS meteorite package. This results in a "permission denied" error when the meteor app tries to run PhantomJS, as well as if you meteor run bash and try to launch PJS.

  2. Using the PhantomJS buildpack along with this one using buildpack-multi. This resulted in an awful error about 'require not found'

  3. Using spiderable-remote with a remote PJS server. It's ugly and couldn't get it to work.

  4. Using heroku-buildpack-meteorite-phantomjs, an old attempt at fixing this problem. Got an error about Fibers.

There are a number of SO questions about this problem. Spiderable is an important package. The best solution would be to include PhantomJS in this buildpack.

@paralin
Copy link
Member

paralin commented Feb 14, 2014

I'm quite surprised they don't let you launch a second process. Would you not have to build Phantom into the app?

@llama
Copy link
Author

llama commented Feb 14, 2014

I'm not quite sure what you mean. I don't think there is an issue with Heroku not allowing a second process. The nicest solution (including meteorite PhantomJS package) results in a cryptic permissions error when anything attempts to run the binary.

@paralin
Copy link
Member

paralin commented Feb 14, 2014

Perhaps the binary isn't +x?

@llama
Copy link
Author

llama commented Feb 16, 2014

Yep that's it. So I'm now setting the execute permissions bit automatically on server startup (after meteorite pulls down the phantomjs binary), but it's a hack.

Here's another stackoverflow discussion of this issue btw. Some people are just installing the binary within their meteor app folder, but thats another hack.

Discussing fixing the permissions problem in meteor-phantomjs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants