kubevirt

package
v0.1.26 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CloudConfigKey = "cloud-config"
)

Variables

This section is empty.

Functions

func CCMConfigMap

func CCMConfigMap(ns string) *corev1.ConfigMap

func CCMContainer

func CCMContainer() *corev1.Container

func CCMDeployment

func CCMDeployment(ns string) *appsv1.Deployment

func CCMRole

func CCMRole(ns string) *rbacv1.Role

func CCMRoleBinding

func CCMRoleBinding(ns string) *rbacv1.RoleBinding

func CCMServiceAccount

func CCMServiceAccount(ns string) *corev1.ServiceAccount

func ReconcileCCMRole

func ReconcileCCMRole(role *rbacv1.Role, ownerRef config.OwnerRef) error

func ReconcileCCMRoleBinding

func ReconcileCCMRoleBinding(roleBinding *rbacv1.RoleBinding, ownerRef config.OwnerRef, sa *corev1.ServiceAccount, role *rbacv1.Role) error

func ReconcileCCMServiceAccount

func ReconcileCCMServiceAccount(sa *corev1.ServiceAccount, ownerRef config.OwnerRef) error

func ReconcileCloudConfig

func ReconcileCloudConfig(cm *corev1.ConfigMap, hcp *hyperv1.HostedControlPlane) error

func ReconcileDeployment

func ReconcileDeployment(deployment *appsv1.Deployment, hcp *hyperv1.HostedControlPlane, serviceAccountName string, releaseImageProvider *imageprovider.ReleaseImageProvider) error

Types

type CloudConfig

type CloudConfig struct {
	Kubeconfig   string             `yaml:"kubeconfig"`
	LoadBalancer LoadBalancerConfig `yaml:"loadBalancer"`
	InstancesV2  InstancesV2Config  `yaml:"instancesV2"`
	Namespace    string             `yaml:"namespace"`
	InfraLabels  map[string]string  `yaml:"infraLabels"`
}

Cloud Config is a copy of the relevant subset of the upstream type at https://github.com/kubevirt/cloud-provider-kubevirt/blob/main/pkg/provider/cloud.go

type InstancesV2Config

type InstancesV2Config struct {
	// Enabled activates the instances interface of the CCM
	Enabled bool `yaml:"enabled"`
	// ZoneAndRegionEnabled indicates if need to get Region and zone labels from the cloud provider
	ZoneAndRegionEnabled bool `yaml:"zoneAndRegionEnabled"`
}

type LoadBalancerConfig

type LoadBalancerConfig struct {
	// Enabled activates the load balancer interface of the CCM
	Enabled bool `yaml:"enabled"`
	// CreationPollInterval determines how many seconds to wait for the load balancer creation
	CreationPollInterval int `yaml:"creationPollInterval"`
	// Selectorless delegate endpointslices creation on third party by
	// skipping service selector creation
	Selectorless *bool `yaml:"selectorless,omitempty"`
}

Jump to

Keyboard shortcuts

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