Triggered by Gerrit: https://gerrit.o-ran-sc.org/r/c/ric-plt/ric-dep/+/13325 Running as SYSTEM [EnvInject] - Loading node environment variables. Building remotely on prd-ubuntu1804-builder-2c-2g-3658 (ubuntu1804-builder-2c-2g) in workspace /w/workspace/ric-plt-ric-dep-chart-shell-verify-master [ssh-agent] Looking for ssh-agent implementation... [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-F6iUewsVwTB1/agent.1718 SSH_AGENT_PID=1720 [ssh-agent] Started. Running ssh-add (command line suppressed) Identity added: /w/workspace/ric-plt-ric-dep-chart-shell-verify-master@tmp/private_key_1735904790996580353.key (jenkins-ssh) [ssh-agent] Using credentials jenkins (jenkins) The recommended git tool is: NONE using credential jenkins Wiping out workspace first. Cloning the remote Git repository Cloning repository ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep > git init /w/workspace/ric-plt-ric-dep-chart-shell-verify-master # timeout=10 Fetching upstream changes from ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep > git --version # timeout=10 > git --version # 'git version 2.17.1' using GIT_SSH to set credentials jenkins > git fetch --tags --progress -- ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep +refs/heads/*:refs/remotes/origin/* # timeout=10 > git config remote.origin.url ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep # timeout=10 > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 > git config remote.origin.url ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep # timeout=10 Fetching upstream changes from ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep using GIT_SSH to set credentials jenkins > git fetch --tags --progress -- ssh://oran-jobbuilder@gerrit.o-ran-sc.org:29418/ric-plt/ric-dep refs/changes/25/13325/1 # timeout=10 > git rev-parse e0063a46ec13108cfed2d718ae3fb0e36797af40^{commit} # timeout=10 JENKINS-19022: warning: possible memory leak due to Git plugin usage; see: https://plugins.jenkins.io/git/#remove-git-plugin-buildsbybranch-builddata-script Checking out Revision e0063a46ec13108cfed2d718ae3fb0e36797af40 (refs/changes/25/13325/1) > git config core.sparsecheckout # timeout=10 > git checkout -f e0063a46ec13108cfed2d718ae3fb0e36797af40 # timeout=10 Commit message: "Revert "RIC-919 Upgrade influxdb helm chart v1.8 > v2.2"" > git rev-parse FETCH_HEAD^{commit} # timeout=10 > git rev-list --no-walk 5268a33fc172890e07e0e2de413e194f334a9726 # timeout=10 provisioning config files... copy managed file [npmrc] to file:/home/jenkins/.npmrc copy managed file [pipconf] to file:/home/jenkins/.config/pip/pip.conf [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins13710612233037438574.sh ---> python-tools-install.sh Setup pyenv: * system (set by /opt/pyenv/version) * 3.8.13 (set by /opt/pyenv/version) * 3.9.13 (set by /opt/pyenv/version) * 3.10.6 (set by /opt/pyenv/version) lf-activate-venv(): INFO: Creating python3 venv at /tmp/venv-CDht lf-activate-venv(): INFO: Save venv in file: /tmp/.os_lf_venv lf-activate-venv(): INFO: Installing: lftools lf-activate-venv(): INFO: Adding /tmp/venv-CDht/bin to PATH Generating Requirements File Python 3.10.6 pip 24.2 from /tmp/venv-CDht/lib/python3.10/site-packages/pip (python 3.10) appdirs==1.4.4 argcomplete==3.5.0 aspy.yaml==1.3.0 attrs==24.2.0 autopage==0.5.2 beautifulsoup4==4.12.3 boto3==1.35.8 botocore==1.35.8 bs4==0.0.2 cachetools==5.5.0 certifi==2024.7.4 cffi==1.17.0 cfgv==3.4.0 chardet==5.2.0 charset-normalizer==3.3.2 click==8.1.7 cliff==4.7.0 cmd2==2.4.3 cryptography==3.3.2 debtcollector==3.0.0 decorator==5.1.1 defusedxml==0.7.1 Deprecated==1.2.14 distlib==0.3.8 dnspython==2.6.1 docker==4.2.2 dogpile.cache==1.3.3 email_validator==2.2.0 filelock==3.15.4 future==1.0.0 gitdb==4.0.11 GitPython==3.1.43 google-auth==2.34.0 httplib2==0.22.0 identify==2.6.0 idna==3.8 importlib-resources==1.5.0 iso8601==2.1.0 Jinja2==3.1.4 jmespath==1.0.1 jsonpatch==1.33 jsonpointer==3.0.0 jsonschema==4.23.0 jsonschema-specifications==2023.12.1 keystoneauth1==5.8.0 kubernetes==30.1.0 lftools==0.37.10 lxml==5.3.0 MarkupSafe==2.1.5 msgpack==1.0.8 multi_key_dict==2.0.3 munch==4.0.0 netaddr==1.3.0 netifaces==0.11.0 niet==1.4.2 nodeenv==1.9.1 oauth2client==4.1.3 oauthlib==3.2.2 openstacksdk==3.3.0 os-client-config==2.1.0 os-service-types==1.7.0 osc-lib==3.1.0 oslo.config==9.6.0 oslo.context==5.6.0 oslo.i18n==6.4.0 oslo.log==6.1.2 oslo.serialization==5.5.0 oslo.utils==7.3.0 packaging==24.1 pbr==6.1.0 platformdirs==4.2.2 prettytable==3.11.0 pyasn1==0.6.0 pyasn1_modules==0.4.0 pycparser==2.22 pygerrit2==2.0.15 PyGithub==2.4.0 PyJWT==2.9.0 PyNaCl==1.5.0 pyparsing==2.4.7 pyperclip==1.9.0 pyrsistent==0.20.0 python-cinderclient==9.5.0 python-dateutil==2.9.0.post0 python-heatclient==3.5.0 python-jenkins==1.8.2 python-keystoneclient==5.5.0 python-magnumclient==4.6.0 python-openstackclient==7.0.0 python-swiftclient==4.6.0 PyYAML==6.0.2 referencing==0.35.1 requests==2.32.3 requests-oauthlib==2.0.0 requestsexceptions==1.4.0 rfc3986==2.0.0 rpds-py==0.20.0 rsa==4.9 ruamel.yaml==0.18.6 ruamel.yaml.clib==0.2.8 s3transfer==0.10.2 simplejson==3.19.3 six==1.16.0 smmap==5.0.1 soupsieve==2.6 stevedore==5.3.0 tabulate==0.9.0 toml==0.10.2 tomlkit==0.13.2 tqdm==4.66.5 typing_extensions==4.12.2 tzdata==2024.1 urllib3==1.26.19 virtualenv==20.26.3 wcwidth==0.2.13 websocket-client==1.8.0 wrapt==1.16.0 xdg==6.0.0 xmltodict==0.13.0 yq==3.4.3 provisioning config files... copy managed file [global-settings] to file:/w/workspace/ric-plt-ric-dep-chart-shell-verify-master@tmp/config10369965655209735380tmp copy managed file [ric-plt-ric-dep-settings] to file:/w/workspace/ric-plt-ric-dep-chart-shell-verify-master@tmp/config4063945249735096091tmp [EnvInject] - Injecting environment variables from a build step. [EnvInject] - Injecting as environment variables the properties content SERVER_ID=site [EnvInject] - Variables injected successfully. [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins7521128820820162527.sh ---> create-netrc.sh [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/sh -xe /tmp/jenkins10047585883656300845.sh + cd bin + bash verify-ric-charts --> verify-ric-charts verify-ric-charts: line 40: helm: command not found Download and install Helm 2024-08-29 06:25:49 URL:https://get.helm.sh/helm-v2.17.0-linux-amd64.tar.gz [25097357/25097357] -> "helm-v2.17.0-linux-amd64.tar.gz" [1] linux-amd64/ linux-amd64/README.md linux-amd64/LICENSE linux-amd64/helm linux-amd64/tiller Creating /home/jenkins/.helm Creating /home/jenkins/.helm/repository Creating /home/jenkins/.helm/repository/cache Creating /home/jenkins/.helm/repository/local Creating /home/jenkins/.helm/plugins Creating /home/jenkins/.helm/starters Creating /home/jenkins/.helm/cache/archive Creating /home/jenkins/.helm/repository/repositories.yaml Adding stable repo with URL: https://charts.helm.sh/stable Adding local repo with URL: http://127.0.0.1:8879/charts $HELM_HOME has been configured at /home/jenkins/.helm. Not installing Tiller due to 'client-only' flag having been set Cloning into './dep'... Starting local Helm server Successfully packaged chart and saved it to: charts/ric-common-3.3.2.tgz Successfully packaged chart and saved it to: charts/aux-common-3.0.0.tgz "local" has been removed from your repositories "stable" has been removed from your repositories "local" has been added to your repositories Finding all Helm charts *************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/3rdparty/influxdb Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/3rdparty/influxdb [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: influxdb/templates/secret.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ apiVersion: v1 kind: Secret metadata: name: ricplt-influxdb-auth labels: helm.sh/chart: influxdb-4.9.14 app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name app.kubernetes.io/version: "1.8.4" app.kubernetes.io/managed-by: Tiller data: influxdb-password: "am9TWTl0WnJIUw==" influxdb-user: "YWRtaW4=" --- # Source: influxdb/templates/configmap.yaml apiVersion: v1 kind: ConfigMap metadata: name: ricplt-influxdb labels: helm.sh/chart: influxdb-4.9.14 app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name app.kubernetes.io/version: "1.8.4" app.kubernetes.io/managed-by: Tiller data: influxdb.conf: |+ reporting-disabled = false bind-address = ":8088" [meta] dir = "/var/lib/influxdb/meta" [data] dir = "/var/lib/influxdb/data" wal-dir = "/var/lib/influxdb/wal" [coordinator] [retention] [shard-precreation] [monitor] [subscriber] [http] auth-enabled = true # TODO: allow multiple graphite listeners [[graphite]] # TODO: allow multiple collectd listeners with templates [[collectd]] # TODO: allow multiple opentsdb listeners with templates [[opentsdb]] # TODO: allow multiple udp listeners with templates [[udp]] [continuous_queries] [logging] level = "debug" --- # Source: influxdb/templates/serviceaccount.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ ---apiVersion: v1 kind: ServiceAccount metadata: name: service-ricplt-influxdb-http labels: helm.sh/chart: influxdb-4.9.14 app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name app.kubernetes.io/version: "1.8.4" app.kubernetes.io/managed-by: Tiller --- # Source: influxdb/templates/service.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: ricplt-influxdb labels: helm.sh/chart: influxdb-4.9.14 app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name app.kubernetes.io/version: "1.8.4" app.kubernetes.io/managed-by: Tiller spec: type: ClusterIP ports: - name: api port: 8086 targetPort: api - name: rpc port: 8088 targetPort: rpc selector: app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name --- # Source: influxdb/templates/statefulset.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ apiVersion: apps/v1 kind: StatefulSet metadata: name: ricplt-influxdb-meta labels: helm.sh/chart: influxdb-4.9.14 app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name app.kubernetes.io/version: "1.8.4" app.kubernetes.io/managed-by: Tiller spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name serviceName: ricplt-influxdb-meta template: metadata: labels: app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name spec: serviceAccountName: service-ricplt-influxdb-http containers: - name: ricplt-influxdb image: "influxdb:1.8.0-alpine" imagePullPolicy: "IfNotPresent" resources: {} ports: - name: api containerPort: 8086 - name: rpc containerPort: 8088 livenessProbe: httpGet: path: /ping port: api scheme: HTTP initialDelaySeconds: 30 timeoutSeconds: 5 readinessProbe: httpGet: path: /ping port: api scheme: HTTP initialDelaySeconds: 5 timeoutSeconds: 1 volumeMounts: - name: ricplt-influxdb-data mountPath: /var/lib/influxdb - name: config mountPath: /etc/influxdb volumes: - name: config configMap: name: ricplt-influxdb # Cannot use existing claim in enterprise mode # Must use volume claim template in enterprise mode volumeClaimTemplates: - metadata: name: ricplt-influxdb-data annotations: spec: accessModes: - "ReadWriteOnce" resources: requests: storage: "8Gi" --- # Source: influxdb/templates/post-install-set-auth.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ apiVersion: batch/v1 kind: Job metadata: name: ricplt-influxdb-set-auth labels: helm.sh/chart: influxdb-4.9.14 app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name app.kubernetes.io/version: "1.8.4" app.kubernetes.io/managed-by: Tiller annotations: "helm.sh/hook": post-install "helm.sh/hook-delete-policy": hook-succeeded spec: activeDeadlineSeconds: backoffLimit: 6 template: metadata: labels: app.kubernetes.io/name: influxdb app.kubernetes.io/instance: release-name spec: containers: - name: ricplt-influxdb-set-auth image: "appropriate/curl:latest" env: - name: INFLUXDB_USER valueFrom: secretKeyRef: name: ricplt-influxdb-auth key: influxdb-user - name: INFLUXDB_PASSWORD valueFrom: secretKeyRef: name: ricplt-influxdb-auth key: influxdb-password args: - "/bin/sh" - "-c" - | curl -X POST http://ricplt-influxdb:8086/query \ --data-urlencode \ "q=CREATE USER \"${INFLUXDB_USER}\" WITH PASSWORD '${INFLUXDB_PASSWORD}' WITH ALL PRIVILEGES" restartPolicy: OnFailure --- # Source: influxdb/templates/backup-cronjob.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/backup-pvc.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/backup-retention-configmap.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/backup-retention-cronjob.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/ingress.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/init-config.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/meta-configmap.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/meta-service.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ --- # Source: influxdb/templates/meta-statefulset.yaml ################################################################################ # Copyright (c) 2021 HCL Technolgies Limited. # # # # 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. # ################################################################################ *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/submgr Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/submgr [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: submgr/templates/configmap.yaml #================================================================================== # Copyright (c) 2019 AT&T Intellectual Property. # # 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. #================================================================================== apiVersion: v1 kind: ConfigMap metadata: name: submgrcfg namespace: ricplt data: # FQDN and port info of rtmgr submgrcfg: | "local": "host": ":8080" "logger": "level": 3 "rmr": "protPort" : "tcp:4560" "maxSize": 8192 "numWorkers": 1 "rtmgr": "hostAddr": "service-ricplt-rtmgr-http" "port" : 3800 "baseUrl" : "/ric/v1" "db": "sessionNamespace": "XMSession" "host": ":6379" "prot": "tcp" "maxIdle": 80 "maxActive": 12000 "controls": "e2tSubReqTimeout_ms": 2000 "e2tSubDelReqTime_ms": 2000 "e2tRecvMsgTimeout_ms": 2000 "e2tMaxSubReqTryCount": 2 "e2tMaxSubDelReqTryCount": 2 "checkE2State": "true" "readSubsFromDb": "true" "dbTryCount": 200 "dbRetryForever": "true" "waitRouteCleanup_ms": 5000 "checkE2IEOrder": 1 submgrutartg: | newrt|start newrt|end --- # Source: submgr/templates/env.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-submgr-env data: RMR_RTG_SVC: "4561" RMR_SRC_ID: service-ricplt-submgr-rmr.ricplt CFG_FILE: "/cfg/submgr-config.yaml" RMR_SEED_RT: "/cfg/submgr-uta-rtg.rt" SUBMGR_SEED_SN: "1" --- # Source: submgr/templates/service-http.yaml # #================================================================================== # Copyright (c) 2019 AT&T Intellectual Property. # Copyright (c) 2019 Nokia # # 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. #================================================================================== # # # Abstract: Subscription Manager service manifest # Date: 28 May 2019 # kind: Service apiVersion: v1 metadata: name: service-ricplt-submgr-http namespace: ricplt labels: app: ricplt-submgr chart: submgr-3.0.0 release: release-name heritage: Tiller spec: selector: app: ricplt-submgr release: release-name clusterIP: None ports: - name: http port: 3800 protocol: TCP targetPort: http --- # Source: submgr/templates/service-rmr.yaml # #================================================================================== # Copyright (c) 2019 AT&T Intellectual Property. # Copyright (c) 2019 Nokia # # 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. #================================================================================== # # # Abstract: Subscription Manager service manifest # Date: 28 May 2019 # kind: Service apiVersion: v1 metadata: name: service-ricplt-submgr-rmr namespace: ricplt labels: app: ricplt-submgr chart: submgr-3.0.0 release: release-name heritage: Tiller spec: selector: app: ricplt-submgr release: release-name clusterIP: None ports: - name: rmrdata port: 4560 protocol: TCP targetPort: rmrdata - name: rmrroute port: 4561 protocol: TCP targetPort: rmrroute --- # Source: submgr/templates/deployment.yaml #================================================================================== # Copyright (c) 2019 AT&T Intellectual Property. # Copyright (c) 2019 Nokia # # 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. #================================================================================== apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-submgr namespace: ricplt labels: app: ricplt-submgr chart: submgr-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-submgr release: release-name template: metadata: labels: app: ricplt-submgr release: release-name spec: hostname: submgr imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc containers: - name: container-ricplt-submgr image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-submgr:0.10.7 imagePullPolicy: IfNotPresent command: ["/submgr"] args: ["-f", "/cfg/submgr-config.yaml"] envFrom: - configMapRef: name: configmap-ricplt-submgr-env - configMapRef: name: configmap-ricplt-dbaas-appconfig ports: - name: http containerPort: 3800 protocol: TCP - name: rmrroute containerPort: 4561 protocol: TCP - name: rmrdata containerPort: 4560 protocol: TCP volumeMounts: - name: config-volume mountPath: /cfg livenessProbe: httpGet: path: ric/v1/health/alive port: 8080 initialDelaySeconds: 5 periodSeconds: 15 readinessProbe: httpGet: path: ric/v1/health/ready port: 8080 initialDelaySeconds: 5 periodSeconds: 15 volumes: - name: config-volume configMap: name: submgrcfg items: - key: submgrcfg path: submgr-config.yaml mode: 0644 - key: submgrutartg path: submgr-uta-rtg.rt mode: 0644 *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/redis-cluster Update chart dependency No requirements found in /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/helm/redis-cluster/charts. Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/redis-cluster [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: redis-cluster/templates/configMap.yaml ################################################################################### # ============LICENSE_START======================================================= # # ================================================================================ # Copyright (C) 2020 Hcl Technologies Limited. # ================================================================================ # 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 kind: ConfigMap metadata: name: redis-cluster-cm data: update-node.sh: | #!/bin/sh REDIS_NODES="/data/nodes.conf" sed -i -e "/myself/ s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/${POD_IP}/" ${REDIS_NODES} exec "$@" redis.conf: |+ cluster-enabled yes cluster-require-full-coverage no cluster-node-timeout 15000 cluster-config-file /data/nodes.conf cluster-migration-barrier 1 appendonly yes protected-mode no --- apiVersion: v1 kind: ConfigMap metadata: name: assigner-cm data: placenode.pl: | #!/usr/bin/env perl =head ============LICENSE_START======================================================= ================================================================================ Copyright (C) 2020 Hcl Technologies Limited. ================================================================================ 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========================================================= About: This script has been developed as part of https://jira.o-ran-sc.org/browse/RIC-360 This script identifies the missing anti-affinity(as per above ticket) of redis instances required in a redis-cluster. If there is an undesired anti-affinity this script can be executed to communicate to redis nodes to switch roles (e.g. master/slave) such that the end-state meets the desired anti-affinity. Pre-requisites: 1) A redis cluster with 3 masters (2 replicas each) deployed on kubernetes 1.18 (or later) 2) Three available worker nodes for serving redis workloads 3) kubectl (with access to the k8 cluster) =cut my $podRow = { "podIP" => "", "podName" => "", "k8Node" => "", "rdNodeRole" => "", "rdNodeID" => "", "rdMasterNodeID" => "", "slaveIPs" => [] }; # Pod label for redis nodes my $podLabel = $ENV{'POD_LABEL'}; my $podTable = []; my $k8NodeInfo = []; setk8NodesInfo(); validate(); # Master spreadMastersIfRequired(); # Slave my $disparity = getSlaveDisparity(); spreadSlavesIfRequired(); sub validate() { my @masters = map { $_->{'rdNodeRole'} eq 'master' ? $_ : () } @{$podTable}; if ( @masters > @{$k8NodeInfo->{allk8Nodes}} ) { print "Info: Skipping any action as num of master > number of k8 nodes..\n"; exit; } } sub spreadSlavesIfRequired() { # Get node with maximum disparity first my @disparityMatrix = reverse sort { @{$a} <=> @{$b} } @${disparity}; #@disparityMatrix = grep defined, @disparityMatrix; #@disparityMatrix = map { defined $_ ? $_ : () } @disparityMatrix; # Get list of slaves to be swapped roles. my @slaveSwapList = (); my $maxDisparityPerNode = @{$disparityMatrix[0]}; for (my $disparityPass=0; $disparityPass < $maxDisparityPerNode; $disparityPass++) { for (my $k8NodeIndex=0; $k8NodeIndex <= $#{disparityMatrix}; $k8NodeIndex++) { #print "$disparityMatrix[$disparityPass] && $disparityMatrix[$k8NodeIndex][$disparityPass]"; if ( $disparityMatrix[$disparityPass] && $disparityMatrix[$k8NodeIndex][$disparityPass] ) { push(@slaveSwapList,$disparityMatrix[$k8NodeIndex][$disparityPass]); } } } if ( ! @slaveSwapList ) { print "Info: No disparity found with slaves.\n" if ( @slaveSwapList < 2); exit; } elsif ( @slaveSwapList == 1 ) { print "Info: single host scenario (with no swap candidate in other k8 nodes) found.\n"; exit; } else { print "Info: slave disparity found.\n"; } # Swap slaves for (my $swapIndex=0; $swapIndex < @slaveSwapList; $swapIndex++) { $pod1 = $slaveSwapList[$swapIndex]; $pod2 = $slaveSwapList[++$swapIndex]; #print "Info: Swapping Slaves: " . join($pod1->{podName}, $pod2->{podName}) . "\n"; my $cmd1 = qq[kubectl exec -it ]. qq[$pod1->{podName} -- redis-cli -p 6379 cluster replicate $pod2->{rdMasterNodeID} ]; my $cmd2 = qq[kubectl exec -it ]. qq[$pod2->{podName} -- redis-cli -p 6379 cluster replicate $pod1->{rdMasterNodeID} ]; runRediClusterCmd($cmd1); runRediClusterCmd($cmd2); #print "\n$cmd1"; #print "\n$cmd2\n"; } } sub getSlaveDisparity() { # Get Slave Disparity Metrix my $disparity = (); my $nodeIndex = 0; foreach my $k8NodeName ( @{$k8NodeInfo->{allk8Nodes}} ) { my @redisNodesOnk8Node = map { $_->{'k8Node'} eq $k8NodeName ? $_ : () } @{$podTable}; @redisNodesOnk8Node = sort { $a->{"rdNodeRole"} cmp $b->{"rdNodeRole"} } @redisNodesOnk8Node; my $master = shift @redisNodesOnk8Node; for (my $index=0; $index <= $#{redisNodesOnk8Node}; $index++ ) { my $slave = $redisNodesOnk8Node[$index]; #print "chekcing for pod: $slave->{podName}\n"; my $disparityFound = 0; if ( $slave->{rdMasterNodeID} eq $master->{rdNodeID} ) { $disparityFound = 1; } else { #check is other slaves are its sibling for (my $nextIndex=$index + 1; $nextIndex <= $#{redisNodesOnk8Node}; $nextIndex++ ) { if ( $slave->{rdMasterNodeID} eq $redisNodesOnk8Node[$nextIndex]->{rdMasterNodeID} ) { $disparityFound = 1; break; } } } if ($disparityFound) { #$disparity[$nodeIndex][$index] = { 'podName' => $slave->{"podName"}, 'rdMasterNodeID' => $slave->{"rdMasterNodeID"} } ; push(@{$disparity[$nodeIndex]},{ 'podName' => $slave->{"podName"}, 'rdMasterNodeID' => $slave->{"rdMasterNodeID"} } ) ; } } $nodeIndex++; } return \@disparity; } sub spreadMastersIfRequired() { NODE_WITH_NO_MASTER: foreach my $nodeWithoutMaster (@{$k8NodeInfo->{k8NodesWithoutMaster}}) { # For each k8Node without any master # Check for each extra master on its hostNode # Find its slave on the this hostNode (i.e. without any master) # Such slave must be Found for 3x3 set-up: # Then Promote as master # Re-Evaluate # Get All Redis Slaves on This k8 node print "Info: K8 node without any master : $nodeWithoutMaster\n"; my @rdSlaveNodes = map { ($_->{'k8Node'} eq $nodeWithoutMaster ) && ($_->{'rdNodeRole'} eq 'slave') ? $_ : () } @{$podTable}; foreach my $nodeWithExtraMaster (@{$k8NodeInfo->{k8NodesWithExtraMaster}} ) { print "Info: k8 Node with extra master : $nodeWithExtraMaster\n"; #my @rdSlaveNodes = map { ($_->{'k8Node'} eq $nodeWithoutMaster ) && ($_->{'rdNodeRole'} eq 'slave') ? $_ : () } @{$podTable}; my @masterInstances = map { ($_->{'k8Node'} eq $nodeWithExtraMaster ) && ($_->{'rdNodeRole'} eq 'master') ? $_ : () } @{$podTable}; foreach my $master (@masterInstances) { my @slave = map { $_->{"rdMasterNodeID"} eq $master->{rdNodeID} ? $_ : () } @rdSlaveNodes; if ( @slave ) { promoteSlaveAsMaster($slave[0]); my $isPromoted = 0; my $slaveNodeID= $slave[0]->{rdNodeID}; while( ! $isPromoted ) { sleep(8); setk8NodesInfo(); my ($promotedNode) = map { $slaveNodeID eq $_->{rdNodeID} ? $_ : () } @{$podTable}; if ( $promotedNode->{'rdNodeRole'} ne 'master' ) { print ("Info: Waiting for node promotion confirmation..\n"); } else { $isPromoted = 1; print ("Info: Node promotion confirmed.\n"); } } next NODE_WITH_NO_MASTER; } } } } print "Info: All redis masters are on separate k8 Nodes. \n" if ( ! @{$k8NodeInfo->{k8NodesWithoutMaster}}) ; } sub promoteSlaveAsMaster() { my $slavePod = shift; #print "Info: Promoting Slave $slavePod->{'podName'} On $slavePod->{'k8Node'} as master"; my $cmd = qq[kubectl exec -it $slavePod->{'podName'} -- redis-cli -p 6379 cluster failover takeover]; runRediClusterCmd($cmd); } sub runRediClusterCmd() { my $cmd = shift; print "Info: Running Cmd:$cmd \n"; `$cmd;`; sleep(8); } #foreach my $item (@{$podTable}) { #} # find_nodes_without-a-single_master sub setk8NodesInfo() { $podTable = []; $k8NodeInfo = []; getCurrentStatus(); # All k8 nodes my @k8NodeList = uniq(map { $_->{'k8Node'} } @$podTable); # Find Nodes with At least One master my @k8NodesWithMaster; foreach my $nodeName (@k8NodeList) { push(@k8NodesWithMaster, map { ($_->{'k8Node'} eq $nodeName) && ($_->{'rdNodeRole'} eq 'master') ? $nodeName : () } @{$podTable} ); } # Find Nodes without any master = All nodes - Nodes with at least one Master my %k8NodesMap = (); foreach (@k8NodesWithMaster) { if ( exists $k8NodesMap{$_} ) { $k8NodesMap{$_}++; } else { $k8NodesMap{$_} = 1; } } my @k8NodesWithoutMaster = map { exists $k8NodesMap{$_} ? () : $_ } @k8NodeList; my @k8NodesWithExtraMaster = uniq(map { $k8NodesMap{$_} > 1 ? $_ : () } @k8NodesWithMaster); $k8NodeInfo = { 'allk8Nodes' => \@k8NodeList, 'k8NodesWithExtraMaster' => \@k8NodesWithExtraMaster, 'k8NodesWithoutMaster' => \@k8NodesWithoutMaster }; } # Validate if number of masters ,= number of rea # #sub filter =head get podName where k8Node eq "x" get position of k8node eq x where =cut exit; sub uniq { my %seen; grep !$seen{$_}++, @_; } sub getCurrentStatus() { # Run pod list command my @getPods = `kubectl get po --no-headers -o wide -l $podLabel |grep Running`; chomp @getPods; #my @getPods = `kubectl get po --no-headers -o wide -l managed-by=redis-cluster-operator|grep Running`; chomp @getPods; foreach my $podLine (@getPods) { my @podData = split(/\s+/,$podLine); my ($podName,$status,$age,$podIP,$podNode) = ($podData[0], $podData[2], $podData[4], $podData[5],$podData[6]); #print "$podName,$status,$age,$podIP,$podNode" ."\n"; my $podRow = { 'podIP' => $podIP, 'podName' => $podName, 'k8Node' => $podNode, 'podAge' => $age, 'podStatus' => $status }; push (@{$podTable},$podRow) } my $podName = $podTable->[0]{'podName'}; #print "Info:kubectl exec $podName -- cat nodes.conf|sort -k3\n"; my @rdNodeData = `kubectl exec $podName -- cat nodes.conf|sort -k3`; chomp @rdNodeData; foreach my $rdNodeLine (@rdNodeData) { next if ($rdNodeLine !~ /master|slave/); my @rdNodeData = split(/\s+/,$rdNodeLine); my ($rdNodeID,$rdRole,$rdMasterNodeID,$epoch) = ($rdNodeData[0], $rdNodeData[2], $rdNodeData[3],$rdNodeData[5]); my ($podIP) = split(/:/,$rdNodeData[1]); $rdRole =~ s/myself,//; #print "$rdNodeID,$rdRole,$rdMasterNodeID,$podIP" ."\n"; my $rdElem = { 'podIP' => $podIP, 'rdNodeID' => $rdNodeID, 'rdRole' => $rdRole, 'rdMasterNodeID' => $rdMasterNodeID, 'epoch' => $epoch }; for(my $index=0; $index <= $#{$podTable}; $index++) { if ( $podTable->[$index]{'podIP'} eq $podIP ) { #print "Matched\n"; $podTable->[$index]{'rdNodeID'} = $rdNodeID; $podTable->[$index]{'rdNodeRole'} = $rdRole; $podTable->[$index]{'rdMasterNodeID'} = $rdMasterNodeID; $podTable->[$index]{'epoch'} = $epoch; } } #exit; } } relatenode.sh: | #!/bin/sh podLabel=${POD_LABEL} firstPod=$(kubectl get po -o wide -l app.kubernetes.io/name=redis-cluster --no-headers=true|head -1|cut -d" " -f1) kubectl get po -o wide -l $podLabel |tail +2|awk '{printf("%s:%s:%s:%s\n",$6,$1,$7,$10)}'|sort > /tmp/1.txt kubectl exec $firstPod -- cat nodes.conf|sed 's/myself,//'|awk '/master|slave/ {print $2,$1,$3,$4}'|sort > /tmp/2.txt join -t ":" /tmp/1.txt /tmp/2.txt |sort -k3,4 | sed 's/ /:/g'|awk -F":" '{print $2,$7,$3,$1,$4,$6,$8}' > /tmp/3.txt echo "\n POD_NAME ROLE k8NODE POD_IP REDIS_NODE_ID REDIS_MASTER_NODE_ID" grep $(cut -d" " -f4 /tmp/2.txt|sort -u|grep -v "-"|sed -n '1p') /tmp/3.txt echo "" grep $(cut -d" " -f4 /tmp/2.txt|sort -u|grep -v "-"|sed -n '2p') /tmp/3.txt echo "" grep $(cut -d" " -f4 /tmp/2.txt|sort -u|grep -v "-"|sed -n '3p') /tmp/3.txt --- # Source: redis-cluster/templates/serviceaccount.yaml ################################################################################### # ============LICENSE_START======================================================= # # ================================================================================ # Copyright (C) 2020 Hcl Technologies Limited. # ================================================================================ # 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 kind: ServiceAccount metadata: name: assigner-sa --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: assigner-role rules: - apiGroups: [""] resources: - pods verbs: - get - list - apiGroups: [""] resources: ["pods/exec"] verbs: ["create"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: assigner-rb subjects: - kind: ServiceAccount name: assigner-sa roleRef: kind: Role name: assigner-role apiGroup: rbac.authorization.k8s.io --- # Source: redis-cluster/templates/service.yaml ################################################################################### # ============LICENSE_START======================================================= # # ================================================================================ # Copyright (C) 2020 Hcl Technologies Limited. # ================================================================================ # 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 kind: Service metadata: name: redis-cluster-svc spec: type: ClusterIP ports: - port: 6379 targetPort: 6379 name: client - port: 16379 targetPort: 16379 name: gossip selector: app.kubernetes.io/name: redis-cluster app.kubernetes.io/instance: release-name --- # Source: redis-cluster/templates/deployment.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: apps/v1 kind: Deployment metadata: name: assigner-dep namespace: default labels: chart: redis-cluster-0.1.0 release: release-name spec: replicas: 1 selector: matchLabels: app: assigner release: release-name template: metadata: labels: app: assigner release: release-name spec: containers: - name: kubectl hostname: assigner image: "bitnami/kubectl:1.18" command: ["/bin/sh"] args: ["-c", "sleep 3000"] env: - name: "POD_LABEL" value: app.kubernetes.io/instance=release-name volumeMounts: - name: conf mountPath: /conf readOnly: false volumes: - name: conf configMap: name: assigner-cm defaultMode: 0755 serviceAccountName: assigner-sa --- # Source: redis-cluster/templates/statefulset.yaml ################################################################################### # ============LICENSE_START======================================================= # # ================================================================================ # Copyright (C) 2020 Hcl Technologies Limited. # ================================================================================ # 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: StatefulSet metadata: name: redis-cluster spec: serviceName: replicas: 9 selector: matchLabels: app.kubernetes.io/name: redis-cluster app.kubernetes.io/instance: release-name template: metadata: labels: app.kubernetes.io/name: redis-cluster app.kubernetes.io/instance: release-name spec: topologySpreadConstraints: - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule #whenUnsatisfiable: ScheduleAnyway #whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/name: redis-cluster app.kubernetes.io/instance: release-name containers: - name: redis image: "redis:5.0.1-alpine" imagePullPolicy: IfNotPresent ports: - containerPort: 6379 name: client - containerPort: 16379 name: gossip command: ["/conf/update-node.sh", "redis-server", "/conf/redis.conf"] env: - name: POD_IP valueFrom: fieldRef: fieldPath: status.podIP volumeMounts: - name: conf mountPath: /conf readOnly: false - name: data mountPath: /data readOnly: false volumes: - name: conf configMap: name: redis-cluster-cm defaultMode: 0755 volumeClaimTemplates: - metadata: name: data labels: app.kubernetes.io/name: redis-cluster app.kubernetes.io/instance: release-name spec: accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 1Gi *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/e2term Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/e2term [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: e2term/templates/configmap-loglevel.yaml ################################################################################ # Copyright (c) 2023 Alexandre Huff Intellectual Property. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2term-loglevel-configmap namespace: ricplt data: log-level: | log-level: 3 --- # Source: e2term/templates/configmap.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2term-router-configmap namespace: ricplt data: rmr_verbose: | 0 router.txt: | newrt|start rte|1080|service-ricplt-e2mgr-rmr.ricplt:3801 rte|1090|service-ricplt-e2term-rmr-alpha.ricplt:38000 rte|1100|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10020|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10060|service-ricplt-e2term-rmr-alpha.ricplt:38000 rte|10061|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10062|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10030|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10070|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10071|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10080|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10091|service-ricplt-rsm-rmr.ricplt:4801 rte|10092|service-ricplt-rsm-rmr.ricplt:4801 rte|10360|service-ricplt-e2term-rmr-alpha.ricplt:38000 rte|10361|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10362|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10370|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10371|service-ricplt-e2term-rmr-alpha.ricplt:38000 rte|12010|service-ricplt-e2term-rmr-alpha.ricplt:38000 rte|12020|service-ricplt-e2term-rmr-alpha.ricplt:38000 rte|20001|service-ricplt-a1mediator-rmr.ricplt:4562 rte|12011|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12050|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12012|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12021|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12022|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12041|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12042|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|12050|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 rte|20000|service-ricxapp-ueec-rmr.ricxapp:4560;service-admission-ctrl-xapp-rmr.ricxapp:4560 newrt|end --- # Source: e2term/templates/env.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2term-env-alpha data: RMR_SRC_ID: service-ricplt-e2term-rmr-alpha.ricplt RMR_RTG_SVC: "4561" RMR_SEED_RT: "router.txt" RMR_VCTL_FILE: "/tmp/rmr_verbose" sctp: "36422" nano: "38000" print: "1" volume: "/data/outgoing/" --- # Source: e2term/templates/pv.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################1 --- apiVersion: v1 kind: PersistentVolume metadata: name: pv-ricplt-e2term-alpha labels: type: local spec: storageClassName: local-storage capacity: storage: 100Mi accessModes: - ReadWriteOnce hostPath: path: /mnt/pv-ricplt-e2term-alpha --- # Source: e2term/templates/pvc.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################ --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc-ricplt-e2term-alpha spec: accessModes: - ReadWriteOnce resources: requests: storage: 100Mi storageClassName: local-storage #volumeName: pv-ricplt-e2term --- # Source: e2term/templates/service-prometheus.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: Service metadata: name: service-ricplt-e2term-prometheus-alpha namespace: ricplt labels: app: ricplt-e2term-alpha chart: e2term-3.0.0 release: release-name heritage: Tiller annotations: prometheus.io/scrape: "true" prometheus.io/path: "/metrics" prometheus.io/port: "8088" spec: type: ClusterIP ports: - port: 8088 protocol: "TCP" targetPort: "prmts-alpha" name: "prmts-alpha" selector: app: ricplt-e2term-alpha release: release-name --- # Source: e2term/templates/service-rmr.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: Service metadata: name: service-ricplt-e2term-rmr-alpha namespace: ricplt labels: app: ricplt-e2term-alpha chart: e2term-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 4561 protocol: "TCP" targetPort: "rmrroute-alpha" name: "rmrroute-alpha" - port: 38000 protocol: "TCP" targetPort: "rmrdata-alpha" name: "rmrdata-alpha" selector: app: ricplt-e2term-alpha release: release-name --- # Source: e2term/templates/service-sctp.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: Service metadata: name: service-ricplt-e2term-sctp-alpha namespace: ricplt labels: app: ricplt-e2term-alpha chart: e2term-3.0.0 release: release-name heritage: Tiller spec: type: NodePort ports: - port: 36422 nodePort: 32222 protocol: "SCTP" targetPort: 36422 name: "sctp-alpha" selector: app: ricplt-e2term-alpha release: release-name --- # Source: e2term/templates/deployment.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-e2term-alpha namespace: ricplt labels: app: ricplt-e2term-alpha chart: e2term-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-e2term-alpha release: release-name template: metadata: labels: app: ricplt-e2term-alpha release: release-name spec: hostname: e2term-alpha hostNetwork: false dnsPolicy: ClusterFirstWithHostNet imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc containers: - name: container-ricplt-e2term image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-e2:3.0.1 imagePullPolicy: IfNotPresent volumeMounts: - mountPath: /opt/e2/router.txt name: local-router-file subPath: router.txt - mountPath: /tmp/rmr_verbose name: local-router-file subPath: rmr_verbose - mountPath: /etc/config name: local-loglevel-file - mountPath: "/data/outgoing/" name: vol-shared readOnly: false envFrom: - configMapRef: name: configmap-ricplt-e2term-env-alpha env: - name: SYSTEM_NAME value: "SEP" - name: CONFIG_MAP_NAME value: "/etc/config/log-level" - name: HOST_NAME valueFrom: fieldRef: fieldPath: spec.nodeName - name: SERVICE_NAME value: "RIC_E2_TERM" - name: CONTAINER_NAME value: "container-ricplt-e2term" - name: POD_NAME valueFrom: fieldRef: fieldPath: metadata.name ports: - name: "rmrroute-alpha" containerPort: 4561 - name: "rmrdata-alpha" containerPort: 38000 - name: "sctp-alpha" containerPort: 36422 protocol: SCTP - name: "prmts-alpha" containerPort: 8088 stdin: true tty: true securityContext: privileged: false readinessProbe: exec: command: [ "/bin/sh", "-c", "ip=`hostname -i`;export RMR_SRC_ID=$ip;/opt/e2/rmr_probe -h $ip:38000" ] initialDelaySeconds: 120 periodSeconds: 60 livenessProbe: exec: command: [ "/bin/sh", "-c", "ip=`hostname -i`;export RMR_SRC_ID=$ip;/opt/e2/rmr_probe -h $ip:38000" ] initialDelaySeconds: 10 periodSeconds: 10 volumes: - name: local-router-file configMap: name: configmap-ricplt-e2term-router-configmap - name: local-loglevel-file configMap: name: configmap-ricplt-e2term-loglevel-configmap - name: vol-shared persistentVolumeClaim: claimName: pvc-ricplt-e2term-alpha --- # Source: e2term/templates/configmap-pizpub.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################ *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/jaegeradapter Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/jaegeradapter [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: jaegeradapter/templates/env.yaml apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-jaegeradapter namespace: ricplt data: TRACING_ENABLED: "0" TRACING_JAEGER_SAMPLER_TYPE: "const" TRACING_JAEGER_SAMPLER_PARAM: "1" TRACING_JAEGER_AGENT_ADDR: service-ricplt-jaegeradapter-agent.ricplt TRACING_JAEGER_LOG_LEVEL: "error" --- # Source: jaegeradapter/templates/agent-service.yaml # Copyright (c) 2019 AT&T Intellectual Property. # # 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. apiVersion: v1 kind: Service metadata: name: service-ricplt-jaegeradapter-agent namespace: ricplt labels: app: ricplt-jaegeradapter chart: jaegeradapter-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - name: "zipkincompact" port: 5775 protocol: UDP targetPort: 5775 - name: "jaegercompact" port: 6831 protocol: UDP targetPort: 6831 - name: "jaegerbinary" port: 6832 protocol: UDP targetPort: 6832 selector: app: ricplt-jaegeradapter release: release-name --- # Source: jaegeradapter/templates/collector-service.yaml # Copyright (c) 2019 AT&T Intellectual Property. # # 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. apiVersion: v1 kind: Service metadata: name: service-ricplt-jaegeradapter-collector namespace: ricplt labels: app: ricplt-jaegeradapter chart: jaegeradapter-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - name: "jaegerhttpt" port: 14267 protocol: TCP targetPort: 14267 - name: "jaegerhttp" port: 14268 protocol: TCP targetPort: 14268 - name: "zipkinhttp" port: 9411 protocol: TCP targetPort: 9411 selector: app: ricplt-jaegeradapter release: release-name --- # Source: jaegeradapter/templates/query-service.yaml # Copyright (c) 2019 AT&T Intellectual Property. # # 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. apiVersion: v1 kind: Service metadata: name: service-ricplt-jaegeradapter-query namespace: ricplt labels: app: ricplt-jaegeradapter chart: jaegeradapter-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - name: "httpquery" port: 16686 protocol: TCP targetPort: 16686 selector: app: ricplt-jaegeradapter release: release-name --- # Source: jaegeradapter/templates/deployment.yaml # Copyright (c) 2019 AT&T Intellectual Property. # # 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. apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-jaegeradapter namespace: ricplt labels: app: ricplt-jaegeradapter chart: jaegeradapter-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-jaegeradapter release: release-name template: metadata: labels: app: ricplt-jaegeradapter release: release-name spec: hostname: jaegeradapter imagePullSecrets: - name: secret-docker-io containers: - name: container-ricplt-jaegeradapter image: docker.io/jaegertracing/all-in-one:1.12 imagePullPolicy: IfNotPresent envFrom: - configMapRef: name: configmap-ricplt-jaegeradapter ports: - name: "zipkincompact" containerPort: 5775 protocol: UDP - name: "jaegercompact" containerPort: 6831 protocol: UDP - name: "jaegerbinary" containerPort: 6832 protocol: UDP - name: "httpquery" containerPort: 16686 protocol: TCP - name: "httpconfig" containerPort: 5778 protocol: TCP - name: "zipkinhttp" containerPort: 9411 protocol: TCP - name: "jaegerhttp" containerPort: 14268 protocol: TCP - name: "jaegerhttpt" containerPort: 14267 protocol: TCP livenessProbe: httpGet: path: / port: 16686 readinessProbe: httpGet: path: / port: 16686 initialDelaySeconds: 5 *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/vespamgr Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/vespamgr [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: vespamgr/templates/secret.yaml apiVersion: v1 kind: Secret metadata: name: vespa-secrets type: Opaque data: VESMGR_PRICOLLECTOR_USER: "c2FtcGxlMQo=" VESMGR_PRICOLLECTOR_PASSWORD: "JDJhJDEwJDBidWguMldlWXdOODY4WU13bk5ORXVORUFNTllWVTkuRlNNSkd5SUtWM2RHRVQvN29HT2k2Cg==" --- # Source: vespamgr/templates/vespa-config.yaml apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-vespamgr namespace: ricplt data: VESMGR_HB_INTERVAL: "60s" VESMGR_MEAS_INTERVAL: "30s" VESMGR_PRICOLLECTOR_ADDR: "aux-entry" VESMGR_PRICOLLECTOR_SERVERROOT: "/vescollector" VESMGR_PRICOLLECTOR_PORT: "8443" VESMGR_PRICOLLECTOR_SECURE: "false" VESMGR_PROMETHEUS_ADDR: http://r4-infrastructure-prometheus-server.ricplt VESMGR_PRICOLLECTOR_USER: "sample1" VESMGR_PRICOLLECTOR_PASSWORD: "sample1" VESMGR_ALERTMANAGER_BIND_ADDR: ":9095" --- # Source: vespamgr/templates/service.yaml # Copyright (c) 2019 AT&T Intellectual Property. # Copyright (c) 2019 Nokia. # # 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. apiVersion: v1 kind: Service metadata: name: service-ricplt-vespamgr-http namespace: ricplt labels: app: ricplt-vespamgr chart: vespamgr-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 8080 protocol: "TCP" name: "http" targetPort: "http" - port: 9095 protocol: "TCP" name: "alert" targetPort: "alert" selector: app: ricplt-vespamgr release: release-name --- # Source: vespamgr/templates/deployment.yaml # Copyright (c) 2019 AT&T Intellectual Property. # Copyright (c) 2019 Nokia. # # 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. apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-vespamgr namespace: ricplt labels: app: ricplt-vespamgr chart: vespamgr-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-vespamgr release: release-name template: metadata: labels: app: ricplt-vespamgr release: release-name spec: hostname: vespamgr imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc containers: - name: container-ricplt-vespamgr image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-vespamgr:0.4.0 imagePullPolicy: IfNotPresent ports: - name: http containerPort: 8080 protocol: TCP - name: alert containerPort: 9095 protocol: TCP envFrom: - configMapRef: name: configmap-ricplt-vespamgr - secretRef: name: vespa-secrets env: - name: VESMGR_APPMGRDOMAN value: service-ricplt-appmgr-http livenessProbe: httpGet: path: /supervision port: 8080 initialDelaySeconds: 30 periodSeconds: 60 timeoutSeconds: 20 *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/o1mediator Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/o1mediator [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: o1mediator/templates/appconfig.yaml ################################################################################ # Copyright (c) 2020 AT&T Intellectual Property. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-o1mediator-appconfig-configmap namespace: ricplt data: config-file.json: |+ { "local": { "host": ":8080" }, "logger": { "level": 4 }, "db": { "namespaces": ["sdl", "rnib"] }, "rmr": { "protPort": "tcp:4560", "maxSize": 65536, "numWorkers": 1 }, "sbi": { "appmgrAddr": "service-ricplt-appmgr-http:8080", "alertmgrAddr": "r4-infrastructure-prometheus-alertmanager:80", "timeout": 30 }, "nbi": { "schemas": ["o-ran-sc-ric-xapp-desc-v1", "o-ran-sc-ric-ueec-config-v1"] }, "controls": { "active": true } } uta_rtg.rt: | newrt|start rte|13111|127.0.0.1:4588 rte|13111|127.0.0.1:4560 newrt|end --- # Source: o1mediator/templates/env.yaml # Copyright (c) 2020 AT&T Intellectual Property. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-o1mediator-env data: RMR_SEED_RT: "/etc/o1agent/uta_rtg.rt" --- # Source: o1mediator/templates/serviceaccount.yaml ################################################################################ # Copyright (c) 2019-2020 AT&T Intellectual Property. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ServiceAccount metadata: name: svcacct-ricplt-o1mediator namespace: ricplt --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: svcacct-ricplt-o1mediator-ricxapp-podreader namespace: ricxapp rules: - apiGroups: [""] resources: ["pods"] verbs: ["get", "list", "watch"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: svcacct-ricplt-o1mediator-ricxapp-podreader namespace: ricxapp roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: svcacct-ricplt-o1mediator-ricxapp-podreader subjects: - kind: ServiceAccount name: svcacct-ricplt-o1mediator namespace: ricplt --- # Source: o1mediator/templates/service-http.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-o1mediator-http namespace: ricplt labels: app: ricplt-o1mediator chart: o1mediator-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 9001 protocol: "TCP" name: "http-supervise" targetPort: 9001 - port: 8080 protocol: "TCP" name: "http-mediation" targetPort: 8080 - port: 3000 protocol: "TCP" name: "http-event" targetPort: 3000 selector: app: ricplt-o1mediator release: release-name --- # Source: o1mediator/templates/service-tcp.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-o1mediator-tcp-netconf namespace: ricplt labels: app: ricplt-o1mediator chart: o1mediator-3.0.0 release: release-name heritage: Tiller spec: type: NodePort ports: - port: 830 nodePort: 30830 protocol: "TCP" name: "tcp-netconf" selector: app: ricplt-o1mediator release: release-name --- # Source: o1mediator/templates/deployment.yaml ################################################################################ # Copyright (c) 2019,2020 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-o1mediator namespace: ricplt labels: app: ricplt-o1mediator chart: o1mediator-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-o1mediator release: release-name template: metadata: labels: app: ricplt-o1mediator release: release-name spec: hostname: o1mediator imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc serviceAccountName: svcacct-ricplt-o1mediator containers: - name: container-ricplt-o1mediator image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-o1:0.3.1 imagePullPolicy: IfNotPresent envFrom: - configMapRef: name: configmap-ricplt-dbaas-appconfig - configMapRef: name: configmap-ricplt-o1mediator-env volumeMounts: - mountPath: /etc/o1agent name: appconfig-file ports: - name: http-supervise containerPort: 9001 protocol: TCP - name: http-mediation containerPort: 8080 protocol: TCP - name: http-event containerPort: 3000 protocol: TCP volumes: - name: appconfig-file configMap: name: configmap-ricplt-o1mediator-appconfig-configmap *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/dbaas Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/dbaas [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: dbaas/templates/appconfig.yaml ################################################################################ # Copyright (c) 2020 AT&T Intellectual Property. # # Copyright (c) 2020 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-dbaas-appconfig namespace: ricplt data: DBAAS_NODE_COUNT: "1" DBAAS_SERVICE_HOST: service-ricplt-dbaas-tcp.ricplt DBAAS_SERVICE_PORT: "6379" --- apiVersion: v1 kind: ConfigMap metadata: name: dbaas-appconfig namespace: ricxapp data: DBAAS_NODE_COUNT: "1" DBAAS_SERVICE_HOST: service-ricplt-dbaas-tcp.ricplt DBAAS_SERVICE_PORT: "6379" --- # Source: dbaas/templates/configmap.yaml ################################################################################ # Copyright (c) 2020 AT&T Intellectual Property. # # Copyright (c) 2020 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-dbaas-config namespace: ricplt labels: heritage: Tiller release: release-name chart: dbaas-2.0.0 app: ricplt-dbaas data: redis.conf: | dir "/data" appendonly no bind 0.0.0.0 loadmodule /usr/local/libexec/redismodule/libredismodule.so protected-mode no save --- # Source: dbaas/templates/service.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: Service metadata: name: service-ricplt-dbaas-tcp labels: app: ricplt-dbaas chart: dbaas-2.0.0 release: release-name heritage: Tiller spec: type: ClusterIP clusterIP: None ports: - name: server port: 6379 protocol: TCP targetPort: redis selector: release: release-name app: ricplt-dbaas --- # Source: dbaas/templates/statefulset.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: apps/v1 kind: StatefulSet metadata: name: statefulset-ricplt-dbaas-server namespace: ricplt labels: app: ricplt-dbaas chart: dbaas-2.0.0 release: release-name heritage: Tiller spec: selector: matchLabels: app: ricplt-dbaas release: release-name serviceName: service-ricplt-dbaas-tcp replicas: 1 podManagementPolicy: OrderedReady updateStrategy: type: RollingUpdate template: metadata: labels: app: ricplt-dbaas release: release-name spec: imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc terminationGracePeriodSeconds: 5 shareProcessNamespace: true containers: - name: container-ricplt-dbaas-redis image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-dbaas:0.6.1 imagePullPolicy: command: - redis-server args: - /data/redis.conf livenessProbe: exec: command: - /bin/sh - -c - timeout 10 redis-cli -p 6379 ping initialDelaySeconds: 15 periodSeconds: 5 readinessProbe: exec: command: - /bin/sh - -c - timeout 10 redis-cli -p 6379 ping initialDelaySeconds: 15 periodSeconds: 5 ports: - name: redis containerPort: 6379 envFrom: - configMapRef: name: configmap-ricplt-dbaas-appconfig volumeMounts: - mountPath: /data name: config volumes: - name: config configMap: name: configmap-ricplt-dbaas-config *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/e2mgr Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/e2mgr [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: e2mgr/templates/configmap.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2mgr-router-configmap namespace: ricplt data: rmr_verbose: | 0 router.txt: | newrt|start rte|1080|service-ricplt-e2mgr-rmr.ricplt:3801 rte|1090|service-ricplt-e2term-rmr.ricplt:38000 rte|1100|service-ricplt-e2term-rmr.ricplt:38000 rte|1101|service-ricplt-e2term-rmr.ricplt:38000 rte|1200|service-ricplt-rsm-rmr.ricplt:4801 rte|1210|service-ricplt-rsm-rmr.ricplt:4801 rte|1220|service-ricplt-rsm-rmr.ricplt:4801 rte|10020|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10060|service-ricplt-e2term-rmr.ricplt:38000 rte|10061|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10062|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10070|service-ricplt-e2term-rmr.ricplt:38000 rte|10071|service-ricplt-e2term-rmr.ricplt:38000 rte|10080|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10360|service-ricplt-e2term-rmr.ricplt:38000 rte|10361|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10362|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10370|service-ricplt-e2mgr-rmr.ricplt:3801 rte|10371|service-ricplt-e2term-rmr.ricplt:38000 rte|12010|service-ricplt-e2term-rmr.ricplt:38000 rte|12020|service-ricplt-e2term-rmr.ricplt:38000 rte|20001|service-ricplt-a1mediator-rmr.ricplt:4562 newrt|end --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2mgr-configuration-configmap namespace: ricplt data: configuration.yaml: | logging: logLevel: "info" http: port: 3800 rmr: port: 3801 maxMsgSize: 65536 routingManager: baseUrl: "http://service-ricplt-rtmgr-http:3800/ric/v1/handles/" notificationResponseBuffer: 100 bigRedButtonTimeoutSec: 5 maxConnectionAttempts: 3 maxRnibConnectionAttempts: 3 rnibRetryIntervalMs: 10 keepAliveResponseTimeoutMs: 360000 keepAliveDelayMs: 120000 globalRicId: ricId: "AACCE" mcc: "310" mnc: "411" rnibWriter: stateChangeMessageChannel: "RAN_CONNECTION_STATUS_CHANGE" ranManipulationMessageChannel: "RAN_MANIPULATION" --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2mgr-loglevel-configmap namespace: ricplt data: logcfg: "loglevel: 3" --- --- # Source: e2mgr/templates/env.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-e2mgr-env data: RMR_RTG_SVC: "4561" RMR_SRC_ID: service-ricplt-e2mgr-rmr.ricplt #nano: "3801" --- # Source: e2mgr/templates/service-http.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-e2mgr-http namespace: ricplt labels: app: ricplt-e2mgr chart: e2mgr-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 3800 protocol: "TCP" name: "http" targetPort: "http" selector: app: ricplt-e2mgr release: release-name --- # Source: e2mgr/templates/service-rmr.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-e2mgr-rmr namespace: ricplt labels: app: ricplt-e2mgr chart: e2mgr-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 4561 protocol: "TCP" name: "rmrroute" targetPort: "rmrroute" - port: 3801 protocol: "TCP" name: "rmrdata" targetPort: "rmrdata" selector: app: ricplt-e2mgr release: release-name --- # Source: e2mgr/templates/deployment.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-e2mgr namespace: ricplt labels: app: ricplt-e2mgr chart: e2mgr-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-e2mgr release: release-name template: metadata: labels: app: ricplt-e2mgr release: release-name spec: hostname: e2mgr imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc containers: - name: container-ricplt-e2mgr image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-e2mgr:3.0.1 imagePullPolicy: IfNotPresent volumeMounts: - mountPath: /opt/E2Manager/router.txt name: local-router-file subPath: router.txt - mountPath: /etc/config name: e2mgr-loglevel-volume - mountPath: /opt/E2Manager/resources/configuration.yaml name: local-configuration-file subPath: configuration.yaml envFrom: - configMapRef: name: configmap-ricplt-e2mgr-env - configMapRef: name: configmap-ricplt-dbaas-appconfig ports: - name: "http" containerPort: 3800 - name: "rmrroute" containerPort: 4561 - name: "rmrdata" containerPort: 3801 stdin: true tty: true securityContext: privileged: false livenessProbe: httpGet: path: v1/health port: 3800 initialDelaySeconds: 3 periodSeconds: 10 readinessProbe: httpGet: path: v1/health port: 3800 initialDelaySeconds: 3 periodSeconds: 10 volumes: - name: local-router-file configMap: name: configmap-ricplt-e2mgr-router-configmap - name: local-configuration-file configMap: name: configmap-ricplt-e2mgr-configuration-configmap - name: e2mgr-loglevel-volume configMap: name: configmap-ricplt-e2mgr-loglevel-configmap items: - key: logcfg path: log-level.yaml mode: 0644 --- # Source: e2mgr/templates/ingress-e2mgr.yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-ricplt-e2mgr spec: rules: - http: paths: - path: /e2mgr pathType: Prefix backend: service: name: service-ricplt-e2mgr-http port: number: 3800 *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/appmgr Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/appmgr [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: appmgr/templates/secret.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################ apiVersion: v1 kind: Secret metadata: name: secret-ricplt-appmgr type: Opaque data: helm_repo_username: helm helm_repo_password: helm --- # Source: appmgr/templates/appconfig.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-appmgr-appconfig data: appmgr.yaml: | "local": # Port on which the xapp-manager REST services are provided "host": ":8080" "helm": # Remote helm repo URL. UPDATE this as required. "repo": "\"http://service-ricplt-xapp-onboarder-http:8080\"" # Repo name referred within the xapp-manager "repo-name": "helm-repo" # Tiller service details in the cluster. UPDATE this as required. "tiller-service": service-tiller-ricxapp "tiller-namespace": ricinfra "tiller-port": "44134" # helm username and password files "helm-username-file": "/opt/ric/secret/helm_repo_username" "helm-password-file": "/opt/ric/secret/helm_repo_password" "retry": 1 "xapp": #Namespace to install xAPPs "namespace": "ricxapp" "tarDir": "/tmp" "schema": "descriptors/schema.json" "config": "config/config-file.json" "tmpConfig": "/tmp/config-file.json" --- # Source: appmgr/templates/configmap-bin.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-appmgr-bin data: appmgr-tiller-secret-copier.sh: | #!/bin/sh if [ -x /svcacct-to-kubeconfig.sh ] ; then /svcacct-to-kubeconfig.sh fi if [ ! -z "${HELM_TLS_CA_CERT}" ]; then kubectl -n ${SECRET_NAMESPACE} get secret -o yaml ${SECRET_NAME} | \ grep 'ca.crt:' | \ awk '{print $2}' | \ base64 -d > ${HELM_TLS_CA_CERT} fi if [ ! -z "${HELM_TLS_CERT}" ]; then kubectl -n ${SECRET_NAMESPACE} get secret -o yaml ${SECRET_NAME} | \ grep 'tls.crt:' | \ awk '{print $2}' | \ base64 -d > ${HELM_TLS_CERT} fi if [ ! -z "${HELM_TLS_KEY}" ]; then kubectl -n ${SECRET_NAMESPACE} get secret -o yaml ${SECRET_NAME} | \ grep 'tls.key:' | \ awk '{print $2}' | \ base64 -d > ${HELM_TLS_KEY} fi svcacct-to-kubeconfig.sh: | #!/bin/sh # generate a kubconfig (at ${KUBECONFIG} file from the automatically-mounted # service account token. # ENVIRONMENT: # SVCACCT_NAME: the name of the service account user. default "default" # CLUSTER_NAME: the name of the kubernetes cluster. default "kubernetes" # KUBECONFIG: where the generated file will be deposited. SVCACCT_TOKEN=`cat /var/run/secrets/kubernetes.io/serviceaccount/token` CLUSTER_CA=`base64 /var/run/secrets/kubernetes.io/serviceaccount/ca.crt|tr -d '\n'` cat >${KUBECONFIG} <<__EOF__ ApiVersion: v1 kind: Config users: - name: ${SVCACCT_NAME:-default} user: token: ${SVCACCT_TOKEN} clusters: - cluster: certificate-authority-data: ${CLUSTER_CA} server: ${K8S_API_HOST:-https://kubernetes.default.svc.cluster.local/} name: ${CLUSTER_NAME:-kubernetes} contexts: - context: cluster: ${CLUSTER_NAME:-kubernetes} user: ${SVCACCT_NAME:-default} name: svcs-acct-context current-context: svcs-acct-context __EOF__ --- # Source: appmgr/templates/env-appmgr.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-appmgr-env data: NAME: "xappmgr" RMR_RTG_SVC: "4561" HELM_HOST: "service-tiller-ricxapp.ricinfra:44134" HELM_TLS_VERIFY: "true" HELM_TLS_CA_CERT: "/opt/ric/secret/tiller-ca.cert" HELM_TLS_HOSTNAME: "service-tiller-ricxapp" HELM_TLS_ENABLED: "true" HELM_TLS_CERT: "/opt/ric/secret/helm-client.cert" HELM_TLS_KEY: "/opt/ric/secret/helm-client.key" --- # Source: appmgr/templates/serviceaccount.yaml ################################################################################ # Copyright (c) 2019-2020 AT&T Intellectual Property. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ServiceAccount metadata: name: svcacct-ricplt-appmgr namespace: ricplt --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: svcacct-ricplt-appmgr-ricxapp-access rules: - apiGroups: [""] resources: ["pods/portforward"] verbs: ["create"] - apiGroups: [""] resources: ["pods", "configmaps", "deployments", "services"] verbs: ["get", "list", "create", "delete"] - apiGroups: [""] resources: ["secrets"] #resourceNames: [ "ricxapp-helm-secret" ] verbs: ["get","list"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: svcacct-ricplt-appmgr-ricxapp-access namespace: ricplt roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: svcacct-ricplt-appmgr-ricxapp-access subjects: - kind: ServiceAccount name: svcacct-ricplt-appmgr namespace: ricplt --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: svcacct-ricplt-appmgr-ricxapp-getappconfig #namespace: ricxapp #namespace: ricplt rules: - apiGroups: [""] resources: ["configmaps", "endpoints", "services"] verbs: ["get", "list", "create", "update", "delete"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: svcacct-ricplt-appmgr-ricxapp-getappconfig namespace: ricxapp #namespace: ricplt roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: svcacct-ricplt-appmgr-ricxapp-getappconfig subjects: - kind: ServiceAccount name: svcacct-ricplt-appmgr namespace: ricplt --- # Source: appmgr/templates/service-http.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-appmgr-http namespace: ricplt labels: app: ricplt-appmgr chart: appmgr-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 8080 protocol: "TCP" name: "http" targetPort: "http" selector: app: ricplt-appmgr release: release-name --- # Source: appmgr/templates/service-rmr.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-appmgr-rmr namespace: ricplt labels: app: ricplt-appmgr chart: appmgr-3.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 4561 protocol: "TCP" name: "rmrroute" targetPort: "rmrroute" - port: 4560 protocol: "TCP" name: "rmrdata" targetPort: "rmrdata" selector: app: ricplt-appmgr release: release-name --- # Source: appmgr/templates/deployment.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-appmgr namespace: ricplt labels: app: ricplt-appmgr chart: appmgr-3.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-appmgr release: release-name template: metadata: labels: app: ricplt-appmgr release: release-name spec: hostname: appmgr serviceAccountName: svcacct-ricplt-appmgr imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc initContainers: - name: container-ricplt-appmgr-copy-tiller-secret image: nexus3.o-ran-sc.org:10002/o-ran-sc/it-dep-init:0.0.1 imagePullPolicy: IfNotPresent env: - name: SVCACCT_NAME value: svcacct-ricplt-appmgr - name: CLUSTER_NAME value: kubernetes - name: KUBECONFIG value: /tmp/kubeconfig - name: K8S_API_HOST value: https://kubernetes.default.svc.cluster.local/ - name: SECRET_NAMESPACE value: ricinfra - name: SECRET_NAME value: ricxapp-helm-secret envFrom: - configMapRef: name: configmap-ricplt-appmgr-env command: ["/appmgr-tiller-secret-copier.sh"] volumeMounts: - name: helm-secret-volume mountPath: /opt/ric/secret readOnly: false - name: appmgr-bin-volume mountPath: /svcacct-to-kubeconfig.sh subPath: svcacct-to-kubeconfig.sh - name: appmgr-bin-volume mountPath: /appmgr-tiller-secret-copier.sh subPath: appmgr-tiller-secret-copier.sh containers: - name: container-ricplt-appmgr image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-appmgr:0.2.0 imagePullPolicy: IfNotPresent ports: - name: http containerPort: 8080 protocol: TCP - name: rmrroute containerPort: 4561 protocol: TCP - name: rmrdata containerPort: 4560 protocol: TCP volumeMounts: - name: config-volume mountPath: /opt/ric/config/appmgr.yaml subPath: appmgr.yaml - name: helm-secret-volume mountPath: /opt/ric/secret readOnly: false - name: secret-volume mountPath: /opt/ric/secret/helm_repo_username subPath: helm_repo_username - name: secret-volume mountPath: /opt/ric/secret/helm_repo_password subPath: helm_repo_password envFrom: - configMapRef: name: configmap-ricplt-appmgr-env - configMapRef: name: configmap-ricplt-dbaas-appconfig livenessProbe: #exec: # command: # - /bin/bash # - -c # - ps -ef | grep | grep -v "grep" #initialDelaySeconds: 120 #periodSeconds: 30 readinessProbe: # httpGet: # path: / # port: http securityContext: # ubuntu #runAsUser: 1000 #allowPrivilegeEscalation: false restartPolicy: Always volumes: - name: config-volume configMap: name: configmap-ricplt-appmgr-appconfig - name: secret-volume secret: secretName: secret-ricplt-appmgr - name: helm-secret-volume emptyDir: {} - name: appmgr-bin-volume configMap: name: configmap-ricplt-appmgr-bin defaultMode: 0755 --- # Source: appmgr/templates/ingress-appmgr.yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-ricplt-appmgr spec: rules: - http: paths: - pathType: Prefix path: /appmgr backend: service: name: service-ricplt-appmgr-http port: number: 8080 *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/alarmmanager Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 1 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Deleting outdated charts Performing Helm lint ==> Linting /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/alarmmanager [INFO] Chart.yaml: icon is recommended 1 chart(s) linted, no failures *************************************************************************************************************** Rendering Helm charts locally --- # Source: alarmmanager/templates/appconfig.yaml ################################################################################ # Copyright (c) 2020 AT&T Intellectual Property. # # Copyright (c) 2020 Nokia. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-alarmmanager-appconfig namespace: ricplt data: ALARM_MGR_SERVICE_NAME: service-ricplt-alarmmanager-rmr.ricplt ALARM_MGR_SERVICE_PORT: "4560" --- apiVersion: v1 kind: ConfigMap metadata: name: alarm-appconfig namespace: ricxapp data: ALARM_MGR_SERVICE_NAME: service-ricplt-alarmmanager-rmr.ricplt ALARM_MGR_SERVICE_PORT: "4560" --- # Source: alarmmanager/templates/configmap.yaml #================================================================================== # Copyright (c) 2019 AT&T Intellectual Property. # # 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. #================================================================================== apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-alarmmanager-alarmmanagercfg namespace: ricplt data: alarmmanagercfg: |- { "local": { "host": ":8080" }, "logger": { "level": 4 }, "db": { "namespaces": ["sdl", "rnib"] }, "rmr": { "protPort": "tcp:4560", "maxSize": 1024, "numWorkers": 1 }, "controls": { "promAlertManager": { "address": "cpro-alertmanager:80", "baseUrl": "api/v2", "schemes": "http", "alertInterval": 30000 }, "maxActiveAlarms": 5000, "maxAlarmHistory": 20000, "alarmInfoPvFile": "/mnt/pv-ricplt-alarmmanager/alarminfo.json" } } --- # Source: alarmmanager/templates/env.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: ConfigMap metadata: name: configmap-ricplt-alarmmanager-env namespace: ricplt data: RMR_RTG_SVC: service-ricplt-rtmgr-rmr:4561 RMR_SEED_RT: "/cfg/uta_rtg.rt" RMR_SRC_ID: service-ricplt-alarmmanager-rmr.ricplt --- # Source: alarmmanager/templates/pv.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################1 --- apiVersion: v1 kind: PersistentVolume metadata: name: pv-ricplt-alarmmanager namespace: ricplt labels: type: local spec: storageClassName: local-storage capacity: storage: 100Mi accessModes: - ReadWriteOnce hostPath: path: /mnt/pv-ricplt-alarmmanager --- # Source: alarmmanager/templates/pvc.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # # # 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. # ################################################################################ --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc-ricplt-alarmmanager namespace: ricplt spec: accessModes: - ReadWriteOnce resources: requests: storage: 100Mi storageClassName: local-storage --- # Source: alarmmanager/templates/serviceaccount.yaml ################################################################################ # Copyright (c) 2019-2020 AT&T Intellectual Property. # # # # 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. # ################################################################################ --- apiVersion: v1 kind: ServiceAccount metadata: name: svcacct-ricplt-alarmmanager namespace: ricplt --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: svcacct-ricplt-alarmmanager-ricxapp-podreader namespace: ricxapp rules: - apiGroups: [""] resources: ["pods"] verbs: ["get", "list", "watch"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: svcacct-ricplt-alarmmanager-ricxapp-podreader namespace: ricxapp roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: svcacct-ricplt-alarmmanager-ricxapp-podreader subjects: - kind: ServiceAccount name: svcacct-ricplt-alarmmanager namespace: ricplt --- # Source: alarmmanager/templates/service-http.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ apiVersion: v1 kind: Service metadata: name: service-ricplt-alarmmanager-http namespace: ricplt labels: app: ricplt-alarmmanager chart: alarmmanager-5.0.0 release: release-name heritage: Tiller spec: type: ClusterIP ports: - port: 8080 protocol: "TCP" name: http targetPort: 8080 selector: app: ricplt-alarmmanager release: release-name --- # Source: alarmmanager/templates/service-rmr.yaml # #================================================================================== # Copyright (c) 2019 AT&T Intellectual Property. # Copyright (c) 2019 Nokia # # 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. #================================================================================== # # # Abstract: Subscription Manager service manifest # Date: 28 May 2019 # kind: Service apiVersion: v1 metadata: name: service-ricplt-alarmmanager-rmr namespace: ricplt labels: app: ricplt-alarmmanager chart: alarmmanager-5.0.0 release: release-name heritage: Tiller spec: selector: app: ricplt-alarmmanager release: release-name type: ClusterIP ports: - name: rmrdata port: 4560 protocol: TCP targetPort: rmrdata - name: rmrroute port: 4561 protocol: TCP targetPort: rmrroute selector: app: ricplt-alarmmanager release: release-name --- # Source: alarmmanager/templates/deployment.yaml ################################################################################ # Copyright (c) 2019 AT&T Intellectual Property. # # Copyright (c) 2019 Nokia. # # # # 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. # ################################################################################ --- apiVersion: apps/v1 kind: Deployment metadata: name: deployment-ricplt-alarmmanager namespace: ricplt labels: app: ricplt-alarmmanager chart: alarmmanager-5.0.0 release: release-name heritage: Tiller spec: replicas: 1 selector: matchLabels: app: ricplt-alarmmanager release: release-name template: metadata: labels: app: ricplt-alarmmanager release: release-name spec: hostname: alarmmanager imagePullSecrets: - name: secret-nexus3-o-ran-sc-org-10002-o-ran-sc serviceAccountName: svcacct-ricplt-alarmmanager containers: - name: container-ricplt-alarmmanager image: nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-alarmmanager:0.5.9 imagePullPolicy: IfNotPresent env: - name: PLT_NAMESPACE value: ricplt envFrom: - configMapRef: name: configmap-ricplt-dbaas-appconfig - configMapRef: name: configmap-ricplt-alarmmanager-env ports: - name: rmrroute containerPort: 4561 protocol: TCP - name: rmrdata containerPort: 4560 protocol: TCP - name: http containerPort: 8080 protocol: TCP volumeMounts: - name: config-volume mountPath: /cfg - name: am-persistent-storage mountPath: /mnt/pv-ricplt-alarmmanager volumes: - name: config-volume configMap: name: configmap-ricplt-alarmmanager-alarmmanagercfg #name: alarmmanagercfg items: - key: alarmmanagercfg path: config-file.json mode: 0644 - name: am-persistent-storage persistentVolumeClaim: claimName: pvc-ricplt-alarmmanager *************************************************************************************************************** Running helm lint and verification on chart /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/bin/../helm/infrastructure Update chart dependency Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "local" chart repository Update Complete. Saving 7 charts Downloading ric-common from repo http://127.0.0.1:8879/charts Save error occurred: apiVersion 'v2' is not valid. The value must be "v1" Deleting newly downloaded charts, restoring pre-update state Error: apiVersion 'v2' is not valid. The value must be "v1" Build step 'Execute shell' marked build as failure $ ssh-agent -k unset SSH_AUTH_SOCK; unset SSH_AGENT_PID; echo Agent pid 1720 killed; [ssh-agent] Stopped. [PostBuildScript] - [INFO] Executing post build scripts. [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins5427631630779959900.sh ---> sysstat.sh [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins7231818548513385133.sh ---> package-listing.sh ++ facter osfamily ++ tr '[:upper:]' '[:lower:]' + OS_FAMILY=debian + workspace=/w/workspace/ric-plt-ric-dep-chart-shell-verify-master + START_PACKAGES=/tmp/packages_start.txt + END_PACKAGES=/tmp/packages_end.txt + DIFF_PACKAGES=/tmp/packages_diff.txt + PACKAGES=/tmp/packages_start.txt + '[' /w/workspace/ric-plt-ric-dep-chart-shell-verify-master ']' + PACKAGES=/tmp/packages_end.txt + case "${OS_FAMILY}" in + grep '^ii' + dpkg -l + '[' -f /tmp/packages_start.txt ']' + '[' -f /tmp/packages_end.txt ']' + diff /tmp/packages_start.txt /tmp/packages_end.txt + '[' /w/workspace/ric-plt-ric-dep-chart-shell-verify-master ']' + mkdir -p /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/archives/ + cp -f /tmp/packages_diff.txt /tmp/packages_end.txt /tmp/packages_start.txt /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/archives/ [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins2026037885476462988.sh ---> capture-instance-metadata.sh Setup pyenv: system 3.8.13 3.9.13 * 3.10.6 (set by /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-CDht from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing: lftools lf-activate-venv(): INFO: Adding /tmp/venv-CDht/bin to PATH INFO: Running in OpenStack, capturing instance metadata [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins1156123063104239346.sh provisioning config files... copy managed file [jenkins-log-archives-settings] to file:/w/workspace/ric-plt-ric-dep-chart-shell-verify-master@tmp/config5686692540301543452tmp Regular expression run condition: Expression=[^.*logs-s3.*], Label=[] Run condition [Regular expression match] preventing perform for step [Provide Configuration files] [EnvInject] - Injecting environment variables from a build step. [EnvInject] - Injecting as environment variables the properties content SERVER_ID=logs [EnvInject] - Variables injected successfully. [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins10199453331341318924.sh ---> create-netrc.sh [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins1819987919575242418.sh ---> python-tools-install.sh Setup pyenv: system 3.8.13 3.9.13 * 3.10.6 (set by /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-CDht from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing: lftools lf-activate-venv(): INFO: Adding /tmp/venv-CDht/bin to PATH [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins5163728619189265811.sh ---> sudo-logs.sh Archiving 'sudo' log.. [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash /tmp/jenkins9297666600785778717.sh ---> job-cost.sh Setup pyenv: system 3.8.13 3.9.13 * 3.10.6 (set by /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-CDht from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing: zipp==1.1.0 python-openstackclient urllib3~=1.26.15 lf-activate-venv(): INFO: Adding /tmp/venv-CDht/bin to PATH INFO: No Stack... INFO: Retrieving Pricing Info for: v2-highcpu-2 INFO: Archiving Costs [ric-plt-ric-dep-chart-shell-verify-master] $ /bin/bash -l /tmp/jenkins7887276391301639018.sh ---> logs-deploy.sh Setup pyenv: system 3.8.13 3.9.13 * 3.10.6 (set by /w/workspace/ric-plt-ric-dep-chart-shell-verify-master/.python-version) lf-activate-venv(): INFO: Reuse venv:/tmp/venv-CDht from file:/tmp/.os_lf_venv lf-activate-venv(): INFO: Installing: lftools lf-activate-venv(): INFO: Adding /tmp/venv-CDht/bin to PATH INFO: Nexus URL https://nexus.o-ran-sc.org path production/vex-sjc-oran-jenkins-prod-1/ric-plt-ric-dep-chart-shell-verify-master/212 INFO: archiving workspace using pattern(s): -p **/*.log Archives upload complete. INFO: archiving logs to Nexus ---> uname -a: Linux prd-ubuntu1804-builder-2c-2g-3658 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux ---> lscpu: Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 2 NUMA node(s): 1 Vendor ID: AuthenticAMD CPU family: 23 Model: 49 Model name: AMD EPYC-Rome Processor Stepping: 0 CPU MHz: 2800.000 BogoMIPS: 5600.00 Virtualization: AMD-V Hypervisor vendor: KVM Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 512K L3 cache: 16384K NUMA node0 CPU(s): 0,1 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl xtopology cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext perfctr_core ssbd ibrs ibpb stibp vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero xsaveerptr arat npt nrip_save umip rdpid arch_capabilities ---> nproc: 2 ---> df -h: Filesystem Size Used Avail Use% Mounted on udev 984M 0 984M 0% /dev tmpfs 200M 668K 199M 1% /run /dev/vda1 20G 7.3G 12G 38% / tmpfs 997M 0 997M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 997M 0 997M 0% /sys/fs/cgroup /dev/vda15 105M 5.3M 100M 5% /boot/efi tmpfs 200M 0 200M 0% /run/user/1001 ---> free -m: total used free shared buff/cache available Mem: 1992 335 96 0 1561 1482 Swap: 1023 0 1023 ---> ip addr: 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens3: mtu 1450 qdisc fq_codel state UP group default qlen 1000 link/ether fa:16:3e:f0:cc:48 brd ff:ff:ff:ff:ff:ff inet 10.32.6.123/23 brd 10.32.7.255 scope global dynamic ens3 valid_lft 86246sec preferred_lft 86246sec inet6 fe80::f816:3eff:fef0:cc48/64 scope link valid_lft forever preferred_lft forever ---> sar -b -r -n DEV: Linux 4.15.0-213-generic (prd-ubuntu1804-builder-2c-2g-3658) 08/29/24 _x86_64_ (2 CPU) 06:24:21 LINUX RESTART (2 CPU) 06:25:03 tps rtps wtps bread/s bwrtn/s 06:26:01 291.31 183.90 107.40 4935.38 19870.41 Average: 291.31 183.90 107.40 4935.38 19870.41 06:25:03 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 06:26:01 260328 1579724 1780304 87.24 60720 1350812 517976 16.77 381424 1261176 4816 Average: 260328 1579724 1780304 87.24 60720 1350812 517976 16.77 381424 1261176 4816 06:25:03 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil 06:26:01 lo 5.37 5.37 1.65 1.65 0.00 0.00 0.00 0.00 06:26:01 ens3 160.54 129.23 1302.82 18.00 0.00 0.00 0.00 0.00 Average: lo 5.37 5.37 1.65 1.65 0.00 0.00 0.00 0.00 Average: ens3 160.54 129.23 1302.82 18.00 0.00 0.00 0.00 0.00 ---> sar -P ALL: Linux 4.15.0-213-generic (prd-ubuntu1804-builder-2c-2g-3658) 08/29/24 _x86_64_ (2 CPU) 06:24:21 LINUX RESTART (2 CPU) 06:25:03 CPU %user %nice %system %iowait %steal %idle 06:26:01 all 64.82 0.00 18.90 8.27 0.16 7.86 06:26:01 0 66.79 0.00 17.58 7.00 0.17 8.45 06:26:01 1 62.82 0.00 20.19 9.54 0.16 7.29 Average: all 64.82 0.00 18.90 8.27 0.16 7.86 Average: 0 66.79 0.00 17.58 7.00 0.17 8.45 Average: 1 62.82 0.00 20.19 9.54 0.16 7.29