This repository contains the internal library for interacting with the Calico data store as well as common source code used across Calico components. Note that the APIs defined in this library are not guaranteed to be forwards or backwards compatible and may change at any time without notice.
Calico is a Tigera open source project, and is primarily maintained by the Tigera team. However any members of the community – individuals or organizations – are welcome to get involved and contribute to the project.
For users who want to learn more about the project or get started with Calico, see the documentation on docs.projectcalico.org.
Contributions to this code are welcome! The code in this repository can be built and tested using the Makefile.
To run the tests locally (requires a full golang environment Go 1.7+):
make ut
To run the tests within a containerized environment (requires a functioning Docker installation):
make test-containerized
For more information on available targets, see make help
.
If you wish to use libcalico for integrating with Calico networking and policy, the main entry point to managing Calico configuration is through the client.
- Documentation for the client is in lib/client GoDoc.
- The resource structure definitions are defined in lib/apis, this includes detailed per-resource and per-field level descriptions.