- Welcome new contributors
- Project Info
- Setting up a development environment
- Your first patch
- Your first review
- Project hosting with Launchpad
- Code reviews with Gerrit
- Continuous integration with Jenkins
- Reviewer Guide
- Running tests
- Test suite structure
Zaqar is composed of two layers:
The transport drivers are responsible for interacting with Zaqar clients. Every query made by clients is processed by the transport layer, which is in charge of passing this information to the backend and then returning the response in a format understandable by the client.
The storage drivers are responsible for interacting with the storage backends and, that way, store or retrieve the data coming from the transport layer.
In order to keep these layers decoupled, we have established that checks should be performed in the appropriate layer. In other words, transport drivers must guarantee that the incoming data is well-formed and storage drivers must enforce their data model stays consistent.