Convox Community

Disable Health Checks for Local Rack

I’m working on an Elixir application where there’s a constant need to recompile. Usually, we do this locally by running:

iex -S mix

This puts us into a REPL at all times to work where we can run recompile().

In my convox.yml, I have:

command: mix phx.server

But, if I run:

iex -S mix phx.server

I won’t be able to work within that process since I don’t know how to get an interactive REPL from convox start.

As such, I’ve decided to switch command to this:

command: sleep infinity

This way, I can run convox run web bash and get into the rack and then since I’ve already exposed the proper port, I can then after getting into a bash instance on my rack run iex -S mix. This works great and the running server immediately runs on port 3000, however, convox’s health checks eventually roll back my rack since I’m not using the command in the convox.yml to run the server.

So my questions were:

  1. How do I disable health checks on the local rack? If I could do this, everything would work.
  2. Is there a way to get into the live instance of convox start?
  3. Is there a way to use a local postgres tool to access the database convox creates for the local rack, I know the URL is postgres://app:foo@resource-database.convox-APPLICATIONNAME.svc.cluster.local:5432/app, but I can’t seem to dump that URL into my Postresql application. How would I do that?