Documentation
¶
Index ¶
- func GetCSVBase(name, namespace, displayName, description, image, replaces string, ...) *csvv1alpha1.ClusterServiceVersion
- func GetClusterPermissions() []rbacv1.PolicyRule
- func GetClusterRole() rbacv1.ClusterRole
- func GetClusterRoleBinding(namespace string) rbacv1.ClusterRoleBinding
- func GetDeploymentOperator(...) appsv1.Deployment
- func GetDeploymentSpecOperator(...) appsv1.DeploymentSpec
- func GetDeploymentSpecWebhook(namespace, image, imagePullPolicy string, env []corev1.EnvVar) appsv1.DeploymentSpec
- func GetDeploymentWebhook(namespace, image, imagePullPolicy string, env []corev1.EnvVar) appsv1.Deployment
- func GetInstallStrategyBase(...) *csvv1alpha1.StrategyDetailsDeployment
- func GetOperatorCR() *hcov1beta1.HyperConverged
- func GetOperatorCRD(relPath string) *extv1.CustomResourceDefinition
- func GetServiceAccount(namespace string) v1.ServiceAccount
- func GetV2VCRD() *extv1beta1.CustomResourceDefinition
- func GetV2VOvirtProviderCRD() *extv1beta1.CustomResourceDefinition
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetCSVBase ¶ added in v1.0.0
func GetCSVBase(name, namespace, displayName, description, image, replaces string, version semver.Version, crdDisplay string) *csvv1alpha1.ClusterServiceVersion
GetCSVBase returns a base HCO CSV without an InstallStrategy
func GetClusterPermissions ¶ added in v1.0.0
func GetClusterPermissions() []rbacv1.PolicyRule
func GetClusterRole ¶
func GetClusterRole() rbacv1.ClusterRole
func GetClusterRoleBinding ¶ added in v1.0.0
func GetClusterRoleBinding(namespace string) rbacv1.ClusterRoleBinding
func GetDeploymentOperator ¶ added in v1.2.0
func GetDeploymentOperator(namespace, image, imagePullPolicy, conversionContainer, vmwareContainerString, smbios, machinetype, hcoKvIoVersion, kubevirtVersion, cdiVersion, cnaoVersion, sspVersion, nmoVersion, hppoVersion, vmImportVersion string, env []corev1.EnvVar) appsv1.Deployment
func GetDeploymentSpecOperator ¶ added in v1.2.0
func GetDeploymentSpecOperator(namespace, image, imagePullPolicy, conversionContainer, vmwareContainer, smbios, machinetype, hcoKvIoVersion, kubevirtVersion, cdiVersion, cnaoVersion, sspVersion, nmoVersion, hppoVersion, vmImportVersion string, env []corev1.EnvVar) appsv1.DeploymentSpec
func GetDeploymentSpecWebhook ¶ added in v1.2.0
func GetDeploymentSpecWebhook(namespace, image, imagePullPolicy string, env []corev1.EnvVar) appsv1.DeploymentSpec
Currently we are abusing the pod readiness to signal to OLM that HCO is not ready for an upgrade. This has a lot of side effects, one of this is the validating webhook being not able to receive traffic when exposed by a pod that is not reporting ready=true. This can cause a lot of side effects if not deadlocks when the system reach a status where, for any possible reason, HCO pod cannot be ready and so HCO pod cannot validate any further update or delete request on HCO CR. A proper solution is properly use the readiness probe only to report the pod readiness and communicate status to OLM via conditions once OLM will be ready for: https://github.com/operator-framework/enhancements/blob/master/enhancements/operator-conditions.md in the meanwhile a quick (but dirty!) solution is to expose the same hco binary on two distinct pods: the first one will run only the controller and the second one (almost always ready) just the validating webhook one. A deeper code refactor to produce two distinct binaries is not worth now because we are going to use OLM operator conditions soon. TODO: remove this once we will move to OLM operator conditions
func GetDeploymentWebhook ¶ added in v1.2.0
func GetDeploymentWebhook(namespace, image, imagePullPolicy string, env []corev1.EnvVar) appsv1.Deployment
func GetInstallStrategyBase ¶ added in v1.0.0
func GetInstallStrategyBase(namespace, image, imagePullPolicy, conversionContainer, vmwareContainer, smbios, machinetype, hcoKvIoVersion, kubevirtVersion, cdiVersion, cnaoVersion, sspVersion, nmoVersion, hppoVersion, vmImportVersion string, env []corev1.EnvVar) *csvv1alpha1.StrategyDetailsDeployment
GetInstallStrategyBase returns the basics of an HCO InstallStrategy
func GetOperatorCR ¶ added in v1.0.0
func GetOperatorCR() *hcov1beta1.HyperConverged
func GetOperatorCRD ¶ added in v1.0.0
func GetOperatorCRD(relPath string) *extv1.CustomResourceDefinition
func GetServiceAccount ¶ added in v1.0.0
func GetServiceAccount(namespace string) v1.ServiceAccount
func GetV2VCRD ¶ added in v1.0.0
func GetV2VCRD() *extv1beta1.CustomResourceDefinition
TODO: remove once VMware provider is removed from HCO GetV2VCRD creates CRD for v2v VMWare provider
func GetV2VOvirtProviderCRD ¶ added in v1.1.0
func GetV2VOvirtProviderCRD() *extv1beta1.CustomResourceDefinition
TODO: remove once oVirt provider is removed from HCO GetV2VOvirtProviderCRD creates CRD for v2v oVirt provider
Types ¶
This section is empty.