README ¶
Cluster API Provider Docker (CAPD)
CAPD is a reference implementation of an infrastructure provider for the Cluster API project using Docker.
NOTE: The Docker provider is not designed for production use and is intended for development environments only.
This is one out of three components needed to run a Cluster API management cluster.
For a complete overview, please refer to the documentation available here which uses CAPD as an example infrastructure provider.
CAPD Goals
- To be a the reference implementation of an infrastructure provider.
- The code is highly trusted and used in testing of ClusterAPI.
- This provider can be used as a guide for developers looking to implement their own infrastructure provider.
Testing
In order to test your local changes, go to the top level directory of this project, cluster-api/
and run
make test-docker-infrastructure
to run the unit tests.
Note: make test-e2e
runs the CAPI E2E tests that are based on CAPD (CAPD does not have a separated e2e suite).
This make target will build an image based on the local source code and use that image during testing.
Directories ¶
Path | Synopsis |
---|---|
api
|
|
v1alpha3
Package v1alpha3 contains the v1alpha3 API implementation.
|
Package v1alpha3 contains the v1alpha3 API implementation. |
v1alpha4
Package v1alpha4 contains the v1alpha4 API implementation.
|
Package v1alpha4 contains the v1alpha4 API implementation. |
v1beta1
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
|
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io |
Package controllers provides access to reconcilers implemented in internal/controllers.
|
Package controllers provides access to reconcilers implemented in internal/controllers. |
exp
|
|
api/v1alpha3
Package v1alpha3 contains the v1alpha3 API implementation.
|
Package v1alpha3 contains the v1alpha3 API implementation. |
api/v1alpha4
Package v1alpha4 contains the v1alpha4 API implementation.
|
Package v1alpha4 contains the v1alpha4 API implementation. |
api/v1beta1
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
|
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io |
controllers
Package controllers implements controller functionality.
|
Package controllers implements controller functionality. |
webhooks
Package webhooks contains docker infrastructure experimental webhook implementations for some of our API types.
|
Package webhooks contains docker infrastructure experimental webhook implementations for some of our API types. |
internal
|
|
Package webhooks contains docker infrastructure webhook implementations for some of our API types.
|
Package webhooks contains docker infrastructure webhook implementations for some of our API types. |