GSLoC APi
GSLoC is a open source Global Server Load Balancing (GSLB) solution.
The API repository contains all protobuf and grpc related files and generation using buf.build.
You can see the api docs at docs/docs.md.
Structure
- Models is in /gsloc/api
- Api call is in /gsloc/services
Generate code
- Download buf command line
- Set env var
export BUF_CACHE_DIR="$(pwd)/.buf-cache"
- Run
buf generate
- You can now see python generated code in
../gsloc-python-sdk
and go code generated in../gsloc-go-sdk
Schemas And architecture
You can find schemas in docs folder, doc in graphml format can be updated with yed.
Intended architecture is as follow (note that dnsdist is optional):
Other GSLoC repositories
- gsloc: GSLoC server implementation.
- gsloc-cli: GSLoC cli for interacting with server.
- gsloc-api: Api definition in protobuf and grpc with code generation tools and architectural docs and doc api.
- gsloc-go-sdk: Go sdk for gsloc api used in gsloc implementation.