From 5ad27aaa7e81b249c3526a751d93941886b0611a Mon Sep 17 00:00:00 2001 From: "ming.tang" Date: Wed, 8 Nov 2023 16:01:25 +0800 Subject: [PATCH] Fixed helm installation failure Signed-off-by: ming.tang --- .gitignore | 1 + build/helm/sedna.tgz | Bin 0 -> 112014 bytes build/helm/sedna/Chart.yaml | 2 +- build/helm/sedna/README.md | 5 +- build/helm/sedna/charts/gm/Chart.yaml | 2 +- build/helm/sedna/charts/gm/values.yaml | 2 +- build/helm/sedna/charts/kb/Chart.yaml | 2 +- build/helm/sedna/charts/kb/values.yaml | 2 +- build/helm/sedna/charts/lc/Chart.yaml | 2 +- .../sedna/charts/lc/templates/daemonset.yaml | 2 +- build/helm/sedna/charts/lc/values.yaml | 2 +- build/helm/sedna/crds/sedna.io_datasets.yaml | 2 +- .../sedna.io_featureextractionservices.yaml | 3081 +++++++++++++++++ .../crds/sedna.io_federatedlearningjobs.yaml | 2 +- .../sedna.io_incrementallearningjobs.yaml | 9 +- .../crds/sedna.io_jointinferenceservices.yaml | 2 +- .../crds/sedna.io_lifelonglearningjobs.yaml | 52 +- build/helm/sedna/crds/sedna.io_models.yaml | 6 +- .../crds/sedna.io_objectsearchservices.yaml | 2 +- .../crds/sedna.io_objecttrackingservices.yaml | 2 +- build/helm/sedna/crds/sedna.io_reidjobs.yaml | 3059 ++++++++++++++++ .../crds/sedna.io_videoanalyticsjobs.yaml | 3067 ++++++++++++++++ build/helm/sedna/templates/rbac.yaml | 6 + build/helm/sedna/values.yaml | 6 +- 24 files changed, 9297 insertions(+), 21 deletions(-) create mode 100644 build/helm/sedna.tgz create mode 100644 build/helm/sedna/crds/sedna.io_featureextractionservices.yaml create mode 100644 build/helm/sedna/crds/sedna.io_reidjobs.yaml create mode 100644 build/helm/sedna/crds/sedna.io_videoanalyticsjobs.yaml diff --git a/.gitignore b/.gitignore index 2c7554b9d..e0f0ac3bf 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ *.dll *.so *.dylib +*.DS_Store # Test binary, built with `go test -c` *.test diff --git a/build/helm/sedna.tgz b/build/helm/sedna.tgz new file mode 100644 index 0000000000000000000000000000000000000000..a5d38ee8fbb8ddb0bf309d880262a0ff6f21ccf6 GIT binary patch literal 112014 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

