KubeZero/charts/kubezero-auth/crds/keycloak.yaml

2918 lines
147 KiB
YAML
Raw Normal View History

# Generated by Fabric8 CRDGenerator, manual edits might get overwritten!
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: keycloaks.k8s.keycloak.org
spec:
group: k8s.keycloak.org
names:
kind: Keycloak
plural: keycloaks
shortNames:
- kc
singular: keycloak
scope: Namespaced
versions:
- name: v2alpha1
schema:
openAPIV3Schema:
properties:
spec:
properties:
instances:
description: Number of Keycloak instances in HA mode. Default is 1.
type: integer
transaction:
description: In this section you can find all properties related to
the settings of transaction behavior.
properties:
xaEnabled:
description: Determine whether Keycloak should use a non-XA datasource
in case the database does not support XA transactions.
type: boolean
type: object
http:
description: In this section you can configure Keycloak features related
to HTTP and HTTPS
properties:
httpPort:
description: The used HTTP port.
type: integer
tlsSecret:
description: "A secret containing the TLS configuration for HTTPS.\
\ Reference: https://kubernetes.io/docs/concepts/configuration/secret/#tls-secrets."
type: string
httpsPort:
description: The used HTTPS port.
type: integer
httpEnabled:
description: Enables the HTTP listener.
type: boolean
type: object
hostname:
description: In this section you can configure Keycloak hostname and
related properties.
properties:
hostname:
description: Hostname for the Keycloak server.
type: string
strict:
description: Disables dynamically resolving the hostname from
request headers.
type: boolean
strictBackchannel:
description: By default backchannel URLs are dynamically resolved
from request headers to allow internal and external applications.
type: boolean
admin:
description: The hostname for accessing the administration console.
type: string
adminUrl:
description: "Set the base URL for accessing the administration\
\ console, including scheme, host, port and path"
type: string
type: object
unsupported:
description: |-
In this section you can configure podTemplate advanced features, not production-ready, and not supported settings.
Use at your own risk and open an issue with your use-case if you don't find an alternative way.
properties:
podTemplate:
description: |-
You can configure that will be merged with the one configured by default by the operator.
Use at your own risk, we reserve the possibility to remove/change the way any field gets merged in future releases without notice.
Reference: https://kubernetes.io/docs/concepts/workloads/pods/#pod-templates
properties:
metadata:
properties:
generateName:
type: string
deletionGracePeriodSeconds:
type: integer
deletionTimestamp:
type: string
clusterName:
type: string
resourceVersion:
type: string
annotations:
additionalProperties:
type: string
type: object
selfLink:
type: string
creationTimestamp:
type: string
finalizers:
items:
type: string
type: array
labels:
additionalProperties:
type: string
type: object
ownerReferences:
items:
properties:
blockOwnerDeletion:
type: boolean
uid:
type: string
apiVersion:
type: string
name:
type: string
kind:
type: string
controller:
type: boolean
type: object
type: array
uid:
type: string
generation:
type: integer
name:
type: string
managedFields:
items:
properties:
time:
type: string
apiVersion:
type: string
fieldsV1:
type: object
fieldsType:
type: string
manager:
type: string
operation:
type: string
subresource:
type: string
type: object
type: array
namespace:
type: string
type: object
spec:
properties:
volumes:
items:
properties:
hostPath:
properties:
path:
type: string
type:
type: string
type: object
flexVolume:
properties:
readOnly:
type: boolean
options:
additionalProperties:
type: string
type: object
secretRef:
properties:
name:
type: string
type: object
fsType:
type: string
driver:
type: string
type: object
gcePersistentDisk:
properties:
readOnly:
type: boolean
pdName:
type: string
partition:
type: integer
fsType:
type: string
type: object
ephemeral:
properties:
volumeClaimTemplate:
properties:
metadata:
properties:
generateName:
type: string
deletionGracePeriodSeconds:
type: integer
deletionTimestamp:
type: string
clusterName:
type: string
resourceVersion:
type: string
annotations:
additionalProperties:
type: string
type: object
selfLink:
type: string
creationTimestamp:
type: string
finalizers:
items:
type: string
type: array
labels:
additionalProperties:
type: string
type: object
ownerReferences:
items:
properties:
blockOwnerDeletion:
type: boolean
uid:
type: string
apiVersion:
type: string
name:
type: string
kind:
type: string
controller:
type: boolean
type: object
type: array
uid:
type: string
generation:
type: integer
name:
type: string
managedFields:
items:
properties:
time:
type: string
apiVersion:
type: string
fieldsV1:
type: object
fieldsType:
type: string
manager:
type: string
operation:
type: string
subresource:
type: string
type: object
type: array
namespace:
type: string
type: object
spec:
properties:
selector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
storageClassName:
type: string
dataSource:
properties:
name:
type: string
kind:
type: string
apiGroup:
type: string
type: object
resources:
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
dataSourceRef:
properties:
name:
type: string
kind:
type: string
apiGroup:
type: string
type: object
accessModes:
items:
type: string
type: array
volumeMode:
type: string
volumeName:
type: string
type: object
type: object
type: object
scaleIO:
properties:
readOnly:
type: boolean
storageMode:
type: string
storagePool:
type: string
system:
type: string
gateway:
type: string
secretRef:
properties:
name:
type: string
type: object
fsType:
type: string
sslEnabled:
type: boolean
volumeName:
type: string
protectionDomain:
type: string
type: object
csi:
properties:
nodePublishSecretRef:
properties:
name:
type: string
type: object
readOnly:
type: boolean
volumeAttributes:
additionalProperties:
type: string
type: object
fsType:
type: string
driver:
type: string
type: object
secret:
properties:
optional:
type: boolean
secretName:
type: string
items:
items:
properties:
path:
type: string
key:
type: string
mode:
type: integer
type: object
type: array
defaultMode:
type: integer
type: object
name:
type: string
vsphereVolume:
properties:
storagePolicyName:
type: string
storagePolicyID:
type: string
volumePath:
type: string
fsType:
type: string
type: object
gitRepo:
properties:
revision:
type: string
repository:
type: string
directory:
type: string
type: object
glusterfs:
properties:
path:
type: string
readOnly:
type: boolean
endpoints:
type: string
type: object
nfs:
properties:
path:
type: string
readOnly:
type: boolean
server:
type: string
type: object
cinder:
properties:
readOnly:
type: boolean
secretRef:
properties:
name:
type: string
type: object
fsType:
type: string
volumeID:
type: string
type: object
flocker:
properties:
datasetUUID:
type: string
datasetName:
type: string
type: object
quobyte:
properties:
group:
type: string
readOnly:
type: boolean
volume:
type: string
user:
type: string
registry:
type: string
tenant:
type: string
type: object
photonPersistentDisk:
properties:
pdID:
type: string
fsType:
type: string
type: object
persistentVolumeClaim:
properties:
readOnly:
type: boolean
claimName:
type: string
type: object
awsElasticBlockStore:
properties:
readOnly:
type: boolean
partition:
type: integer
fsType:
type: string
volumeID:
type: string
type: object
configMap:
properties:
optional:
type: boolean
items:
items:
properties:
path:
type: string
key:
type: string
mode:
type: integer
type: object
type: array
defaultMode:
type: integer
name:
type: string
type: object
storageos:
properties:
readOnly:
type: boolean
volumeNamespace:
type: string
secretRef:
properties:
name:
type: string
type: object
fsType:
type: string
volumeName:
type: string
type: object
portworxVolume:
properties:
readOnly:
type: boolean
fsType:
type: string
volumeID:
type: string
type: object
iscsi:
properties:
readOnly:
type: boolean
chapAuthSession:
type: boolean
lun:
type: integer
targetPortal:
type: string
iscsiInterface:
type: string
portals:
items:
type: string
type: array
initiatorName:
type: string
secretRef:
properties:
name:
type: string
type: object
fsType:
type: string
iqn:
type: string
chapAuthDiscovery:
type: boolean
type: object
rbd:
properties:
readOnly:
type: boolean
pool:
type: string
keyring:
type: string
image:
type: string
secretRef:
properties:
name:
type: string
type: object
monitors:
items:
type: string
type: array
fsType:
type: string
user:
type: string
type: object
azureFile:
properties:
readOnly:
type: boolean
secretName:
type: string
shareName:
type: string
type: object
downwardAPI:
properties:
items:
items:
properties:
path:
type: string
fieldRef:
properties:
apiVersion:
type: string
fieldPath:
type: string
type: object
resourceFieldRef:
properties:
containerName:
type: string
divisor:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
resource:
type: string
type: object
mode:
type: integer
type: object
type: array
defaultMode:
type: integer
type: object
projected:
properties:
defaultMode:
type: integer
sources:
items:
properties:
secret:
properties:
optional:
type: boolean
items:
items:
properties:
path:
type: string
key:
type: string
mode:
type: integer
type: object
type: array
name:
type: string
type: object
configMap:
properties:
optional:
type: boolean
items:
items:
properties:
path:
type: string
key:
type: string
mode:
type: integer
type: object
type: array
name:
type: string
type: object
serviceAccountToken:
properties:
path:
type: string
audience:
type: string
expirationSeconds:
type: integer
type: object
downwardAPI:
properties:
items:
items:
properties:
path:
type: string
fieldRef:
properties:
apiVersion:
type: string
fieldPath:
type: string
type: object
resourceFieldRef:
properties:
containerName:
type: string
divisor:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
resource:
type: string
type: object
mode:
type: integer
type: object
type: array
type: object
type: object
type: array
type: object
azureDisk:
properties:
readOnly:
type: boolean
diskName:
type: string
cachingMode:
type: string
fsType:
type: string
kind:
type: string
diskURI:
type: string
type: object
cephfs:
properties:
path:
type: string
readOnly:
type: boolean
secretRef:
properties:
name:
type: string
type: object
monitors:
items:
type: string
type: array
secretFile:
type: string
user:
type: string
type: object
emptyDir:
properties:
sizeLimit:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
medium:
type: string
type: object
fc:
properties:
readOnly:
type: boolean
lun:
type: integer
wwids:
items:
type: string
type: array
targetWWNs:
items:
type: string
type: array
fsType:
type: string
type: object
type: object
type: array
restartPolicy:
type: string
terminationGracePeriodSeconds:
type: integer
setHostnameAsFQDN:
type: boolean
dnsConfig:
properties:
nameservers:
items:
type: string
type: array
searches:
items:
type: string
type: array
options:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
type: object
securityContext:
properties:
runAsGroup:
type: integer
runAsNonRoot:
type: boolean
windowsOptions:
properties:
gmsaCredentialSpecName:
type: string
hostProcess:
type: boolean
gmsaCredentialSpec:
type: string
runAsUserName:
type: string
type: object
sysctls:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
fsGroupChangePolicy:
type: string
seLinuxOptions:
properties:
role:
type: string
type:
type: string
user:
type: string
level:
type: string
type: object
fsGroup:
type: integer
supplementalGroups:
items:
type: integer
type: array
runAsUser:
type: integer
seccompProfile:
properties:
type:
type: string
localhostProfile:
type: string
type: object
type: object
imagePullSecrets:
items:
properties:
name:
type: string
type: object
type: array
subdomain:
type: string
serviceAccount:
type: string
activeDeadlineSeconds:
type: integer
priority:
type: integer
ephemeralContainers:
items:
properties:
lifecycle:
properties:
postStart:
properties:
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
preStop:
properties:
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
type: object
command:
items:
type: string
type: array
livenessProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
stdin:
type: boolean
image:
type: string
targetContainerName:
type: string
terminationMessagePolicy:
type: string
readinessProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
terminationMessagePath:
type: string
env:
items:
properties:
value:
type: string
valueFrom:
properties:
configMapKeyRef:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
fieldRef:
properties:
apiVersion:
type: string
fieldPath:
type: string
type: object
resourceFieldRef:
properties:
containerName:
type: string
divisor:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
resource:
type: string
type: object
secretKeyRef:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
type: object
name:
type: string
type: object
type: array
tty:
type: boolean
args:
items:
type: string
type: array
startupProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
stdinOnce:
type: boolean
ports:
items:
properties:
containerPort:
type: integer
hostPort:
type: integer
name:
type: string
protocol:
type: string
hostIP:
type: string
type: object
type: array
workingDir:
type: string
envFrom:
items:
properties:
prefix:
type: string
configMapRef:
properties:
optional:
type: boolean
name:
type: string
type: object
secretRef:
properties:
optional:
type: boolean
name:
type: string
type: object
type: object
type: array
volumeMounts:
items:
properties:
readOnly:
type: boolean
subPathExpr:
type: string
mountPath:
type: string
mountPropagation:
type: string
subPath:
type: string
name:
type: string
type: object
type: array
securityContext:
properties:
runAsGroup:
type: integer
runAsNonRoot:
type: boolean
windowsOptions:
properties:
gmsaCredentialSpecName:
type: string
hostProcess:
type: boolean
gmsaCredentialSpec:
type: string
runAsUserName:
type: string
type: object
allowPrivilegeEscalation:
type: boolean
capabilities:
properties:
add:
items:
type: string
type: array
drop:
items:
type: string
type: array
type: object
seLinuxOptions:
properties:
role:
type: string
type:
type: string
user:
type: string
level:
type: string
type: object
readOnlyRootFilesystem:
type: boolean
privileged:
type: boolean
runAsUser:
type: integer
procMount:
type: string
seccompProfile:
properties:
type:
type: string
localhostProfile:
type: string
type: object
type: object
name:
type: string
resources:
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
imagePullPolicy:
type: string
volumeDevices:
items:
properties:
devicePath:
type: string
name:
type: string
type: object
type: array
type: object
type: array
automountServiceAccountToken:
type: boolean
containers:
items:
properties:
lifecycle:
properties:
postStart:
properties:
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
preStop:
properties:
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
type: object
command:
items:
type: string
type: array
livenessProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
stdin:
type: boolean
image:
type: string
terminationMessagePolicy:
type: string
readinessProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
terminationMessagePath:
type: string
env:
items:
properties:
value:
type: string
valueFrom:
properties:
configMapKeyRef:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
fieldRef:
properties:
apiVersion:
type: string
fieldPath:
type: string
type: object
resourceFieldRef:
properties:
containerName:
type: string
divisor:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
resource:
type: string
type: object
secretKeyRef:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
type: object
name:
type: string
type: object
type: array
tty:
type: boolean
args:
items:
type: string
type: array
startupProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
stdinOnce:
type: boolean
ports:
items:
properties:
containerPort:
type: integer
hostPort:
type: integer
name:
type: string
protocol:
type: string
hostIP:
type: string
type: object
type: array
workingDir:
type: string
envFrom:
items:
properties:
prefix:
type: string
configMapRef:
properties:
optional:
type: boolean
name:
type: string
type: object
secretRef:
properties:
optional:
type: boolean
name:
type: string
type: object
type: object
type: array
volumeMounts:
items:
properties:
readOnly:
type: boolean
subPathExpr:
type: string
mountPath:
type: string
mountPropagation:
type: string
subPath:
type: string
name:
type: string
type: object
type: array
securityContext:
properties:
runAsGroup:
type: integer
runAsNonRoot:
type: boolean
windowsOptions:
properties:
gmsaCredentialSpecName:
type: string
hostProcess:
type: boolean
gmsaCredentialSpec:
type: string
runAsUserName:
type: string
type: object
allowPrivilegeEscalation:
type: boolean
capabilities:
properties:
add:
items:
type: string
type: array
drop:
items:
type: string
type: array
type: object
seLinuxOptions:
properties:
role:
type: string
type:
type: string
user:
type: string
level:
type: string
type: object
readOnlyRootFilesystem:
type: boolean
privileged:
type: boolean
runAsUser:
type: integer
procMount:
type: string
seccompProfile:
properties:
type:
type: string
localhostProfile:
type: string
type: object
type: object
name:
type: string
resources:
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
imagePullPolicy:
type: string
volumeDevices:
items:
properties:
devicePath:
type: string
name:
type: string
type: object
type: array
type: object
type: array
initContainers:
items:
properties:
lifecycle:
properties:
postStart:
properties:
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
preStop:
properties:
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
type: object
command:
items:
type: string
type: array
livenessProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
stdin:
type: boolean
image:
type: string
terminationMessagePolicy:
type: string
readinessProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
terminationMessagePath:
type: string
env:
items:
properties:
value:
type: string
valueFrom:
properties:
configMapKeyRef:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
fieldRef:
properties:
apiVersion:
type: string
fieldPath:
type: string
type: object
resourceFieldRef:
properties:
containerName:
type: string
divisor:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
resource:
type: string
type: object
secretKeyRef:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
type: object
name:
type: string
type: object
type: array
tty:
type: boolean
args:
items:
type: string
type: array
startupProbe:
properties:
periodSeconds:
type: integer
failureThreshold:
type: integer
initialDelaySeconds:
type: integer
grpc:
properties:
port:
type: integer
service:
type: string
type: object
successThreshold:
type: integer
terminationGracePeriodSeconds:
type: integer
tcpSocket:
properties:
host:
type: string
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
timeoutSeconds:
type: integer
exec:
properties:
command:
items:
type: string
type: array
type: object
httpGet:
properties:
path:
type: string
scheme:
type: string
host:
type: string
httpHeaders:
items:
properties:
value:
type: string
name:
type: string
type: object
type: array
port:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
stdinOnce:
type: boolean
ports:
items:
properties:
containerPort:
type: integer
hostPort:
type: integer
name:
type: string
protocol:
type: string
hostIP:
type: string
type: object
type: array
workingDir:
type: string
envFrom:
items:
properties:
prefix:
type: string
configMapRef:
properties:
optional:
type: boolean
name:
type: string
type: object
secretRef:
properties:
optional:
type: boolean
name:
type: string
type: object
type: object
type: array
volumeMounts:
items:
properties:
readOnly:
type: boolean
subPathExpr:
type: string
mountPath:
type: string
mountPropagation:
type: string
subPath:
type: string
name:
type: string
type: object
type: array
securityContext:
properties:
runAsGroup:
type: integer
runAsNonRoot:
type: boolean
windowsOptions:
properties:
gmsaCredentialSpecName:
type: string
hostProcess:
type: boolean
gmsaCredentialSpec:
type: string
runAsUserName:
type: string
type: object
allowPrivilegeEscalation:
type: boolean
capabilities:
properties:
add:
items:
type: string
type: array
drop:
items:
type: string
type: array
type: object
seLinuxOptions:
properties:
role:
type: string
type:
type: string
user:
type: string
level:
type: string
type: object
readOnlyRootFilesystem:
type: boolean
privileged:
type: boolean
runAsUser:
type: integer
procMount:
type: string
seccompProfile:
properties:
type:
type: string
localhostProfile:
type: string
type: object
type: object
name:
type: string
resources:
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
imagePullPolicy:
type: string
volumeDevices:
items:
properties:
devicePath:
type: string
name:
type: string
type: object
type: array
type: object
type: array
priorityClassName:
type: string
tolerations:
items:
properties:
key:
type: string
operator:
type: string
tolerationSeconds:
type: integer
value:
type: string
effect:
type: string
type: object
type: array
hostPID:
type: boolean
os:
properties:
name:
type: string
type: object
serviceAccountName:
type: string
shareProcessNamespace:
type: boolean
hostNetwork:
type: boolean
hostname:
type: string
nodeSelector:
additionalProperties:
type: string
type: object
enableServiceLinks:
type: boolean
affinity:
properties:
podAntiAffinity:
properties:
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
namespaces:
items:
type: string
type: array
topologyKey:
type: string
labelSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
namespaceSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
type: object
type: array
preferredDuringSchedulingIgnoredDuringExecution:
items:
properties:
podAffinityTerm:
properties:
namespaces:
items:
type: string
type: array
topologyKey:
type: string
labelSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
namespaceSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
type: object
weight:
type: integer
type: object
type: array
type: object
nodeAffinity:
properties:
preferredDuringSchedulingIgnoredDuringExecution:
items:
properties:
weight:
type: integer
preference:
properties:
matchFields:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
type: object
type: object
type: array
requiredDuringSchedulingIgnoredDuringExecution:
properties:
nodeSelectorTerms:
items:
properties:
matchFields:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
type: object
type: array
type: object
type: object
podAffinity:
properties:
requiredDuringSchedulingIgnoredDuringExecution:
items:
properties:
namespaces:
items:
type: string
type: array
topologyKey:
type: string
labelSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
namespaceSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
type: object
type: array
preferredDuringSchedulingIgnoredDuringExecution:
items:
properties:
podAffinityTerm:
properties:
namespaces:
items:
type: string
type: array
topologyKey:
type: string
labelSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
namespaceSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
type: object
weight:
type: integer
type: object
type: array
type: object
type: object
readinessGates:
items:
properties:
conditionType:
type: string
type: object
type: array
dnsPolicy:
type: string
hostIPC:
type: boolean
topologySpreadConstraints:
items:
properties:
topologyKey:
type: string
maxSkew:
type: integer
whenUnsatisfiable:
type: string
labelSelector:
properties:
matchExpressions:
items:
properties:
key:
type: string
values:
items:
type: string
type: array
operator:
type: string
type: object
type: array
matchLabels:
additionalProperties:
type: string
type: object
type: object
type: object
type: array
overhead:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
schedulerName:
type: string
nodeName:
type: string
preemptionPolicy:
type: string
hostAliases:
items:
properties:
hostnames:
items:
type: string
type: array
ip:
type: string
type: object
type: array
runtimeClassName:
type: string
type: object
type: object
type: object
ingress:
description: |-
The deployment is, by default, exposed through a basic ingress.
You can change this behaviour by setting the enabled property to false.
properties:
enabled:
type: boolean
type: object
image:
description: Custom Keycloak image to be used.
type: string
imagePullSecrets:
description: Secret(s) that might be used when pulling an image from
a private container image registry or repository.
items:
properties:
name:
type: string
type: object
type: array
additionalOptions:
description: |-
Configuration of the Keycloak server.
expressed as a keys (reference: https://www.keycloak.org/server/all-config) and values that can be either direct values or references to secrets.
items:
properties:
secret:
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
value:
type: string
name:
type: string
type: object
type: array
db:
description: In this section you can find all properties related to
connect to a database.
properties:
passwordSecret:
description: The reference to a secret holding the password of
the database user.
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
usernameSecret:
description: The reference to a secret holding the username of
the database user.
properties:
optional:
type: boolean
key:
type: string
name:
type: string
type: object
port:
description: "Sets the port of the default JDBC URL of the chosen\
\ vendor. If the `url` option is set, this option is ignored."
type: integer
schema:
description: The database schema to be used.
type: string
host:
description: "Sets the hostname of the default JDBC URL of the\
\ chosen vendor. If the `url` option is set, this option is\
\ ignored."
type: string
url:
description: "The full database JDBC URL. If not provided, a default\
\ URL is set based on the selected database vendor. For instance,\
\ if using 'postgres', the default JDBC URL would be 'jdbc:postgresql://localhost/keycloak'. "
type: string
poolInitialSize:
description: The initial size of the connection pool.
type: integer
poolMaxSize:
description: The maximum size of the connection pool.
type: integer
vendor:
description: The database vendor.
type: string
database:
description: "Sets the database name of the default JDBC URL of\
\ the chosen vendor. If the `url` option is set, this option\
\ is ignored."
type: string
poolMinSize:
description: The minimal size of the connection pool.
type: integer
type: object
features:
description: "In this section you can configure Keycloak features,\
\ which should be enabled/disabled."
properties:
disabled:
description: Disabled Keycloak features
items:
type: string
type: array
enabled:
description: Enabled Keycloak features
items:
type: string
type: array
type: object
type: object
status:
properties:
conditions:
items:
properties:
status:
type: boolean
type:
type: string
message:
type: string
type: object
type: array
type: object
type: object
served: true
storage: true
subresources:
status: {}