resources

package
v1.15.1-0...-6f52687 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2025 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Overview

Copyright 2021 IBM Corporation

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

View Source
const APIIngressName = "common-web-ui-api"
View Source
const AdminHubNavConfigName = "common-web-ui-config"
View Source
const CallbackIngressName = "common-web-ui-callback"
View Source
const CertRestartLabel = "certmanager.k8s.io/time-restarted"
View Source
const Certv1alpha1APIVersion = "certmanager.k8s.io/v1alpha1"
View Source
const ClusterCaVolumeName = "cluster-ca"
View Source
const ClusterInfoConfigVolumeName = "ibmcloud-cluster-info"
View Source
const ClusterInfoConfigmapName = "ibmcloud-cluster-info"
View Source
const CnRouteName = "cp-console"
View Source
const CnRoutePath = "/"
View Source
const CommonConfigMapName = "common-web-ui-config"
View Source
const CommonWebUICRType = "commonwebuiservice_cr"
View Source
const ConsoleRouteName = "cp-console"
View Source
const DaemonSetName = "common-web-ui"
View Source
const DefaultClusterIssuer = "cs-ca-issuer"
View Source
const DefaultImageName = "common-web-ui"
View Source
const DefaultImageRegistry = "icr.io/cpopen/cpfs"
View Source
const DefaultImageTag = "1.2.1"
View Source
const DefaultNamespace = "ibm-common-services"
View Source
const DeploymentName = "common-web-ui"
View Source
const IAMAuthDataVolumeName = "iamadata"
View Source
const IAMDataVolumeName = "iamdata"
View Source
const InternalTLSVolumeName = "internal-tls"
View Source
const Log4jsConfigMapName = "common-web-ui-log4js"
View Source
const Log4jsVolumeName = "log4js"
View Source
const LoginConfirmationButton string = "login-confirmation-button"
View Source
const LoginConfirmationText string = "login-confirmation-text"
View Source
const LoginConfirmationTitle string = "login-confirmation-title"
View Source
const NSSAnnotation = "nss.ibm.com/namespaceList"
View Source
const NavIngressName = "common-web-ui"
View Source
const NotReady = "NotReady"
View Source
const OperandRoleBindingName = "ibm-commonui-operand"
View Source
const OperandRoleName = "ibm-commonui-operand"
View Source
const PlatformAuthIdpConfigVolumeName = "platform-auth-idp"
View Source
const PlatformAuthIdpConfigmapName = "platform-auth-idp"
View Source
const Ready = "Ready"
View Source
const ReleaseName = "common-web-ui"
View Source
const ServiceAccountName = "ibm-commonui-operand"
View Source
const ServiceName = "common-web-ui"
View Source
const UICertCommonName = "common-web-ui"
View Source
const UICertName = "common-web-ui-ca-cert"
View Source
const UICertSecretName = "common-web-ui-cert" + ""
View Source
const UICertVolumeName = "common-web-ui-certs"
View Source
const Unknown = "Unknown"
View Source
const WebUIConfigVolumeName = "common-web-ui-config"
View Source
const ZenCardExtensionsConfigMapName = "common-web-ui-zen-card-extensions"
View Source
const ZenLeftNavExtensionsConfigMapName = "common-webui-ui-extensions"
View Source
const ZenProductInfoConfigVolumeName = "product-configmap"
View Source
const ZenQuickNavExtensionsConfigMapName = "common-web-ui-zen-quicknav-extensions"

Variables

View Source
var APIIngressAnnotations = map[string]string{
	"kubernetes.io/ingress.class":            "ibm-icp-management",
	"icp.management.ibm.com/secure-backends": "true",

	"icp.management.ibm.com/configuration-snippet": `
		add_header 'X-XSS-Protection' '1' always;
        port_in_redirect off;`,
}
View Source
var AdminHubNavConfig = `` /* 6961-byte string literal not displayed */

nolint