x5AMCuK_@R#dA>_CGklE~#LG zvCxBx9F>?Hx+09A>sf;Nyi!N3I z2Fuk)>|Ox#GMChx+-Xb6iN-DBPoRp_&A>*shdSIsN&k!TU>)O1rf%H zxHj0W;pj-I&+>!RN15qOPE2QgpBp>Qi%@6f@GuOd)aRdiHP?IXFwfrDxODM~)D2m$ zS_R`zb9!Wwgp9w;f5!E3V*YscdEKtxrk?REktnbYXESyGS*}-RDVnD9&gY$3`pPKl zu6gS&II=$oP1vW&F|HZ=(uV)0O&3qAcx36Y0@kdP)2eBvjX7~V9+B6;o{~dK7W@Gp z5HlL1@G|T|JG0b$*h7x*mq%mv^4s;Q_Z-scAS6!{wM%e1mlnf`6gV8i!|~;AKkyey zS%`Hi-tC!_Un{1eQ}-#OL|S0g7CGwCMN?ax0fL2e$)~I>sQ1jKs=n-h4xEl8A1}^@ zL0dmsMRkB4lJbXDA@M*!Ev2u8-dJAyc!D|G3DIhBuOIF1NWMMu zD=d4ULys`eYOi#p?3?>ByzJo2R8dv3x3TxlX?)}4{3ymYcr0#GlJdhQxers6h#TH_ z*EOJX@qBPm`_yhKHo>N9Z; z-Q8bV1!pS(OGwz*yc(lv-V-z^yh86vufqBvm~cXH{R?;roh%$l;FT_p7CFq3L1kq^ z6Dn}l0Au}McxfH!M@~58UcunlsmJ<82-&oXm3{{igr=r)xOYzTFd5@e85t4a&^wf3 z-6Ez^J11qH8(tcu&KR^|5Cx_VNpk!*Jgz8W;=wrx=l9v>7;CMzl zi@iAEY+eal40J8Cx-kHc`jStOrhF%E?qIWA#-Zb2NG{+I&7n#<&`UYM z{iiqMgQr6Ty{(14KfwV`&PD`_%b3gfiv;!T)BXd2SoQ3lt6WCpL?u9f8%xy8IAfg5 zxPT9&B}bT@G<$b4{J@DXi~`N;7?nGo~0uf|C>Xlq&9n1DV#i>9SQ!(9a9 zeXkj_gJ+^Kch{%f-eK5&3d|#{{hz^6opD#6f5FlCm{}36m(0~Uile<>3u68FHS(t; z9FkHA;EDa2^h1}@0&D^+TqoLsJ_X&W_Hn~EnI%SpZ4Ci=6MjEUyqXEf3o$uMZfFUV z%qSP+g4YE~Vn6>GJgyKT7iOYMpfC>R)s7cYy>mT9f}pqIOHn3%*OyxoZDMyPoF;xq zsI=(*B7tJ5^#XkNnbWwL>;CSxNsyk?_?D#QVt>m*q@m#cbZ$#xSGSEw0V#iIPt1g39a&~PN!VRz%;*=eTAaiMrwY?XY$c_na;2>!?awB| zZE4}?%8PCE^3Pv+Q+8#?yXhLolW$lSxVqYWwXog&A3;+5xWbwc_lsUDpvPk;-9Njc zB_Sm`h+c1!x|+8XwMQ!=kiaCPlsbzN*BZS^?G^EZUmkN$nM=ry-M7U*!(gjc<}N(t z-Zh}dpDH$;rvAdDe__(UFzH{I^e;^M7bg7+lm3NC|H7nyVbZ@a>0g-iFHHIuCXFKg z3zPnZN&kO>N#!>p3f9LYz_+WLWgr>vf2RDWuFZB}lgmBDc|-Sh`=GP7;+xL+t8k6D z34WIfqlkPdss+bs<0k%LBmJB+h@1gp0j#|?w{BP*h7c`5AQX!b@2ZU$2IpS!@p>A{ z8Ngk4IcoVKgW4KeAGWg<-PFiL+3!j=A{#Xv2s0dkt+p#%VF{uHY4Ok|i}vGUBbxg@ zh*zh?-u&)d@VJ63jq)2ri)m7t6R32*$ZGc|cyDoyTg;e$jPH;VY;6+p3Lcl@_v~f}(26Dia+;LHYYr)k*qFZ#&!E9SMP;o-yP^ gw2p4^=PF&mnaLdi3d*wN@jaTTb!ssR6FbU(0mxfAa{vGU literal 0 HcmV?d00001 diff --git a/build/helm/sedna/Chart.yaml b/build/helm/sedna/Chart.yaml index e75162763..2998c335c 100644 --- a/build/helm/sedna/Chart.yaml +++ b/build/helm/sedna/Chart.yaml @@ -21,7 +21,7 @@ version: 0.1.0 # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: v0.4.3 +appVersion: v0.6.0 dependencies: - name: kb diff --git a/build/helm/sedna/README.md b/build/helm/sedna/README.md index 96b42e226..aae844626 100644 --- a/build/helm/sedna/README.md +++ b/build/helm/sedna/README.md @@ -7,13 +7,14 @@ Visit https://github.com/kubeedge/sedna for more information. ``` $ git clone https://github.com/kubeedge/sedna.git $ cd sedna -$ helm install sedna ./build/helm/sedna +$ kubectl create namespace sedna +$ helm install sedna --namespace sedna ./build/helm/sedna ``` ## Uninstall ``` -$ helm uninstall sedna +$ helm uninstall sedna -n sedna ``` ## Update CRDs diff --git a/build/helm/sedna/charts/gm/Chart.yaml b/build/helm/sedna/charts/gm/Chart.yaml index f2c9332a0..1507306fc 100644 --- a/build/helm/sedna/charts/gm/Chart.yaml +++ b/build/helm/sedna/charts/gm/Chart.yaml @@ -21,4 +21,4 @@ version: 0.1.0 # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: v0.4.3 +appVersion: v0.6.0 diff --git a/build/helm/sedna/charts/gm/values.yaml b/build/helm/sedna/charts/gm/values.yaml index 6bea3fc0f..d2dd12f06 100644 --- a/build/helm/sedna/charts/gm/values.yaml +++ b/build/helm/sedna/charts/gm/values.yaml @@ -1,4 +1,4 @@ -image: kubeedge/sedna-gm:v0.4.3 +image: kubeedge/sedna-gm:v0.6.0 resources: requests: memory: 32Mi diff --git a/build/helm/sedna/charts/kb/Chart.yaml b/build/helm/sedna/charts/kb/Chart.yaml index 5b3f6a028..6b8956d6f 100644 --- a/build/helm/sedna/charts/kb/Chart.yaml +++ b/build/helm/sedna/charts/kb/Chart.yaml @@ -21,4 +21,4 @@ version: 0.1.0 # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: v0.4.3 +appVersion: v0.6.0 diff --git a/build/helm/sedna/charts/kb/values.yaml b/build/helm/sedna/charts/kb/values.yaml index da841e827..aa284a4f6 100644 --- a/build/helm/sedna/charts/kb/values.yaml +++ b/build/helm/sedna/charts/kb/values.yaml @@ -1,4 +1,4 @@ -image: kubeedge/sedna-kb:v0.4.3 +image: kubeedge/sedna-kb:v0.6.0 resources: requests: memory: 256Mi diff --git a/build/helm/sedna/charts/lc/Chart.yaml b/build/helm/sedna/charts/lc/Chart.yaml index a952b15bb..3972a072c 100644 --- a/build/helm/sedna/charts/lc/Chart.yaml +++ b/build/helm/sedna/charts/lc/Chart.yaml @@ -21,4 +21,4 @@ version: 0.1.0 # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: v0.4.3 +appVersion: v0.6.0 diff --git a/build/helm/sedna/charts/lc/templates/daemonset.yaml b/build/helm/sedna/charts/lc/templates/daemonset.yaml index cf9ee4986..20d12a7da 100644 --- a/build/helm/sedna/charts/lc/templates/daemonset.yaml +++ b/build/helm/sedna/charts/lc/templates/daemonset.yaml @@ -16,7 +16,7 @@ spec: spec: containers: - name: lc - image: kubeedge/sedna-lc:v0.4.3 + image: {{ .Values.image }} env: - name: GM_ADDRESS value: gm.sedna:9000 diff --git a/build/helm/sedna/charts/lc/values.yaml b/build/helm/sedna/charts/lc/values.yaml index 68aee783c..d3296633a 100644 --- a/build/helm/sedna/charts/lc/values.yaml +++ b/build/helm/sedna/charts/lc/values.yaml @@ -1,4 +1,4 @@ -image: kubeedge/sedna-lc:v0.4.3 +image: kubeedge/sedna-lc:v0.6.0 resources: requests: memory: 32Mi diff --git a/build/helm/sedna/crds/sedna.io_datasets.yaml b/build/helm/sedna/crds/sedna.io_datasets.yaml index 683a3c772..0267bbf3d 100644 --- a/build/helm/sedna/crds/sedna.io_datasets.yaml +++ b/build/helm/sedna/crds/sedna.io_datasets.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: datasets.sedna.io spec: diff --git a/build/helm/sedna/crds/sedna.io_featureextractionservices.yaml b/build/helm/sedna/crds/sedna.io_featureextractionservices.yaml new file mode 100644 index 000000000..bf62d71c4 --- /dev/null +++ b/build/helm/sedna/crds/sedna.io_featureextractionservices.yaml @@ -0,0 +1,3081 @@ + +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.6.2 + creationTimestamp: null + name: featureextractionservices.sedna.io +spec: + group: sedna.io + names: + kind: FeatureExtractionService + listKind: FeatureExtractionServiceList + plural: featureextractionservices + shortNames: + - fe + singular: featureextractionservice + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + kafkaSupport: + type: boolean + minReadySeconds: + format: int32 + type: integer + model: + properties: + name: + type: string + required: + - name + type: object + paused: + type: boolean + progressDeadlineSeconds: + format: int32 + type: integer + replicas: + format: int32 + type: integer + revisionHistoryLimit: + format: int32 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + strategy: + properties: + rollingUpdate: + properties: + maxSurge: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + maxUnavailable: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + type: object + type: + type: string + type: object + template: + properties: + metadata: + type: object + spec: + properties: + activeDeadlineSeconds: + format: int64 + type: integer + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + automountServiceAccountToken: + type: boolean + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + dnsConfig: + properties: + nameservers: + items: + type: string + type: array + options: + items: + properties: + name: + type: string + value: + type: string + type: object + type: array + searches: + items: + type: string + type: array + type: object + dnsPolicy: + type: string + enableServiceLinks: + type: boolean + ephemeralContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + targetContainerName: + type: string + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + type: object + type: array + hostIPC: + type: boolean + hostNetwork: + type: boolean + hostPID: + type: boolean + hostname: + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + nodeName: + type: string + nodeSelector: + additionalProperties: + type: string + type: object + overhead: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + preemptionPolicy: + type: string + priority: + format: int32 + type: integer + priorityClassName: + type: string + readinessGates: + items: + properties: + conditionType: + type: string + required: + - conditionType + type: object + type: array + restartPolicy: + type: string + runtimeClassName: + type: string + schedulerName: + type: string + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + serviceAccount: + type: string + serviceAccountName: + type: string + setHostnameAsFQDN: + type: boolean + shareProcessNamespace: + type: boolean + subdomain: + type: string + terminationGracePeriodSeconds: + format: int64 + type: integer + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + maxSkew: + format: int32 + type: integer + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + x-kubernetes-list-map-keys: + - topologyKey + - whenUnsatisfiable + x-kubernetes-list-type: map + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + required: + - containers + type: object + type: object + required: + - model + - selector + - template + type: object + status: + properties: + active: + format: int32 + type: integer + conditions: + items: + properties: + lastHeartbeatTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + failed: + format: int32 + type: integer + metrics: + items: + properties: + key: + type: string + value: + type: string + required: + - key + - value + type: object + type: array + startTime: + format: date-time + type: string + type: object + required: + - metadata + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/build/helm/sedna/crds/sedna.io_federatedlearningjobs.yaml b/build/helm/sedna/crds/sedna.io_federatedlearningjobs.yaml index 163596abb..288b4bd64 100644 --- a/build/helm/sedna/crds/sedna.io_federatedlearningjobs.yaml +++ b/build/helm/sedna/crds/sedna.io_federatedlearningjobs.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: federatedlearningjobs.sedna.io spec: diff --git a/build/helm/sedna/crds/sedna.io_incrementallearningjobs.yaml b/build/helm/sedna/crds/sedna.io_incrementallearningjobs.yaml index 87ec4d221..bf3d6596e 100644 --- a/build/helm/sedna/crds/sedna.io_incrementallearningjobs.yaml +++ b/build/helm/sedna/crds/sedna.io_incrementallearningjobs.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: incrementallearningjobs.sedna.io spec: @@ -3035,6 +3035,13 @@ spec: type: object evalSpec: properties: + initialEvalModel: + properties: + name: + type: string + required: + - name + type: object template: properties: metadata: diff --git a/build/helm/sedna/crds/sedna.io_jointinferenceservices.yaml b/build/helm/sedna/crds/sedna.io_jointinferenceservices.yaml index c58de7c46..c75d0f369 100644 --- a/build/helm/sedna/crds/sedna.io_jointinferenceservices.yaml +++ b/build/helm/sedna/crds/sedna.io_jointinferenceservices.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: jointinferenceservices.sedna.io spec: diff --git a/build/helm/sedna/crds/sedna.io_lifelonglearningjobs.yaml b/build/helm/sedna/crds/sedna.io_lifelonglearningjobs.yaml index 3ec60df6c..d73bf0af6 100644 --- a/build/helm/sedna/crds/sedna.io_lifelonglearningjobs.yaml +++ b/build/helm/sedna/crds/sedna.io_lifelonglearningjobs.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: lifelonglearningjobs.sedna.io spec: @@ -8889,6 +8889,56 @@ spec: - type type: object type: array + knowledgeBase: + properties: + AIClasses: + properties: + listOfAIClasses: + items: + type: string + type: array + numberOfAIClasses: + type: integer + required: + - numberOfAIClasses + type: object + AIModels: + properties: + listOfAIModels: + items: + properties: + averagePrecision: + type: number + modelID: + type: string + numberOfTrainSamples: + type: integer + required: + - averagePrecision + - modelID + - numberOfTrainSamples + type: object + type: array + numberOfAIModels: + type: integer + required: + - numberOfAIModels + type: object + samples: + properties: + numberOfLabeledUnseenSample: + type: integer + numberOfUnseenSample: + type: integer + required: + - numberOfLabeledUnseenSample + - numberOfUnseenSample + type: object + required: + - AIClasses + - AIModels + - samples + type: object startTime: format: date-time type: string diff --git a/build/helm/sedna/crds/sedna.io_models.yaml b/build/helm/sedna/crds/sedna.io_models.yaml index 4462bd130..82ee40d27 100644 --- a/build/helm/sedna/crds/sedna.io_models.yaml +++ b/build/helm/sedna/crds/sedna.io_models.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: models.sedna.io spec: @@ -30,6 +30,10 @@ spec: properties: credentialName: type: string + device_soc_versions: + items: + type: string + type: array format: type: string url: diff --git a/build/helm/sedna/crds/sedna.io_objectsearchservices.yaml b/build/helm/sedna/crds/sedna.io_objectsearchservices.yaml index 266e37fab..7e51d53d9 100644 --- a/build/helm/sedna/crds/sedna.io_objectsearchservices.yaml +++ b/build/helm/sedna/crds/sedna.io_objectsearchservices.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: objectsearchservices.sedna.io spec: diff --git a/build/helm/sedna/crds/sedna.io_objecttrackingservices.yaml b/build/helm/sedna/crds/sedna.io_objecttrackingservices.yaml index 17529e95f..6299cade5 100644 --- a/build/helm/sedna/crds/sedna.io_objecttrackingservices.yaml +++ b/build/helm/sedna/crds/sedna.io_objecttrackingservices.yaml @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.4.1 + controller-gen.kubebuilder.io/version: v0.6.2 creationTimestamp: null name: objecttrackingservices.sedna.io spec: diff --git a/build/helm/sedna/crds/sedna.io_reidjobs.yaml b/build/helm/sedna/crds/sedna.io_reidjobs.yaml new file mode 100644 index 000000000..e2910be97 --- /dev/null +++ b/build/helm/sedna/crds/sedna.io_reidjobs.yaml @@ -0,0 +1,3059 @@ + +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.6.2 + creationTimestamp: null + name: reidjobs.sedna.io +spec: + group: sedna.io + names: + kind: ReidJob + listKind: ReidJobList + plural: reidjobs + shortNames: + - reid + singular: reidjob + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + activeDeadlineSeconds: + format: int64 + type: integer + backoffLimit: + format: int32 + type: integer + completionMode: + type: string + completions: + format: int32 + type: integer + kafkaSupport: + type: boolean + manualSelector: + type: boolean + parallelism: + format: int32 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + suspend: + type: boolean + template: + properties: + metadata: + type: object + spec: + properties: + activeDeadlineSeconds: + format: int64 + type: integer + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + automountServiceAccountToken: + type: boolean + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + dnsConfig: + properties: + nameservers: + items: + type: string + type: array + options: + items: + properties: + name: + type: string + value: + type: string + type: object + type: array + searches: + items: + type: string + type: array + type: object + dnsPolicy: + type: string + enableServiceLinks: + type: boolean + ephemeralContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + targetContainerName: + type: string + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + type: object + type: array + hostIPC: + type: boolean + hostNetwork: + type: boolean + hostPID: + type: boolean + hostname: + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + nodeName: + type: string + nodeSelector: + additionalProperties: + type: string + type: object + overhead: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + preemptionPolicy: + type: string + priority: + format: int32 + type: integer + priorityClassName: + type: string + readinessGates: + items: + properties: + conditionType: + type: string + required: + - conditionType + type: object + type: array + restartPolicy: + type: string + runtimeClassName: + type: string + schedulerName: + type: string + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + serviceAccount: + type: string + serviceAccountName: + type: string + setHostnameAsFQDN: + type: boolean + shareProcessNamespace: + type: boolean + subdomain: + type: string + terminationGracePeriodSeconds: + format: int64 + type: integer + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + maxSkew: + format: int32 + type: integer + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + x-kubernetes-list-map-keys: + - topologyKey + - whenUnsatisfiable + x-kubernetes-list-type: map + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + required: + - containers + type: object + type: object + ttlSecondsAfterFinished: + format: int32 + type: integer + required: + - template + type: object + status: + properties: + active: + format: int32 + type: integer + completionTime: + format: date-time + type: string + conditions: + items: + properties: + data: + type: string + lastHeartbeatTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + failed: + format: int32 + type: integer + phase: + type: string + startTime: + format: date-time + type: string + succeeded: + format: int32 + type: integer + type: object + required: + - metadata + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/build/helm/sedna/crds/sedna.io_videoanalyticsjobs.yaml b/build/helm/sedna/crds/sedna.io_videoanalyticsjobs.yaml new file mode 100644 index 000000000..4a46cf79a --- /dev/null +++ b/build/helm/sedna/crds/sedna.io_videoanalyticsjobs.yaml @@ -0,0 +1,3067 @@ + +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.6.2 + creationTimestamp: null + name: videoanalyticsjobs.sedna.io +spec: + group: sedna.io + names: + kind: VideoAnalyticsJob + listKind: VideoAnalyticsJobList + plural: videoanalyticsjobs + shortNames: + - va + singular: videoanalyticsjob + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + activeDeadlineSeconds: + format: int64 + type: integer + backoffLimit: + format: int32 + type: integer + completionMode: + type: string + completions: + format: int32 + type: integer + kafkaSupport: + type: boolean + manualSelector: + type: boolean + model: + properties: + name: + type: string + required: + - name + type: object + parallelism: + format: int32 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + suspend: + type: boolean + template: + properties: + metadata: + type: object + spec: + properties: + activeDeadlineSeconds: + format: int64 + type: integer + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + automountServiceAccountToken: + type: boolean + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + dnsConfig: + properties: + nameservers: + items: + type: string + type: array + options: + items: + properties: + name: + type: string + value: + type: string + type: object + type: array + searches: + items: + type: string + type: array + type: object + dnsPolicy: + type: string + enableServiceLinks: + type: boolean + ephemeralContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + targetContainerName: + type: string + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + type: object + type: array + hostIPC: + type: boolean + hostNetwork: + type: boolean + hostPID: + type: boolean + hostname: + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + nodeName: + type: string + nodeSelector: + additionalProperties: + type: string + type: object + overhead: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + preemptionPolicy: + type: string + priority: + format: int32 + type: integer + priorityClassName: + type: string + readinessGates: + items: + properties: + conditionType: + type: string + required: + - conditionType + type: object + type: array + restartPolicy: + type: string + runtimeClassName: + type: string + schedulerName: + type: string + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object + type: object + serviceAccount: + type: string + serviceAccountName: + type: string + setHostnameAsFQDN: + type: boolean + shareProcessNamespace: + type: boolean + subdomain: + type: string + terminationGracePeriodSeconds: + format: int64 + type: integer + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + maxSkew: + format: int32 + type: integer + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + x-kubernetes-list-map-keys: + - topologyKey + - whenUnsatisfiable + x-kubernetes-list-type: map + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + required: + - containers + type: object + type: object + ttlSecondsAfterFinished: + format: int32 + type: integer + required: + - model + - template + type: object + status: + properties: + active: + format: int32 + type: integer + completionTime: + format: date-time + type: string + conditions: + items: + properties: + data: + type: string + lastHeartbeatTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + failed: + format: int32 + type: integer + phase: + type: string + startTime: + format: date-time + type: string + succeeded: + format: int32 + type: integer + type: object + required: + - metadata + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/build/helm/sedna/templates/rbac.yaml b/build/helm/sedna/templates/rbac.yaml index 6eb1ffb60..664b76556 100644 --- a/build/helm/sedna/templates/rbac.yaml +++ b/build/helm/sedna/templates/rbac.yaml @@ -16,6 +16,9 @@ rules: - lifelonglearningjobs - objectsearchservices - objecttrackingservices + - reidjobs + - videoanalyticsjobs + - featureextractionservices verbs: - get - list @@ -34,6 +37,9 @@ rules: - lifelonglearningjobs/status - objectsearchservices/status - objecttrackingservices/status + - reidjobs/status + - videoanalyticsjobs/status + - featureextractionservices/status verbs: - get - update diff --git a/build/helm/sedna/values.yaml b/build/helm/sedna/values.yaml index e378eb824..140492f62 100644 --- a/build/helm/sedna/values.yaml +++ b/build/helm/sedna/values.yaml @@ -1,5 +1,5 @@ kb: - image: kubeedge/sedna-kb:v0.4.3 + image: kubeedge/sedna-kb:v0.6.0 resources: requests: memory: 256Mi @@ -8,7 +8,7 @@ kb: memory: 512Mi gm: - image: kubeedge/sedna-gm:v0.4.3 + image: kubeedge/sedna-gm:v0.6.0 resources: requests: memory: 32Mi @@ -28,7 +28,7 @@ gm: server: http://kb.sedna:9020 lc: - image: kubeedge/sedna-lc:v0.4.3 + image: kubeedge/sedna-lc:v0.6.0 resources: requests: memory: 32Mi