cluster-api-provider-inmemory-microk8s

module
v0.0.0-...-7064f84 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2024 License: Apache-2.0

README

Development

# Generate code, manifests
make generate

# Generate infrastructure-components.yaml in ./out/
make release-manifests-dev

# Run tests
make test

Deploy

# Generate code, manifests
make generate

# Build and push image (DockerHub)
make docker-build REGISTRY=docker.io/neoaggelos
make docker-push REGISTRY=docker.io/neoaggelos

# Build and push image (private registry)
make docker-build REGISTRY=10.0.0.1:5060
make docker-push REGISTRY=10.0.0.1:5060

# Generate infrastructure-components in ./out
make release-manifests-dev

# Apply components on cluster
kubectl apply -f ./out/infrastructure-components-in-memory-development.yaml

ClusterAPI init

# kubeconfig
mkdir -p ~/.kube && k8s config > ~/.kube/config

# install clusterctl and initialize clusterAPI components
sudo snap install clusterctl --edge
clusterctl init -i - -b microk8s -c microk8s

# install in-memory provider
kubectl apply -f ./out/infrastructure-components-in-memory-development.yaml

Directories

Path Synopsis
test
infrastructure/inmemory
main is the main package for the Cluster API Core Provider.
main is the main package for the Cluster API Core Provider.
infrastructure/inmemory/api/v1alpha1
Package v1alpha1 contains API Schema definitions for the infrastructure v1alpha1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Package v1alpha1 contains API Schema definitions for the infrastructure v1alpha1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
infrastructure/inmemory/controllers
Package controllers provides access to reconcilers implemented in internal/controllers.
Package controllers provides access to reconcilers implemented in internal/controllers.
infrastructure/inmemory/internal/cloud/api/v1alpha1
Package v1alpha1 contains API Schema definitions for the inmemory v1alpha1 API group +kubebuilder:object:generate=true +groupName=virtual.cluster.x-k8s.io
Package v1alpha1 contains API Schema definitions for the inmemory v1alpha1 API group +kubebuilder:object:generate=true +groupName=virtual.cluster.x-k8s.io
infrastructure/inmemory/internal/controllers
Package controllers implements controller functionality.
Package controllers implements controller functionality.
infrastructure/inmemory/internal/webhooks
Package webhooks implements inmemory infrastructure webhooks.
Package webhooks implements inmemory infrastructure webhooks.
infrastructure/inmemory/pkg/runtime
Package runtime implements an in memory runtime for handling objects grouped in resource groups, similarly to resource groups in Azure.
Package runtime implements an in memory runtime for handling objects grouped in resource groups, similarly to resource groups in Azure.
infrastructure/inmemory/pkg/runtime/cache
Package cache defines resource group aware Cache.
Package cache defines resource group aware Cache.
infrastructure/inmemory/pkg/runtime/client
Package client defines Client for operating on resource groups.
Package client defines Client for operating on resource groups.
infrastructure/inmemory/pkg/runtime/manager
Package manager defines a Manager for resource groups.
Package manager defines a Manager for resource groups.
infrastructure/inmemory/pkg/runtime/resourcegroup
Package resourcegroup defines a ResourceGroup; the default implementation is backed by a cache.
Package resourcegroup defines a ResourceGroup; the default implementation is backed by a cache.
infrastructure/inmemory/pkg/server
Package server implements a server that can be used to fake the APIServer and etcd running in the workload clusters; the implementation is designed specifically to make Cluster API and the Kubeadm Control Plane provider happy during a stress test (it is not complete or production ready, and it will never be).
Package server implements a server that can be used to fake the APIServer and etcd running in the workload clusters; the implementation is designed specifically to make Cluster API and the Kubeadm Control Plane provider happy during a stress test (it is not complete or production ready, and it will never be).
infrastructure/inmemory/pkg/server/api
Package api defines a set of Handlers to be used for implementing a fake API server, designed specifically to make Cluster API and the Kubeadm Control Plane provider happy during a stress test (it is not complete or production ready, and it will never be).
Package api defines a set of Handlers to be used for implementing a fake API server, designed specifically to make Cluster API and the Kubeadm Control Plane provider happy during a stress test (it is not complete or production ready, and it will never be).
infrastructure/inmemory/pkg/server/api/portforward
Package portforward implements support for implementing a fake port forward service in the api.
Package portforward implements support for implementing a fake port forward service in the api.
infrastructure/inmemory/pkg/server/etcd
Package etcd implements a fake etcd server, designed specifically to make Cluster API and the Kubeadm Control Plane provider happy during a stress test (it is not complete or production ready, and it will never be).
Package etcd implements a fake etcd server, designed specifically to make Cluster API and the Kubeadm Control Plane provider happy during a stress test (it is not complete or production ready, and it will never be).
infrastructure/inmemory/pkg/server/proxy
Package proxy implements kubeadm proxy functionality.
Package proxy implements kubeadm proxy functionality.
infrastructure/inmemory/webhooks
Package webhooks implements inmemory infrastructure webhooks.
Package webhooks implements inmemory infrastructure webhooks.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL