ZeroTierOne
ZeroTierOne copied to clipboard
Add PubSub and BigTable support for Central hosted network controllers
This is a big one that goes along with other internal upcoming changes.
- Refactors existing Redis & Postgres NOTIFY message passing systems into the
NotificationListenerinterface, and adds a 3rd method for message passing via GCP PubSub. Which one to use is configurable by local.conf controller settings - Adds GCP BigTable as a 3rd option for writing member status updates along side Postgres and Redis. Also configurable via local.conf
- Set up CMake for building Central controllers. This can (and hopefully will) be extended for general builds of ZeroTier One in the future. More work will be needed to finish all that out however.
- Use miniconda + CMake for external dependency management instead of dumping everything in
ext/. This is likely more useful for Central controller builds than end user builds for the time being.
@glimberg I'm only just noticing this. Do you still want it merged in? I see it is still a draft.
Eventually yes. Just making sure everything is stable over in the new environment before doing so
@joseph-henry ready for your review. I know this is a huge one. Don't hesitate to reach out if you have any questions
OK not sure why the github action is failing now but I'll look at it tomorrow