This is the documentation for the latest development version of Antrea. Both code and docs may be unstable, and these docs are not guaranteed to be up to date or correct. See the latest version.
Antrea uses protoc and protoc-gen-go to generate CNI gRPC service code.
If you make any change to cni.proto (/pkg/apis/cni/v1beta1/cni.proto
), you can
re-generate the code by invoking make codegen
.
Antrea extends Kubernetes API with an extension APIServer and Custom Resource Definitions, and uses
k8s.io/code-generator (release-1.18) to generate
clients, informers, conversions, protobuf codecs and other helpers. The resource definitions and their generated codes
are located in the conventional paths: pkg/apis/<resource group>
for internal types and
pkg/apis/<resource group>/<version>
for versioned types and pkg/client/clientset
for clients.
If you make any change to any types.go
, you can re-generate the code by invoking make codegen
.
Antrea uses the GoMock framework for its unit tests.
If you add or modify interfaces that need to be mocked, please add or update MOCKGEN_TARGETS
in
update-codegen-dockerized.sh (/hack/update-codegen-dockerized.sh
) accordingly. All the mocks for a given package will be
generated in a sub-package called testing
. For example, the mock code for the interface Baz
defined in the package
pkg/foo/bar
will be generated to pkg/foo/bar/testing/mock_bar.go
, and you can import it via pkg/foo/bar/testing
.
Same as above, you can re-generate the mock source code (with mockgen
) by invoking make codegen
.
Prometheus integration document contains a list of supported metrics, which could be affected by third party component changes. The collection of metrics is done from a running Kind deployment, in order to reflect the current list of metrics which is exposed by Antrea Controller and Agents.
To regenerate the metrics list within the document, use make-metrics-doc.sh (/hack/make-metrics-doc.sh
)
with document location as a parameter.
To help you get started, see the documentation.