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

Support tcp connect as an alternative to local filesystem watching #25

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

lox
Copy link

@lox lox commented May 22, 2015

A common development environment (at least under OSX) is to use a virtual machine to run a development environment and use NFS or another network filesystem to mount your code locally for editing.

The issue with this and reloaders like rerun is that notifications don't pass over NFS. This is a common problem documented in the ruby listen gem, which provides a basic protocol for forwarding generic filesystem change events over TCP.

What this pull request implements is a -connect option that connects to a TCP event stream, and uses these events instead of watching for local events.

Consider this scenario:

host1> listen --forward :4000 -d .  
host2> rerun -connect host1:4000 github.com/lox/exampleapp

Rerun connects to the server that listen starts, and when files change on host1, they are passed to host2 to trigger a reload. Because the filesystems are shared over NFS between the hosts, the changed code is there.

@lox lox changed the title Support tcp listen as an alternative to local filesystem watching Support tcp connect as an alternative to local filesystem watching May 22, 2015
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

Successfully merging this pull request may close these issues.

1 participant