lookout icon indicating copy to clipboard operation
lookout copied to clipboard

Poster queue

Open smacker opened this issue 6 years ago • 1 comments

Part of #154

This PR introduces the ability to call poster through Queue. Serve & work command use it by default now.

QueuePoster doesn't wrap calls to status endpoint because it can cause an incorrect result. ("success/failure" can be posted before "processing") Currently, the server doesn't do anything if status posting failed besides logging it. For me, it looks like making this feature asynchronous would require quite complex logic which might be isn't important for us. So I just left it as is for now.

p.s. The code in cmd/lookoutd is very diffictult to understand due to multiple composition of stucts. And very often the names are very confusing. For example ServeCommand inherites queueConsumerCommand and gocli.PlainCommand structures. But we don't have queueConsumer command. Also serve does much more, like running watcher or data server, and it's very difficult to figure out where those methods come from.

smacker avatar Apr 22 '19 13:04 smacker

I have tried different approaches on how to fix tests but all of them had some flaws. At the end, I implemented this super stupid but not very reliable way. Making it more robust (waiting until something instead of time.Sleep) would create another monster similar to the one we have now, so I'm not sure we want it.

smacker avatar Apr 23 '19 16:04 smacker