From 530095fbcae47e71c75e4fc85930ff096290d9d9 Mon Sep 17 00:00:00 2001 From: zhaoyh6 Date: Wed, 10 Nov 2021 17:16:19 +0800 Subject: [PATCH] [UUI] NLP for IBN helm chart NLP component added to UUI Issue-ID: USECASEUI-605 Signed-off-by: zhaoyh6 Change-Id: I0e4a4c71c0bd9bfacb9d1983e1f4a9a79aaab47b --- kubernetes/uui/components/uui-nlp/Chart.yaml | 22 +++++ .../uui/components/uui-nlp/requirements.yaml | 27 ++++++ .../components/uui-nlp/templates/deployment.yaml | 62 ++++++++++++++ .../uui/components/uui-nlp/templates/ingress.yaml | 1 + .../uui/components/uui-nlp/templates/pv.yaml | 20 +++++ .../uui/components/uui-nlp/templates/pvc.yaml | 19 +++++ .../uui/components/uui-nlp/templates/service.yaml | 20 +++++ kubernetes/uui/components/uui-nlp/values.yaml | 96 ++++++++++++++++++++++ kubernetes/uui/requirements.yaml | 4 + 9 files changed, 271 insertions(+) create mode 100644 kubernetes/uui/components/uui-nlp/Chart.yaml create mode 100644 kubernetes/uui/components/uui-nlp/requirements.yaml create mode 100644 kubernetes/uui/components/uui-nlp/templates/deployment.yaml create mode 100644 kubernetes/uui/components/uui-nlp/templates/ingress.yaml create mode 100644 kubernetes/uui/components/uui-nlp/templates/pv.yaml create mode 100644 kubernetes/uui/components/uui-nlp/templates/pvc.yaml create mode 100644 kubernetes/uui/components/uui-nlp/templates/service.yaml create mode 100644 kubernetes/uui/components/uui-nlp/values.yaml diff --git a/kubernetes/uui/components/uui-nlp/Chart.yaml b/kubernetes/uui/components/uui-nlp/Chart.yaml new file mode 100644 index 0000000000..3f09b486aa --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/Chart.yaml @@ -0,0 +1,22 @@ +#============LICENSE_START======================================================== +# ================================================================================ +# Copyright (c) 2021 AT&T. All rights reserved. +# Modifications Copyright © 2021 Orange +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +apiVersion: v1 +description: ONAP UUI NLP +name: uui-nlp +version: 9.0.0 diff --git a/kubernetes/uui/components/uui-nlp/requirements.yaml b/kubernetes/uui/components/uui-nlp/requirements.yaml new file mode 100644 index 0000000000..52fd1da64e --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/requirements.yaml @@ -0,0 +1,27 @@ +#============LICENSE_START======================================================== +# Copyright (c) 2021 AT&T. All rights reserved. +# Modifications Copyright © 2021 Orange +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +dependencies: + - name: common + version: ~9.x-0 + repository: '@local' + - name: repositoryGenerator + version: ~9.x-0 + repository: '@local' + - name: serviceAccount + version: ~9.x-0 + repository: '@local' diff --git a/kubernetes/uui/components/uui-nlp/templates/deployment.yaml b/kubernetes/uui/components/uui-nlp/templates/deployment.yaml new file mode 100644 index 0000000000..e72ee448c6 --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/templates/deployment.yaml @@ -0,0 +1,62 @@ +{{/* +#============LICENSE_START======================================================== +# ================================================================================ +# Copyright (c) 2021 AT&T. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= +*/}} + +apiVersion: apps/v1 +kind: Deployment +metadata: {{- include "common.resourceMetadata" . | nindent 2 }} +spec: + replicas: 1 + selector: {{- include "common.selectors" . | nindent 4 }} + template: + metadata: {{- include "common.templateMetadata" . | nindent 6 }} + spec: + {{ include "common.podSecurityContext" . | indent 6 | trim}} + containers: + - name: {{ include "common.name" . }} + image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }} + imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} + resources: {{ include "common.resources" . | nindent 12 }} + ports: {{ include "common.containerPorts" . | nindent 12 }} + {{- if eq .Values.liveness.enabled true }} + livenessProbe: + tcpSocket: + port: {{ .Values.service.internalPort }} + initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }} + periodSeconds: {{ .Values.liveness.periodSeconds }} + {{ end }} + readinessProbe: + tcpSocket: + port: {{ .Values.service.internalPort }} + initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }} + periodSeconds: {{ .Values.readiness.periodSeconds }} + volumeMounts: + - mountPath: /home/run/bert-master/upload + name: uui-server-v + serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}} + volumes: + - name: uui-server-v + {{- if .Values.persistence.enabled }} + persistentVolumeClaim: + claimName: {{ include "common.fullname" . }} + {{- else }} + emptyDir: {} + {{- end }} + + imagePullSecrets: + - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/uui/components/uui-nlp/templates/ingress.yaml b/kubernetes/uui/components/uui-nlp/templates/ingress.yaml new file mode 100644 index 0000000000..8f87c68f1e --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/templates/ingress.yaml @@ -0,0 +1 @@ +{{ include "common.ingress" . }} diff --git a/kubernetes/uui/components/uui-nlp/templates/pv.yaml b/kubernetes/uui/components/uui-nlp/templates/pv.yaml new file mode 100644 index 0000000000..a05ebfb207 --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/templates/pv.yaml @@ -0,0 +1,20 @@ +{{/* +#============LICENSE_START======================================================== +# ================================================================================ +# Copyright (c) 2021 AT&T Intellectual Property. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= +*/}} + +{{ include "common.PV" . }} \ No newline at end of file diff --git a/kubernetes/uui/components/uui-nlp/templates/pvc.yaml b/kubernetes/uui/components/uui-nlp/templates/pvc.yaml new file mode 100644 index 0000000000..2bd21dde5c --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/templates/pvc.yaml @@ -0,0 +1,19 @@ +{{/* +################################################################################ +# Copyright (c) 2021 AT&T # +# # +# Licensed under the Apache License, Version 2.0 (the "License"); # +# you may not use this file except in compliance with the License. # +# You may obtain a copy of the License at # +# # +# http://www.apache.org/licenses/LICENSE-2.0 # +# # +# Unless required by applicable law or agreed to in writing, software # +# distributed under the License is distributed on an "AS IS" BASIS, # +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # +# See the License for the specific language governing permissions and # +# limitations under the License. # +################################################################################ +*/}} + +{{ include "common.PVC" . }} \ No newline at end of file diff --git a/kubernetes/uui/components/uui-nlp/templates/service.yaml b/kubernetes/uui/components/uui-nlp/templates/service.yaml new file mode 100644 index 0000000000..40aaa735e2 --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/templates/service.yaml @@ -0,0 +1,20 @@ +{{/* +#============LICENSE_START======================================================== +# ================================================================================ +# Copyright (c) 2021 AT&T. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= +*/}} + +{{ include "common.service" . }} diff --git a/kubernetes/uui/components/uui-nlp/values.yaml b/kubernetes/uui/components/uui-nlp/values.yaml new file mode 100644 index 0000000000..3fb70fefae --- /dev/null +++ b/kubernetes/uui/components/uui-nlp/values.yaml @@ -0,0 +1,96 @@ +#============LICENSE_START======================================================== +#================================================================================= +# Copyright (c) 2021 AT&T. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +# Global values +global: + pullPolicy: Always + persistence: {} +image: onap/usecase-ui-nlp:1.0.2 + +uui-nlp: + enabled: true + +flavor: large + +onLinePort: &online_port 33011 +offLinePort: &offline_port 33012 +uploadPort: &upload_port 33013 + +# service configuration +service: + internalPort: 33013 + type: ClusterIP + name: uui-nlp + ports: + - name: http-online + port: *online_port + - name: http-offline + port: *offline_port + - name: http-upload + port: *upload_port + + +liveness: + initialDelaySeconds: 300 + periodSeconds: 30 + enabled: true + +readiness: + initialDelaySeconds: 300 + periodSeconds: 10 + +# Below parameter should match setting in all clients +# including contrib\tools\registry-initialize.sh +# which does preload +#registryCred: +# username: onapinitializer +# password: demo123456! + +# Parameters for persistent storage +persistence: + enabled: true + accessMode: ReadWriteOnce + size: 4Gi + mountPath: /dockerdata-nfs + mountSubPath: uui-nlp + volumeReclaimPolicy: Retain + +serviceAccount: + nameOverride: uui-nlp + roles: + - read + +securityContext: + user_id: 1000 + group_id: 1000 + +resources: + small: + limits: + cpu: 1 + memory: 1Gi + requests: + cpu: 0.5 + memory: 512Mi + large: + limits: + cpu: 2 + memory: 2Gi + requests: + cpu: 1 + memory: 1Gi + unlimited: {} diff --git a/kubernetes/uui/requirements.yaml b/kubernetes/uui/requirements.yaml index 05d649f500..d60dc43132 100644 --- a/kubernetes/uui/requirements.yaml +++ b/kubernetes/uui/requirements.yaml @@ -29,3 +29,7 @@ dependencies: - name: uui-server version: ~9.x-0 repository: 'file://components/uui-server' + - name: uui-nlp + version: ~9.x-0 + repository: 'file://components/uui-nlp' + condition: uui-nlp.enabled -- 2.16.6