View Source
var ArchitectureList = []string{
	"amd64",
	"ppc64le",
	"s390x",
}
View Source
var CallbackIngressAnnotations = map[string]string{
	"kubernetes.io/ingress.class":            "ibm-icp-management",
	"icp.management.ibm.com/upstream-uri":    "/auth/liberty/callback",
	"icp.management.ibm.com/secure-backends": "true",
}
View Source
var ClusterCaVolume = corev1.Volume{
	Name: ClusterCaVolumeName,
	VolumeSource: corev1.VolumeSource{
		Secret: &corev1.SecretVolumeSource{
			SecretName: "cs-ca-certificate-secret",
			Items: []corev1.KeyToPath{
				{
					Key:  "tls.key",
					Path: "ca.key",
				},
				{
					Key:  "tls.crt",
					Path: "ca.crt",
				},
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var ClusterInfoConfigVolume = corev1.Volume{
	Name: ClusterInfoConfigVolumeName,
	VolumeSource: corev1.VolumeSource{
		ConfigMap: &corev1.ConfigMapVolumeSource{
			LocalObjectReference: corev1.LocalObjectReference{
				Name: "ibmcloud-cluster-info",
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var CnAnnotations = map[string]string{
	"haproxy.router.openshift.io/timeout":                               "90s",
	"haproxy.router.openshift.io/pod-concurrent-connections":            "100",
	"haproxy.router.openshift.io/rate-limit-connections":                "true",
	"haproxy.router.openshift.io/rate-limit-connections.concurrent-tcp": "100",
	"haproxy.router.openshift.io/rate-limit-connections.rate-http":      "100",
	"haproxy.router.openshift.io/rate-limit-connections.rate-tcp":       "100",
}
View Source
var CommonContainer = corev1.Container{
	Image:           "common-web-ui",
	Name:            "common-web-ui",
	ImagePullPolicy: corev1.PullIfNotPresent,

	Resources: corev1.ResourceRequirements{
		Limits: map[corev1.ResourceName]resource.Quantity{
			corev1.ResourceCPU:    *cpu300,
			corev1.ResourceMemory: *memory256,
		},
		Requests: map[corev1.ResourceName]resource.Quantity{
			corev1.ResourceCPU:              *cpu300,
			corev1.ResourceMemory:           *memory256,
			corev1.ResourceEphemeralStorage: *memory251,
		},
	},

	SecurityContext: &commonSecurityContext,

	ReadinessProbe: &corev1.Probe{
		ProbeHandler: corev1.ProbeHandler{
			HTTPGet: &corev1.HTTPGetAction{
				Path: "/readinessProbe",
				Port: intstr.IntOrString{
					Type:   intstr.Int,
					IntVal: 3000,
				},
				Scheme: corev1.URISchemeHTTPS,
			},
		},
		InitialDelaySeconds: 30,
		TimeoutSeconds:      15,
		PeriodSeconds:       10,
		SuccessThreshold:    1,
		FailureThreshold:    3,
	},

	LivenessProbe: &corev1.Probe{
		ProbeHandler: corev1.ProbeHandler{
			HTTPGet: &corev1.HTTPGetAction{
				Path: "/livenessProbe",
				Port: intstr.IntOrString{
					Type:   intstr.Int,
					IntVal: 3000,
				},
				Scheme: corev1.URISchemeHTTPS,
			},
		},
		InitialDelaySeconds: 30,
		TimeoutSeconds:      5,
		PeriodSeconds:       30,
		SuccessThreshold:    1,
		FailureThreshold:    3,
	},

	Env: []corev1.EnvVar{
		{
			Name:  "contextPath",
			Value: "/common-nav",
		},
		{
			Name:  "cfcRouterUrl",
			Value: "https://icp-management-ingress:443",
		},
		{
			Name:  "NODE_EXTRA_CA_CERTS",
			Value: " /opt/ibm/platform-header/certs/ca.crt",
		},
		{
			Name:  "PLATFORM_IDENTITY_PROVIDER_URL",
			Value: "https://platform-identity-provider:4300",
		},
		{
			Name:  "PLATFORM_AUTH_SERVICE_URL",
			Value: "https://platform-auth-service:9443",
		},
		{
			Name:  "NAV_PORT",
			Value: "8443",
		},
		{
			Name:  "CLOUDPAK_VERSION",
			Value: "1.0.0",
		},
		{
			Name:  "CLUSTER_NAME",
			Value: "mycluster",
		},
		{
			Name:  "defaultAuth",
			Value: "",
		},
		{
			Name:  "enterpriseLDAP",
			Value: "",
		},
		{
			Name:  "enterpriseSAML",
			Value: "",
		},
		{
			Name:  "osAuth",
			Value: "",
		},
		{
			Name:  "SESSION_POLLING_INTERVAL",
			Value: "300",
		},
		{
			Name:  "PREFERRED_LOGIN",
			Value: "deprecated",
		},
		{
			Name:  "ROKS_ENABLED",
			Value: "deprecated",
		},
		{
			Name:  "USE_HTTPS",
			Value: "true",
		},
		{
			Name:  "UI_SSL_CA",
			Value: "/certs/common-web-ui/ca.crt",
		},
		{
			Name:  "UI_SSL_CERT",
			Value: "/certs/common-web-ui/tls.crt",
		},
		{
			Name:  "UI_SSL_KEY",
			Value: "/certs/common-web-ui/tls.key",
		},
		{
			Name:  "LANDING_PAGE",
			Value: "",
		},
		{
			Name:  "WATCH_NAMESPACE",
			Value: "",
		},
		{
			Name: "POD_NAMESPACE",
			ValueFrom: &corev1.EnvVarSource{
				FieldRef: &corev1.ObjectFieldSelector{
					APIVersion: "v1",
					FieldPath:  "metadata.namespace",
				},
			},
		},
		{
			Name:  "USE_ZEN",
			Value: "false",
		},
		{
			Name:  "APP_VERSION",
			Value: "",
		},
		{
			Name:  "CLUSTER_TYPE",
			Value: "unknown",
		},
		{
			Name:  "OSAUTH_ENABLED",
			Value: "deprecated",
		},
		{
			Name: "INSTANA_AGENT_HOST",
			ValueFrom: &corev1.EnvVarSource{
				FieldRef: &corev1.ObjectFieldSelector{
					APIVersion: "v1",
					FieldPath:  "status.hostIP",
				},
			},
		},
		{
			Name:  "INSTANA_AGENT_ENABLED",
			Value: "false",
		},
	},
}
View Source
var CommonVolumeMounts = []corev1.VolumeMount{
	{
		Name:      Log4jsVolumeName,
		MountPath: "/etc/config",
	},
	{
		Name:      ClusterCaVolumeName,
		MountPath: "/opt/ibm/platform-header/certs",
	},
	{
		Name:      UICertVolumeName,
		MountPath: "/certs/common-web-ui",
	},
	{
		Name:      InternalTLSVolumeName,
		MountPath: "/etc/internal-tls",
	},
	{
		Name:      IAMDataVolumeName,
		MountPath: "/etc/iamdata",
	},
	{
		Name:      IAMAuthDataVolumeName,
		MountPath: "/etc/iamadata",
	},
	{
		Name:      WebUIConfigVolumeName,
		MountPath: "/etc/config/common-web-ui-config",
	},
	{
		Name:      ClusterInfoConfigVolumeName,
		MountPath: "/etc/config/ibmcloud-cluster-info",
	},
	{
		Name:      PlatformAuthIdpConfigVolumeName,
		MountPath: "/etc/config/platform-auth-idp",
	},
	{
		Name:      ZenProductInfoConfigVolumeName,
		MountPath: "/etc/config/product-configmap",
	},
}
View Source
var DefaultStatusForCR = []string{"none"}
View Source
var DefaultVolumeMode int32 = 420
View Source
var DeploymentAnnotations = map[string]string{
	"scheduler.alpha.kubernetes.io/critical-pod": "",
	"productName":   "IBM Cloud Platform Common Services",
	"productID":     "068a62892a1e4db39641342e592daa25",
	"productMetric": "FREE",
}
View Source
var FalseVar = false
View Source
var IAMAuthDataVolume = corev1.Volume{
	Name: IAMAuthDataVolumeName,
	VolumeSource: corev1.VolumeSource{
		Secret: &corev1.SecretVolumeSource{
			SecretName: "platform-auth-idp-credentials",
			Items: []corev1.KeyToPath{
				{
					Key:  "admin_username",
					Path: "aun",
				},
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var IAMDataVolume = corev1.Volume{
	Name: IAMDataVolumeName,
	VolumeSource: corev1.VolumeSource{
		Secret: &corev1.SecretVolumeSource{
			SecretName: "platform-oidc-credentials",
			Items: []corev1.KeyToPath{
				{
					Key:  "WLP_CLIENT_SECRET",
					Path: "wlpcs",
				},
				{
					Key:  "WLP_CLIENT_ID",
					Path: "wlpcid",
				},
				{
					Key:  "OAUTH2_CLIENT_REGISTRATION_SECRET",
					Path: "oa2crs",
				},
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var InternalTLSVolume = corev1.Volume{
	Name: InternalTLSVolumeName,
	VolumeSource: corev1.VolumeSource{
		Secret: &corev1.SecretVolumeSource{
			SecretName: "internal-tls",
			Items: []corev1.KeyToPath{
				{
					Key:  "tls.key",
					Path: "ca.key",
				},
				{
					Key:  "ca.crt",
					Path: "ca.crt",
				},
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var Log4jsConfigMapData = map[string]string{
	"log4js.json": `   {
		"appenders": {
		  "console": {
			"type": "console",
			"layout": {
			"type": "pattern",
			"pattern": "[%d] [%p] [webui-nav] [%c] %m"
			}
		  }
		},
		"categories": {
		  "default": { "appenders": ["console"], "level": "info" },
		  "request": { "appenders": ["console"], "level": "error" },
		  "socket.io": { "appenders": ["console"], "level": "error" },
		  "status": { "appenders": ["console"], "level": "info" },
		  "watcher": { "appenders": ["console"], "level": "debug" },
		  "service-watcher": { "appenders": ["console"], "level": "error" },
		  "session-poller": { "appenders": ["console"], "level": "error" },
		  "service-discovery": { "appenders": ["console"], "level": "info" },
		  "service-account": { "appenders": ["console"], "level": "info" },
		  "version": { "appenders": ["console"], "level": "error" },
		  "user-mgmt-client": { "appenders": ["console"], "level": "error" },
		  "oidc-client": { "appenders": ["console"], "level": "error" },
		  "server": { "appenders": ["console"], "level": "info" },
		  "auth": { "appenders": ["console"], "level": "error" },
		  "logout": { "appenders": ["console"], "level": "error" },
		  "app": { "appenders": ["console"], "level": "error" },
		  "userMgmt": { "appenders": ["console"], "level": "error" },
		  "catalog-client": { "appenders": ["console"], "level": "error" },
		  "template": { "appenders": ["console"], "level": "error" }
		}
	  }`,
}
View Source
var Log4jsVolume = corev1.Volume{
	Name: Log4jsVolumeName,
	VolumeSource: corev1.VolumeSource{
		ConfigMap: &corev1.ConfigMapVolumeSource{
			LocalObjectReference: corev1.LocalObjectReference{
				Name: "common-web-ui-log4js",
			},
			Items: []corev1.KeyToPath{
				{
					Key:  "log4js.json",
					Path: "log4js.json",
				},
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var NavIngressAnnotations = map[string]string{
	"kubernetes.io/ingress.class":            "ibm-icp-management",
	"icp.management.ibm.com/auth-type":       "access-token",
	"icp.management.ibm.com/secure-backends": "true",
	"icp.management.ibm.com/app-root":        "/common-nav?root=true",

	"icp.management.ibm.com/configuration-snippet": `
		add_header 'X-XSS-Protection' '1' always;`,
}
View Source
var PlatformAuthIdpConfigVolume = corev1.Volume{
	Name: PlatformAuthIdpConfigVolumeName,
	VolumeSource: corev1.VolumeSource{
		ConfigMap: &corev1.ConfigMapVolumeSource{
			LocalObjectReference: corev1.LocalObjectReference{
				Name: "platform-auth-idp",
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var Seconds60 int64 = 60
View Source
var TrueVar = true
View Source
var UICertVolume = corev1.Volume{
	Name: UICertVolumeName,
	VolumeSource: corev1.VolumeSource{
		Secret: &corev1.SecretVolumeSource{
			SecretName:  UICertSecretName,
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var UICertificateData = CertificateData{
	Name:      UICertName,
	Secret:    UICertSecretName,
	Common:    UICertCommonName,
	App:       "common-web-ui",
	Component: "common-web-ui",
}
View Source
var WebUIConfigVolume = corev1.Volume{
	Name: WebUIConfigVolumeName,
	VolumeSource: corev1.VolumeSource{
		ConfigMap: &corev1.ConfigMapVolumeSource{
			LocalObjectReference: corev1.LocalObjectReference{
				Name: "common-web-ui-config",
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}
View Source
var ZenProductInfoConfigVolume = corev1.Volume{
	Name: ZenProductInfoConfigVolumeName,
	VolumeSource: corev1.VolumeSource{
		ConfigMap: &corev1.ConfigMapVolumeSource{
			LocalObjectReference: corev1.LocalObjectReference{
				Name: "product-configmap",
			},
			Optional:    &TrueVar,
			DefaultMode: &DefaultVolumeMode,
		},
	},
}

Functions

func CommonWebUIConfigMap

func CommonWebUIConfigMap(namespace string) *corev1.ConfigMap

func ContainsString

func ContainsString(strs []string, search string) bool

func CopyMap

func CopyMap(m map[string]interface{}) map[string]interface{}

func DeleteConfigMap

func DeleteConfigMap(ctx context.Context, client client.Client, name string, namespace string) error

func DeleteGenericResource

func DeleteGenericResource(ctx context.Context, name string, namespace string, group string, version string, resource string) error

func DeleteIngress

func DeleteIngress(ctx context.Context, client client.Client, ingressName string, ingressNS string, needToRequeue *bool) error

func GetCurrentServiceStatus

func GetCurrentServiceStatus(ctx context.Context, k8sClient client.Client, instance *v1alpha1.CommonWebUI, isCncf bool) (status v1alpha1.ServiceStatus)

func GetDesiredRoute

func GetDesiredRoute(client client.Client, instance *operatorsv1alpha1.CommonWebUI, name string, namespace string,
	annotations map[string]string, routeHost string, routePath string, destinationCAcert []byte) (*route.Route, error)

func GetImageID

func GetImageID(imageRegistry, imageName, defaultImageVersion, imagePostfix, envVarName string) string

Constructs image IDs for operands: either <IMAGE_NAME>:<IMAGE_TAG> or <IMAGE_NAME>@<IMAGE_SHA>

func GetResourceLimitsWithDefault

func GetResourceLimitsWithDefault(valueStr string, defaultValue int64) int64

Returns the int64 representation of a resource string if properly formatted. Otherwise, returns the given default value.

func GetResourceMemoryWithDefault

func GetResourceMemoryWithDefault(valueStr string, defaultValue int64) int64

Returns the int64 representation of a resource string if properly formatted. Otherwise, returns the given default value.

func GetStringWithDefault

func GetStringWithDefault(str, defaultStr string) string

Returns the given string if is not empty. Otherwise, returns default string.

func IsCertificateEqual

func IsCertificateEqual(oldCertificate, newCertificate *certmgr.Certificate) bool

Use DeepEqual to determine if 2 certificates are equal. Check ObjectMeta and Spec. If there are any differences, return false. Otherwise, return true.

func IsDeploymentEqual

func IsDeploymentEqual(oldDeployment, newDeployment *appsv1.Deployment) bool

Use DeepEqual to determine if 2 deployments are equal. Check labels, replicas, pod template labels, service account names, volumes, containers, init containers, image name, volume mounts, env vars, liveness, readiness. If there are any differences, return false. Otherwise, return true. oldDeployment is the deployment that is currently running. newDeployment is what we expect the deployment to look like.

func IsIngressEqual

func IsIngressEqual(oldIngress, newIngress *netv1.Ingress) bool

Use DeepEqual to determine if 2 ingresses are equal. Check ObjectMeta and Spec. If there are any differences, return false. Otherwise, return true.

func IsRoleBindingEqual

func IsRoleBindingEqual(oldRoleBinding, newRoleBinding *rbacv1.RoleBinding) bool

Use DeepEqual to determine if 2 role bindings are equal. Check metadata, labels, subjects, and role ref. If there are any differences, return false. Otherwise, return true.

func IsRoleEqual

func IsRoleEqual(oldRole, newRole *rbacv1.Role) bool

Use DeepEqual to determine if 2 roles are equal. Check metadata, labels, and rules. If there are any differences, return false. Otherwise, return true.

func IsRouteEqual

func IsRouteEqual(oldRoute, newRoute *route.Route) bool

Use DeepEqual to determine if 2 routes are equal. Check annotations and Spec. If there are any differences, return false. Otherwise, return true.

func IsServiceAccountEqual

func IsServiceAccountEqual(oldSA, newSA *corev1.ServiceAccount) bool

Use DeepEqual to determine if 2 service accounts are equal. Check metadata. If there are any differences, return false. Otherwise, return true.

func IsServiceEqual

func IsServiceEqual(oldService, newService *corev1.Service) bool

Use DeepEqual to determine if 2 services are equal. Check ObjectMeta, Ports and Selector. If there are any differences, return false. Otherwise, return true.

func LabelsForMetadata

func LabelsForMetadata(name string) map[string]string

Returns the labels associated with the resource being created

func LabelsForPodMetadata

func LabelsForPodMetadata(name string, crType string, crName string) map[string]string

Returns the labels associated with the Pod being created

func LabelsForSelector

func LabelsForSelector(name string, crType string, crName string) map[string]string

Returns the labels for selecting the resources belonging to the given CR

func MergeMap

func MergeMap(in map[string]string, mergeMap map[string]string) map[string]string

func PreserveKeyValue

func PreserveKeyValue(key string, src, dest map[string]string)

func ReconcileAPIIngress

func ReconcileAPIIngress(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, isCncf bool, needToRequeue *bool) error

func ReconcileAdminHubNavConfig

func ReconcileAdminHubNavConfig(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI) error

func ReconcileCallbackIngress

func ReconcileCallbackIngress(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileCertificates

func ReconcileCertificates(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileCommonUIConfigConfigMap

func ReconcileCommonUIConfigConfigMap(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileDeployment

func ReconcileDeployment(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, isZen bool, isCncf bool, needToRequeue *bool) error

nolint

func ReconcileLog4jsConfigMap

func ReconcileLog4jsConfigMap(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileNavIngress

func ReconcileNavIngress(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileRemoveIngresses

func ReconcileRemoveIngresses(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool)

func ReconcileRole

func ReconcileRole(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileRoleBinding

func ReconcileRoleBinding(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileRoute

func ReconcileRoute(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI,
	name string, annotations map[string]string, routeHost string, routePath string, destinationCAcert []byte, needToRequeue *bool) error

func ReconcileRoutes

func ReconcileRoutes(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileService

func ReconcileService(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func ReconcileServiceAccount

func ReconcileServiceAccount(ctx context.Context, client client.Client, instance *operatorsv1alpha1.CommonWebUI, needToRequeue *bool) error

func RemoveString

func RemoveString(strs []string, search string) []string

func ZenFrontDoorEnabled

func ZenFrontDoorEnabled(ctx context.Context, crclient client.Client, namespace string) bool

Types

type CertificateData

type CertificateData struct {
	Name      string
	Secret    string
	Common    string
	App       string
	Component string
}

Jump to

Keyboard shortcuts

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