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

Error in gargoyle-process-monitor when starting gargoyle #38

Open
mightybyte opened this issue Apr 15, 2020 · 4 comments
Open

Error in gargoyle-process-monitor when starting gargoyle #38

mightybyte opened this issue Apr 15, 2020 · 4 comments

Comments

@mightybyte
Copy link

When I start up an app that I'm trying to use gargoyle with, I get this error:

gargoyle-postgres-monitor: createProcess: runInteractiveProcess: exec: does not exist (No such file or directory)

This is running on Linux (ubuntu) using a binary compiled with nix-build. In other runs I've also seen it fail with the above message but s/gargoyle-postgres-monitor/pg_ctl/.

@ryantrinkle
Copy link
Member

ryantrinkle commented Apr 15, 2020

I think we've gotta do three things here:

  • Make this warning a bit more prominent: "Note that gargoyle-psql assumes that PostgreSQL executables such as psql are available on the PATH. A custom 'Gargoyle' is required to use non-standard PostgreSQL installations."
  • Make this error message more indicative of what's happening
  • Word the warning a bit more clearly

@mightybyte
Copy link
Author

mightybyte commented Apr 15, 2020

Also...do you have a story for using both? I've got CI infrastructure running builds with both Nix and Stack. It would be nice if it could be done without the user having to use CPP.

@ryantrinkle
Copy link
Member

Interesting point! I'm not sure what the right way to pass that parameter would be. gargoyle-postgres-nix basically means "i want to capture the version of postgres at compile time", whereas gargoyle-postgres means "i want to capture the version of postgres at runtime". Even in the latter case, it can be provided by nix! And actually, I'm not sure the -nix version truly depends on nix - maybe it's just a compile/runtime distinction.

None of that really clarifies for me how the decision should be made, but perhaps if you start from where it is actually made (in your CI/build system), there's a path that makes sense to getting that info to gargoyle.

@mightybyte
Copy link
Author

Also, my main motivation for using Gargoyle in the first place was to make it so users of my application don't have to do any postgres installation. I'd like them to just be able to run it and be off to the races. But I also don't know that I want to impose Nix on them. The burden of installing Nix for some users might be higher than that of installing Postgres. I'm not sure what this implies for binary distribution. I guess my vague hope was that it would all be compiled into the binary. But maybe that's not realistic.

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