diff --git a/.gitmodules b/.gitmodules index 75ed3ea2..ac168b46 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "vendor/github.com/grpc-ecosystem/grpc-gateway"] path = vendor/github.com/grpc-ecosystem/grpc-gateway url = https://github.com/grpc-ecosystem/grpc-gateway +[submodule "vendor/gopkg.in/fsnotify.v1"] + path = vendor/gopkg.in/fsnotify.v1 + url = https://gopkg.in/fsnotify.v1 diff --git a/README.md b/README.md index cc4cd7bb..11270d56 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ If you have a well phrased question that might benefit others, consider asking i * Clone the repository recursively, eg: `git clone --recursive https://github.com/purpleidea/mgmt/`. * Get the remaining golang dependencies on your own, or run `make deps` if you're comfortable with how we install them. * Run `make build` to get a freshly built `mgmt` binary. -* Run `time ./mgmt run --file examples/graph0.yaml --converged-timeout=1` to try out a very simple example! +* Run `time ./mgmt run --file examples/graph0.yaml --converged-timeout=5 --tmp-prefix` to try out a very simple example! * To run continuously in the default mode of operation, omit the `--converged-timeout` option. * Have fun hacking on our future technology! diff --git a/resources/file.go b/resources/file.go index fc55392a..78f2a2de 100644 --- a/resources/file.go +++ b/resources/file.go @@ -317,6 +317,7 @@ func (obj *FileRes) Watch(processChan chan event.Event) error { // we must be a parent watcher, so descend in if deltaDepth < 0 { + // XXX: we can block here due to: https://github.com/fsnotify/fsnotify/issues/123 obj.watcher.Remove(current) index++ } diff --git a/vendor/gopkg.in/fsnotify.v1 b/vendor/gopkg.in/fsnotify.v1 new file mode 160000 index 00000000..7be54206 --- /dev/null +++ b/vendor/gopkg.in/fsnotify.v1 @@ -0,0 +1 @@ +Subproject commit 7be54206639f256967dd82fa767397ba5f8f48f5