components

package
v1.10.1 Latest Latest
Warning

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

Go to latest
Published: Dec 31, 2023 License: Apache-2.0 Imports: 25 Imported by: 1

Documentation

Index

Constants

View Source
const DisableOperandDeletionAnnotation = "console.openshift.io/disable-operand-delete"

Variables

This section is empty.

Functions

func GetCSVBase added in v1.0.0

func GetCSVBase(params *CSVBaseParams) *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 GetDeploymentCliDownloads added in v1.5.0

func GetDeploymentCliDownloads(params *DeploymentOperatorParams) appsv1.Deployment

func GetDeploymentOperator added in v1.2.0

func GetDeploymentOperator(params *DeploymentOperatorParams) appsv1.Deployment

func GetDeploymentSpecCliDownloads added in v1.5.0

func GetDeploymentSpecCliDownloads(params *DeploymentOperatorParams) appsv1.DeploymentSpec

func GetDeploymentSpecOperator added in v1.2.0

func GetDeploymentSpecOperator(params *DeploymentOperatorParams) appsv1.DeploymentSpec

func GetDeploymentSpecWebhook added in v1.2.0

func GetDeploymentSpecWebhook(namespace, image, imagePullPolicy, hcoKvIoVersion 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.

func GetDeploymentWebhook added in v1.2.0

func GetDeploymentWebhook(namespace, image, imagePullPolicy, hcoKvIoVersion string, env []corev1.EnvVar) appsv1.Deployment

func GetInstallStrategyBase added in v1.0.0

func GetInstallStrategyBase(params *DeploymentOperatorParams) *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 GetServiceWebhook added in v1.4.0

func GetServiceWebhook() v1.Service

func GetStdContainerSecurityContext added in v1.7.0

func GetStdContainerSecurityContext() *v1.SecurityContext

func GetStdPodSecurityContext added in v1.7.0

func GetStdPodSecurityContext() *v1.PodSecurityContext

func InjectVolumesForWebHookCerts added in v1.4.0

func InjectVolumesForWebHookCerts(deploy *appsv1.Deployment)

Types

type CSVBaseParams added in v1.4.0

type CSVBaseParams struct {
	Name            string
	Namespace       string
	DisplayName     string
	MetaDescription string
	Description     string
	Image           string
	Replaces        string
	Version         semver.Version
	CrdDisplay      string
}

type DeploymentOperatorParams added in v1.4.0

type DeploymentOperatorParams struct {
	Namespace           string
	Image               string
	WebhookImage        string
	CliDownloadsImage   string
	KVUIPluginImage     string
	KVUIProxyImage      string
	ImagePullPolicy     string
	ConversionContainer string
	VmwareContainer     string
	VirtIOWinContainer  string
	Smbios              string
	Machinetype         string
	HcoKvIoVersion      string
	KubevirtVersion     string
	CdiVersion          string
	CnaoVersion         string
	SspVersion          string
	HppoVersion         string
	MtqVersion          string
	Env                 []corev1.EnvVar
}

Jump to

Keyboard shortcuts

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