components

package
v1.14.0-unstable Latest Latest
Warning

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

Go to latest
Published: Nov 11, 2024 License: Apache-2.0 Imports: 30 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
	Amd64MachineType       string
	Arm64MachineType       string
	HcoKvIoVersion         string
	KubevirtVersion        string
	KvVirtLancherOsVersion string
	CdiVersion             string
	CnaoVersion            string
	SspVersion             string
	HppoVersion            string
	MtqVersion             string
	AaqVersion             string
	PrimaryUDNImage        string
	Env                    []corev1.EnvVar
}

Jump to

Keyboard shortcuts

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