aboutsummaryrefslogtreecommitdiffstats
path: root/vnfs/DAaaS/visualization
diff options
context:
space:
mode:
authorDileep Ranganathan <dileep.ranganathan@intel.com>2019-05-30 12:38:37 -0700
committerDileep Ranganathan <dileep.ranganathan@intel.com>2019-05-30 21:11:52 +0000
commit3d5a3e06530c1250d48f7d838c619f3bfbcd019d (patch)
tree349e370c43ce7318b3f7eb7736345de6872cbef2 /vnfs/DAaaS/visualization
parent31802660dfe74a8671ae29789f0018f0f887ea1a (diff)
Refactor Distributed Analytics project structure
Modified the project structure to improve maintainability and to add future CI and integration test support. Change-Id: Id30bfb1f83f23785a6b5f99e81f42f752d59c0f8 Issue-ID: ONAPARC-280 Signed-off-by: Dileep Ranganathan <dileep.ranganathan@intel.com>
Diffstat (limited to 'vnfs/DAaaS/visualization')
-rw-r--r--vnfs/DAaaS/visualization/.helmignore22
-rw-r--r--vnfs/DAaaS/visualization/Chart.yaml5
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/.helmignore22
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/Chart.yaml18
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/README.md240
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/dashboards/custom-dashboard.json1
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/NOTES.txt34
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/_helpers.tpl43
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/clusterrole.yaml23
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/clusterrolebinding.yaml23
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/configmap-dashboard-provider.yaml26
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/configmap.yaml71
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/dashboards-json-configmap.yaml28
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/deployment.yaml358
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/ingress.yaml42
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/podsecuritypolicy.yaml54
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/pvc.yaml24
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/role.yaml31
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/rolebinding.yaml29
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/secret.yaml22
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/service.yaml49
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/templates/serviceaccount.yaml11
-rwxr-xr-xvnfs/DAaaS/visualization/charts/grafana/values.yaml378
-rw-r--r--vnfs/DAaaS/visualization/templates/NOTES.txt37
-rw-r--r--vnfs/DAaaS/visualization/values.yaml54
25 files changed, 0 insertions, 1645 deletions
diff --git a/vnfs/DAaaS/visualization/.helmignore b/vnfs/DAaaS/visualization/.helmignore
deleted file mode 100644
index 50af0317..00000000
--- a/vnfs/DAaaS/visualization/.helmignore
+++ /dev/null
@@ -1,22 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
diff --git a/vnfs/DAaaS/visualization/Chart.yaml b/vnfs/DAaaS/visualization/Chart.yaml
deleted file mode 100644
index b85467b4..00000000
--- a/vnfs/DAaaS/visualization/Chart.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: v1
-appVersion: "1.0"
-description: A Helm chart for Kubernetes
-name: visualization
-version: 0.1.0
diff --git a/vnfs/DAaaS/visualization/charts/grafana/.helmignore b/vnfs/DAaaS/visualization/charts/grafana/.helmignore
deleted file mode 100755
index 7c04072e..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/.helmignore
+++ /dev/null
@@ -1,22 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-OWNERS
diff --git a/vnfs/DAaaS/visualization/charts/grafana/Chart.yaml b/vnfs/DAaaS/visualization/charts/grafana/Chart.yaml
deleted file mode 100755
index a0721868..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/Chart.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: v1
-appVersion: 6.0.2
-description: The leading tool for querying and visualizing time series and metrics.
-engine: gotpl
-home: https://grafana.net
-icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
-kubeVersion: ^1.8.0-0
-maintainers:
-- email: zanhsieh@gmail.com
- name: zanhsieh
-- email: rluckie@cisco.com
- name: rtluckie
-- email: maorfr@gmail.com
- name: maorfr
-name: grafana
-sources:
-- https://github.com/grafana/grafana
-version: 2.3.3
diff --git a/vnfs/DAaaS/visualization/charts/grafana/README.md b/vnfs/DAaaS/visualization/charts/grafana/README.md
deleted file mode 100755
index 44a30601..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/README.md
+++ /dev/null
@@ -1,240 +0,0 @@
-# Grafana Helm Chart
-
-* Installs the web dashboarding system [Grafana](http://grafana.org/)
-
-## TL;DR;
-
-```console
-$ helm install stable/grafana
-```
-
-## Installing the Chart
-
-To install the chart with the release name `my-release`:
-
-```console
-$ helm install --name my-release stable/grafana
-```
-
-## Uninstalling the Chart
-
-To uninstall/delete the my-release deployment:
-
-```console
-$ helm delete my-release
-```
-
-The command removes all the Kubernetes components associated with the chart and deletes the release.
-
-
-## Configuration
-
-| Parameter | Description | Default |
-|-------------------------------------------|-----------------------------------------------|---------------------------------------------------------|
-| `replicas` | Number of nodes | `1` |
-| `deploymentStrategy` | Deployment strategy | `RollingUpdate` |
-| `livenessProbe` | Liveness Probe settings | `{ "httpGet": { "path": "/api/health", "port": 3000 } "initialDelaySeconds": 60, "timeoutSeconds": 30, "failureThreshold": 10 }` |
-| `readinessProbe` | Rediness Probe settings | `{ "httpGet": { "path": "/api/health", "port": 3000 } }`|
-| `securityContext` | Deployment securityContext | `{"runAsUser": 472, "fsGroup": 472}` |
-| `priorityClassName` | Name of Priority Class to assign pods | `nil` |
-| `image.repository` | Image repository | `grafana/grafana` |
-| `image.tag` | Image tag. (`Must be >= 5.0.0`) | `6.0.2` |
-| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
-| `service.type` | Kubernetes service type | `ClusterIP` |
-| `service.port` | Kubernetes port where service is exposed | `80` |
-| `service.targetPort` | internal service is port | `3000` |
-| `service.annotations` | Service annotations | `{}` |
-| `service.labels` | Custom labels | `{}` |
-| `ingress.enabled` | Enables Ingress | `false` |
-| `ingress.annotations` | Ingress annotations | `{}` |
-| `ingress.labels` | Custom labels | `{}` |
-| `ingress.hosts` | Ingress accepted hostnames | `[]` |
-| `ingress.tls` | Ingress TLS configuration | `[]` |
-| `resources` | CPU/Memory resource requests/limits | `{}` |
-| `nodeSelector` | Node labels for pod assignment | `{}` |
-| `tolerations` | Toleration labels for pod assignment | `[]` |
-| `affinity` | Affinity settings for pod assignment | `{}` |
-| `extraInitContainers` | Init containers to add to the grafana pod | `{}` |
-| `extraContainers` | Sidecar containers to add to the grafana pod | `{}` |
-| `persistence.enabled` | Use persistent volume to store data | `false` |
-| `persistence.initChownData` | Change ownership of persistent volume on initialization | `true` |
-| `persistence.size` | Size of persistent volume claim | `10Gi` |
-| `persistence.existingClaim` | Use an existing PVC to persist data | `nil` |
-| `persistence.storageClassName` | Type of persistent volume claim | `nil` |
-| `persistence.accessModes` | Persistence access modes | `[ReadWriteOnce]` |
-| `persistence.subPath` | Mount a sub dir of the persistent volume | `nil` |
-| `schedulerName` | Alternate scheduler name | `nil` |
-| `env` | Extra environment variables passed to pods | `{}` |
-| `envFromSecret` | Name of a Kubenretes secret (must be manually created in the same namespace) containing values to be added to the environment | `""` |
-| `extraSecretMounts` | Additional grafana server secret mounts | `[]` |
-| `extraVolumeMounts` | Additional grafana server volume mounts | `[]` |
-| `extraConfigmapMounts` | Additional grafana server configMap volume mounts | `[]` |
-| `extraEmptyDirMounts` | Additional grafana server emptyDir volume mounts | `[]` |
-| `plugins` | Plugins to be loaded along with Grafana | `[]` |
-| `datasources` | Configure grafana datasources (passed through tpl) | `{}` |
-| `notifiers` | Configure grafana notifiers | `{}` |
-| `dashboardProviders` | Configure grafana dashboard providers | `{}` |
-| `dashboards` | Dashboards to import | `{}` |
-| `dashboardsConfigMaps` | ConfigMaps reference that contains dashboards | `{}` |
-| `grafana.ini` | Grafana's primary configuration | `{}` |
-| `ldap.existingSecret` | The name of an existing secret containing the `ldap.toml` file, this must have the key `ldap-toml`. | `""` |
-| `ldap.config ` | Grafana's LDAP configuration | `""` |
-| `annotations` | Deployment annotations | `{}` |
-| `podAnnotations` | Pod annotations | `{}` |
-| `sidecar.image` | Sidecar image | `kiwigrid/k8s-sidecar:0.0.13` |
-| `sidecar.imagePullPolicy` | Sidecar image pull policy | `IfNotPresent` |
-| `sidecar.resources` | Sidecar resources | `{}` |
-| `sidecar.dashboards.enabled` | Enabled the cluster wide search for dashboards and adds/updates/deletes them in grafana | `false` |
-| `sidecar.dashboards.label` | Label that config maps with dashboards should have to be added | `grafana_dashboard` |
-| `sidecar.dashboards.searchNamespace` | If specified, the sidecar will search for dashboard config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
-| `sidecar.datasources.enabled` | Enabled the cluster wide search for datasources and adds/updates/deletes them in grafana |`false` |
-| `sidecar.datasources.label` | Label that config maps with datasources should have to be added | `grafana_datasource` |
-| `sidecar.datasources.searchNamespace` | If specified, the sidecar will search for datasources config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
-| `smtp.existingSecret` | The name of an existing secret containing the SMTP credentials. | `""` |
-| `smtp.userKey` | The key in the existing SMTP secret containing the username. | `"user"` |
-| `smtp.passwordKey` | The key in the existing SMTP secret containing the password. | `"password"` |
-| `admin.existingSecret` | The name of an existing secret containing the admin credentials. | `""` |
-| `admin.userKey` | The key in the existing admin secret containing the username. | `"admin-user"` |
-| `admin.passwordKey` | The key in the existing admin secret containing the password. | `"admin-password"` |
-| `rbac.create` | Create and use RBAC resources | `true` |
-| `rbac.namespaced` | Creates Role and Rolebinding instead of the default ClusterRole and ClusteRoleBindings for the grafana instance | `false` |
-| `rbac.pspEnabled` | Create PodSecurityPolicy (with `rbac.create`, grant roles permissions as well) | `true` |
-| `rbac.pspUseAppArmor` | Enforce AppArmor in created PodSecurityPolicy (requires `rbac.pspEnabled`) | `true` |
-| `command` | Define command to be executed by grafana container at startup | `nil` |
-
-### Example of extraVolumeMounts
-
-```yaml
-- extraVolumeMounts:
- - name: plugins
- mountPath: /var/lib/grafana/plugins
- subPath: configs/grafana/plugins
- existingClaim: existing-grafana-claim
- readOnly: false
-```
-
-## Import dashboards
-
-There are a few methods to import dashboards to Grafana. Below are some examples and explanations as to how to use each method:
-
-```yaml
-dashboards:
- default:
- some-dashboard:
- json: |
- {
- "annotations":
-
- ...
- # Complete json file here
- ...
-
- "title": "Some Dashboard",
- "uid": "abcd1234",
- "version": 1
- }
- custom-dashboard:
- # This is a path to a file inside the dashboards directory inside the chart directory
- file: dashboards/custom-dashboard.json
- prometheus-stats:
- # Ref: https://grafana.com/dashboards/2
- gnetId: 2
- revision: 2
- datasource: Prometheus
- local-dashboard:
- url: https://raw.githubusercontent.com/user/repository/master/dashboards/dashboard.json
-```
-
-## BASE64 dashboards
-
-Dashboards could be storaged in a server that does not return JSON directly and instead of it returns a Base64 encoded file (e.g. Gerrit)
-A new parameter has been added to the url use case so if you specify a b64content value equals to true after the url entry a Base64 decoding is applied before save the file to disk.
-If this entry is not set or is equals to false not decoding is applied to the file before saving it to disk.
-
-### Gerrit use case:
-Gerrit API for download files has the following schema: https://yourgerritserver/a/{project-name}/branches/{branch-id}/files/{file-id}/content where {project-name} and
-{file-id} usualy has '/' in their values and so they MUST be replaced by %2F so if project-name is user/repo, branch-id is master and file-id is equals to dir1/dir2/dashboard
-the url value is https://yourgerritserver/a/user%2Frepo/branches/master/files/dir1%2Fdir2%2Fdashboard/content
-
-## Sidecar for dashboards
-
-If the parameter `sidecar.dashboards.enabled` is set, a sidecar container is deployed in the grafana pod. This container watches all config maps in the cluster and filters out the ones with a label as defined in `sidecar.dashboards.label`. The files defined in those configmaps are written to a folder and accessed by grafana. Changes to the configmaps are monitored and the imported dashboards are deleted/updated. A recommendation is to use one configmap per dashboard, as an reduction of multiple dashboards inside one configmap is currently not properly mirrored in grafana.
-Example dashboard config:
-```
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sample-grafana-dashboard
- labels:
- grafana_dashboard: 1
-data:
- k8s-dashboard.json: |-
- [...]
-```
-
-## Sidecar for datasources
-
-If the parameter `sidecar.datasources.enabled` is set, an init container is deployed in the grafana pod. This container lists all config maps in the cluster and filters out the ones with a label as defined in `sidecar.datasources.label`. The files defined in those configmaps are written to a folder and accessed by grafana on startup. Using these yaml files, the data sources in grafana can be imported. The configmaps must be created before `helm install` so that the datasources init container can list the configmaps.
-
-Example datasource config adapted from [Grafana](http://docs.grafana.org/administration/provisioning/#example-datasource-config-file):
-```
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: sample-grafana-datasource
- labels:
- grafana_datasource: 1
-data:
- datasource.yaml: |-
- # config file version
- apiVersion: 1
-
- # list of datasources that should be deleted from the database
- deleteDatasources:
- - name: Graphite
- orgId: 1
-
- # list of datasources to insert/update depending
- # whats available in the database
- datasources:
- # <string, required> name of the datasource. Required
- - name: Graphite
- # <string, required> datasource type. Required
- type: graphite
- # <string, required> access mode. proxy or direct (Server or Browser in the UI). Required
- access: proxy
- # <int> org id. will default to orgId 1 if not specified
- orgId: 1
- # <string> url
- url: http://localhost:8080
- # <string> database password, if used
- password:
- # <string> database user, if used
- user:
- # <string> database name, if used
- database:
- # <bool> enable/disable basic auth
- basicAuth:
- # <string> basic auth username
- basicAuthUser:
- # <string> basic auth password
- basicAuthPassword:
- # <bool> enable/disable with credentials headers
- withCredentials:
- # <bool> mark as default datasource. Max one per org
- isDefault:
- # <map> fields that will be converted to json and stored in json_data
- jsonData:
- graphiteVersion: "1.1"
- tlsAuth: true
- tlsAuthWithCACert: true
- # <string> json object of data that will be encrypted.
- secureJsonData:
- tlsCACert: "..."
- tlsClientCert: "..."
- tlsClientKey: "..."
- version: 1
- # <bool> allow users to edit datasources from the UI.
- editable: false
-
-```
diff --git a/vnfs/DAaaS/visualization/charts/grafana/dashboards/custom-dashboard.json b/vnfs/DAaaS/visualization/charts/grafana/dashboards/custom-dashboard.json
deleted file mode 100755
index 9e26dfee..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/dashboards/custom-dashboard.json
+++ /dev/null
@@ -1 +0,0 @@
-{} \ No newline at end of file
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/NOTES.txt b/vnfs/DAaaS/visualization/charts/grafana/templates/NOTES.txt
deleted file mode 100755
index 80c6d148..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/NOTES.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-1. Get your '{{ .Values.adminUser }}' user password by running:
-
- kubectl get secret --namespace {{ .Release.Namespace }} {{ template "grafana.fullname" . }} -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
-
-2. {{ if .Values.ingress.enabled }}
- From outside the cluster, the server URL(s) are:
-{{- range .Values.ingress.hosts }}
- http://{{ . }}
-{{- end }}
-{{ else }}
- Get the Grafana URL to visit by running these commands in the same shell:
-{{ if contains "NodePort" .Values.service.type -}}
- export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "grafana.fullname" . }})
- export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
- echo http://$NODE_IP:$NODE_PORT
-{{ else if contains "LoadBalancer" .Values.service.type -}}
- NOTE: It may take a few minutes for the LoadBalancer IP to be available.
- You can watch the status of by running 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ template "grafana.fullname" . }}'
- export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "grafana.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
- http://$SERVICE_IP:{{ .Values.service.port -}}
-{{ else if contains "ClusterIP" .Values.service.type }}
- export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "grafana.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
- kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 3000
-{{- end }}
-{{- end }}
-
-3. Login with the password from step 1 and the username: {{ .Values.adminUser }}
-
-{{- if not .Values.persistence.enabled }}
-#################################################################################
-###### WARNING: Persistence is disabled!!! You will lose your data when #####
-###### the Grafana pod is terminated. #####
-#################################################################################
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/_helpers.tpl b/vnfs/DAaaS/visualization/charts/grafana/templates/_helpers.tpl
deleted file mode 100755
index 3a3ebd3e..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/_helpers.tpl
+++ /dev/null
@@ -1,43 +0,0 @@
-{{/* vim: set filetype=mustache: */}}
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "grafana.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-If release name contains chart name it will be used as a full name.
-*/}}
-{{- define "grafana.fullname" -}}
-{{- if .Values.fullnameOverride -}}
-{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- if contains $name .Release.Name -}}
-{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-{{- end -}}
-{{- end -}}
-
-{{/*
-Create chart name and version as used by the chart label.
-*/}}
-{{- define "grafana.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create the name of the service account
-*/}}
-{{- define "grafana.serviceAccountName" -}}
-{{- if .Values.serviceAccount.create -}}
- {{ default (include "grafana.fullname" .) .Values.serviceAccount.name }}
-{{- else -}}
- {{ default "default" .Values.serviceAccount.name }}
-{{- end -}}
-{{- end -}}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/clusterrole.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/clusterrole.yaml
deleted file mode 100755
index ccfc7237..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/clusterrole.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-{{- if and .Values.rbac.create (not .Values.rbac.namespaced) }}
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-{{- with .Values.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
- name: {{ template "grafana.fullname" . }}-clusterrole
-{{- if or .Values.sidecar.dashboards.enabled .Values.sidecar.datasources.enabled }}
-rules:
-- apiGroups: [""] # "" indicates the core API group
- resources: ["configmaps"]
- verbs: ["get", "watch", "list"]
-{{- else }}
-rules: []
-{{- end}}
-{{- end}}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/clusterrolebinding.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/clusterrolebinding.yaml
deleted file mode 100755
index 0ffe9ff2..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/clusterrolebinding.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-{{- if and .Values.rbac.create (not .Values.rbac.namespaced) }}
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: {{ template "grafana.fullname" . }}-clusterrolebinding
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-{{- with .Values.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
-subjects:
- - kind: ServiceAccount
- name: {{ template "grafana.serviceAccountName" . }}
- namespace: {{ .Release.Namespace }}
-roleRef:
- kind: ClusterRole
- name: {{ template "grafana.fullname" . }}-clusterrole
- apiGroup: rbac.authorization.k8s.io
-{{- end -}}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/configmap-dashboard-provider.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/configmap-dashboard-provider.yaml
deleted file mode 100755
index 07717319..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/configmap-dashboard-provider.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-{{- if .Values.sidecar.dashboards.enabled }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-{{- with .Values.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
- name: {{ template "grafana.fullname" . }}-config-dashboards
-data:
- provider.yaml: |-
- apiVersion: 1
- providers:
- - name: 'default'
- orgId: 1
- folder: ''
- type: file
- disableDeletion: false
- options:
- path: {{ .Values.sidecar.dashboards.folder }}
-{{- end}}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/configmap.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/configmap.yaml
deleted file mode 100755
index a2d05075..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/configmap.yaml
+++ /dev/null
@@ -1,71 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-data:
-{{- if .Values.plugins }}
- plugins: {{ join "," .Values.plugins }}
-{{- end }}
- grafana.ini: |
-{{- range $key, $value := index .Values "grafana.ini" }}
- [{{ $key }}]
- {{- range $elem, $elemVal := $value }}
- {{ $elem }} = {{ $elemVal }}
- {{- end }}
-{{- end }}
-
-{{- if .Values.datasources }}
-{{ $root := . }}
- {{- range $key, $value := .Values.datasources }}
- {{ $key }}: |
-{{ tpl (toYaml $value | indent 4) $root }}
- {{- end -}}
-{{- end -}}
-
-{{- if .Values.notifiers }}
- {{- range $key, $value := .Values.notifiers }}
- {{ $key }}: |
-{{ toYaml $value | indent 4 }}
- {{- end -}}
-{{- end -}}
-
-{{- if .Values.dashboardProviders }}
- {{- range $key, $value := .Values.dashboardProviders }}
- {{ $key }}: |
-{{ toYaml $value | indent 4 }}
- {{- end -}}
-{{- end -}}
-
-{{- if .Values.dashboards }}
- download_dashboards.sh: |
- #!/usr/bin/env sh
- set -euf
- {{- if .Values.dashboardProviders }}
- {{- range $key, $value := .Values.dashboardProviders }}
- {{- range $value.providers }}
- mkdir -p {{ .options.path }}
- {{- end }}
- {{- end }}
- {{- end }}
-
- {{- range $provider, $dashboards := .Values.dashboards }}
- {{- range $key, $value := $dashboards }}
- {{- if (or (hasKey $value "gnetId") (hasKey $value "url")) }}
- curl -sk \
- --connect-timeout 60 \
- --max-time 60 \
- {{- if not $value.b64content }}
- -H "Accept: application/json" \
- -H "Content-Type: application/json;charset=UTF-8" \
- {{- end }}
- {{- if $value.url -}}{{ $value.url }}{{- else -}} https://grafana.com/api/dashboards/{{ $value.gnetId }}/revisions/{{- if $value.revision -}}{{ $value.revision }}{{- else -}}1{{- end -}}/download{{- end -}}{{ if $value.datasource }}| sed 's|\"datasource\":[^,]*|\"datasource\": \"{{ $value.datasource }}\"|g'{{ end }}{{- if $value.b64content -}} | base64 -d {{- end -}} \
- > /var/lib/grafana/dashboards/{{ $provider }}/{{ $key }}.json
- {{- end -}}
- {{- end }}
- {{- end }}
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/dashboards-json-configmap.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/dashboards-json-configmap.yaml
deleted file mode 100755
index bd46addc..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/dashboards-json-configmap.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-{{- if .Values.dashboards }}
-{{ $files := .Files }}
-{{- range $provider, $dashboards := .Values.dashboards }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ template "grafana.fullname" $ }}-dashboards-{{ $provider }}
- labels:
- app: {{ template "grafana.name" $ }}
- chart: {{ template "grafana.chart" $ }}
- release: {{ $.Release.Name }}
- heritage: {{ $.Release.Service }}
- dashboard-provider: {{ $provider }}
-data:
-{{- range $key, $value := $dashboards }}
-{{- if (or (hasKey $value "json") (hasKey $value "file")) }}
-{{ print $key | indent 2 }}.json: |-
-{{- if hasKey $value "json" }}
-{{ $value.json | indent 4 }}
-{{- end }}
-{{- if hasKey $value "file" }}
-{{ toYaml ( $files.Get $value.file ) | indent 4}}
-{{- end }}
-{{- end }}
-{{- end }}
-{{- end }}
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/deployment.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/deployment.yaml
deleted file mode 100755
index 05225e40..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/deployment.yaml
+++ /dev/null
@@ -1,358 +0,0 @@
-apiVersion: apps/v1beta2
-kind: Deployment
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-{{- with .Values.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
-spec:
- replicas: {{ .Values.replicas }}
- selector:
- matchLabels:
- app: {{ template "grafana.name" . }}
- release: {{ .Release.Name }}
- strategy:
- type: {{ .Values.deploymentStrategy }}
- {{- if ne .Values.deploymentStrategy "RollingUpdate" }}
- rollingUpdate: null
- {{- end }}
- template:
- metadata:
- labels:
- app: {{ template "grafana.name" . }}
- release: {{ .Release.Name }}
-{{- with .Values.podAnnotations }}
- annotations:
-{{ toYaml . | indent 8 }}
-{{- end }}
- spec:
- serviceAccountName: {{ template "grafana.serviceAccountName" . }}
-{{- if .Values.schedulerName }}
- schedulerName: "{{ .Values.schedulerName }}"
-{{- end }}
-{{- if .Values.securityContext }}
- securityContext:
-{{ toYaml .Values.securityContext | indent 8 }}
-{{- end }}
-{{- if .Values.priorityClassName }}
- priorityClassName: {{ .Values.priorityClassName }}
-{{- end }}
-{{- if ( or .Values.persistence.enabled .Values.dashboards .Values.sidecar.datasources.enabled .Values.extraInitContainers) }}
- initContainers:
-{{- end }}
-{{- if ( and .Values.persistence.enabled .Values.persistence.initChownData ) }}
- - name: init-chown-data
- image: "{{ .Values.chownDataImage.repository }}:{{ .Values.chownDataImage.tag }}"
- imagePullPolicy: {{ .Values.chownDataImage.pullPolicy }}
- securityContext:
- runAsUser: 0
- command: ["chown", "-R", "{{ .Values.securityContext.runAsUser }}:{{ .Values.securityContext.runAsUser }}", "/var/lib/grafana"]
- volumeMounts:
- - name: storage
- mountPath: "/var/lib/grafana"
-{{- if .Values.persistence.subPath }}
- subPath: {{ .Values.persistence.subPath }}
-{{- end }}
-{{- end }}
-{{- if .Values.dashboards }}
- - name: download-dashboards
- image: "{{ .Values.downloadDashboardsImage.repository }}:{{ .Values.downloadDashboardsImage.tag }}"
- imagePullPolicy: {{ .Values.downloadDashboardsImage.pullPolicy }}
- command: ["sh", "/etc/grafana/download_dashboards.sh"]
- volumeMounts:
- - name: config
- mountPath: "/etc/grafana/download_dashboards.sh"
- subPath: download_dashboards.sh
- - name: storage
- mountPath: "/var/lib/grafana"
-{{- if .Values.persistence.subPath }}
- subPath: {{ .Values.persistence.subPath }}
-{{- end }}
- {{- range .Values.extraSecretMounts }}
- - name: {{ .name }}
- mountPath: {{ .mountPath }}
- readOnly: {{ .readOnly }}
- {{- end }}
-{{- end }}
-{{- if .Values.sidecar.datasources.enabled }}
- - name: {{ template "grafana.name" . }}-sc-datasources
- image: "{{ .Values.sidecar.image }}"
- imagePullPolicy: {{ .Values.sidecar.imagePullPolicy }}
- env:
- - name: METHOD
- value: LIST
- - name: LABEL
- value: "{{ .Values.sidecar.datasources.label }}"
- - name: FOLDER
- value: "/etc/grafana/provisioning/datasources"
- {{- if .Values.sidecar.datasources.searchNamespace }}
- - name: NAMESPACE
- value: "{{ .Values.sidecar.datasources.searchNamespace }}"
- {{- end }}
- resources:
-{{ toYaml .Values.sidecar.resources | indent 12 }}
- volumeMounts:
- - name: sc-datasources-volume
- mountPath: "/etc/grafana/provisioning/datasources"
-{{- end}}
-{{- if .Values.extraInitContainers }}
-{{ toYaml .Values.extraInitContainers | indent 8 }}
-{{- end }}
- {{- if .Values.image.pullSecrets }}
- imagePullSecrets:
- {{- range .Values.image.pullSecrets }}
- - name: {{ . }}
- {{- end}}
- {{- end }}
- containers:
-{{- if .Values.sidecar.dashboards.enabled }}
- - name: {{ template "grafana.name" . }}-sc-dashboard
- image: "{{ .Values.sidecar.image }}"
- imagePullPolicy: {{ .Values.sidecar.imagePullPolicy }}
- env:
- - name: LABEL
- value: "{{ .Values.sidecar.dashboards.label }}"
- - name: FOLDER
- value: "{{ .Values.sidecar.dashboards.folder }}"
- {{- if .Values.sidecar.dashboards.searchNamespace }}
- - name: NAMESPACE
- value: "{{ .Values.sidecar.dashboards.searchNamespace }}"
- {{- end }}
- resources:
-{{ toYaml .Values.sidecar.resources | indent 12 }}
- volumeMounts:
- - name: sc-dashboard-volume
- mountPath: {{ .Values.sidecar.dashboards.folder | quote }}
-{{- end}}
- - name: {{ .Chart.Name }}
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- {{- if .Values.command }}
- command:
- {{- range .Values.command }}
- - {{ . }}
- {{- end }}
- {{- end}}
- volumeMounts:
- - name: config
- mountPath: "/etc/grafana/grafana.ini"
- subPath: grafana.ini
- {{- if not .Values.admin.existingSecret }}
- - name: ldap
- mountPath: "/etc/grafana/ldap.toml"
- subPath: ldap.toml
- {{- end }}
- {{- range .Values.extraConfigmapMounts }}
- - name: {{ .name }}
- mountPath: {{ .mountPath }}
- readOnly: {{ .readOnly }}
- {{- end }}
- - name: storage
- mountPath: "/var/lib/grafana"
-{{- if .Values.persistence.subPath }}
- subPath: {{ .Values.persistence.subPath }}
-{{- end }}
-{{- if .Values.dashboards }}
- {{- range $provider, $dashboards := .Values.dashboards }}
- {{- range $key, $value := $dashboards }}
- {{- if (or (hasKey $value "json") (hasKey $value "file")) }}
- - name: dashboards-{{ $provider }}
- mountPath: "/var/lib/grafana/dashboards/{{ $provider }}/{{ $key }}.json"
- subPath: "{{ $key }}.json"
- {{- end }}
- {{- end }}
- {{- end }}
-{{- end -}}
-{{- if .Values.dashboardsConfigMaps }}
- {{- range keys .Values.dashboardsConfigMaps }}
- - name: dashboards-{{ . }}
- mountPath: "/var/lib/grafana/dashboards/{{ . }}"
- {{- end }}
-{{- end }}
-{{- if .Values.datasources }}
- - name: config
- mountPath: "/etc/grafana/provisioning/datasources/datasources.yaml"
- subPath: datasources.yaml
-{{- end }}
-{{- if .Values.notifiers }}
- - name: config
- mountPath: "/etc/grafana/provisioning/notifiers/notifiers.yaml"
- subPath: notifiers.yaml
-{{- end }}
-{{- if .Values.dashboardProviders }}
- - name: config
- mountPath: "/etc/grafana/provisioning/dashboards/dashboardproviders.yaml"
- subPath: dashboardproviders.yaml
-{{- end }}
-{{- if .Values.sidecar.dashboards.enabled }}
- - name: sc-dashboard-volume
- mountPath: {{ .Values.sidecar.dashboards.folder | quote }}
- - name: sc-dashboard-provider
- mountPath: "/etc/grafana/provisioning/dashboards/sc-dashboardproviders.yaml"
- subPath: provider.yaml
-{{- end}}
-{{- if .Values.sidecar.datasources.enabled }}
- - name: sc-datasources-volume
- mountPath: "/etc/grafana/provisioning/datasources"
-{{- end}}
- {{- range .Values.extraSecretMounts }}
- - name: {{ .name }}
- mountPath: {{ .mountPath }}
- readOnly: {{ .readOnly }}
- {{- end }}
- {{- range .Values.extraVolumeMounts }}
- - name: {{ .name }}
- mountPath: {{ .mountPath }}
- subPath: {{ .subPath | default "" }}
- readOnly: {{ .readOnly }}
- {{- end }}
- {{- range .Values.extraEmptyDirMounts }}
- - name: {{ .name }}
- mountPath: {{ .mountPath }}
- {{- end }}
- ports:
- - name: service
- containerPort: {{ .Values.service.port }}
- protocol: TCP
- - name: grafana
- containerPort: 3000
- protocol: TCP
- env:
- {{- if not .Values.env.GF_SECURITY_ADMIN_USER }}
- - name: GF_SECURITY_ADMIN_USER
- valueFrom:
- secretKeyRef:
- name: {{ .Values.admin.existingSecret | default (include "grafana.fullname" .) }}
- key: {{ .Values.admin.userKey | default "admin-user" }}
- {{- end }}
- {{- if not .Values.env.GF_SECURITY_ADMIN_PASSWORD }}
- - name: GF_SECURITY_ADMIN_PASSWORD
- valueFrom:
- secretKeyRef:
- name: {{ .Values.admin.existingSecret | default (include "grafana.fullname" .) }}
- key: {{ .Values.admin.passwordKey | default "admin-password" }}
- {{- end }}
- {{- if .Values.plugins }}
- - name: GF_INSTALL_PLUGINS
- valueFrom:
- configMapKeyRef:
- name: {{ template "grafana.fullname" . }}
- key: plugins
- {{- end }}
- {{- if .Values.smtp.existingSecret }}
- - name: GF_SMTP_USER
- valueFrom:
- secretKeyRef:
- name: {{ .Values.smtp.existingSecret }}
- key: {{ .Values.smtp.userKey | default "user" }}
- - name: GF_SMTP_PASSWORD
- valueFrom:
- secretKeyRef:
- name: {{ .Values.smtp.existingSecret }}
- key: {{ .Values.smtp.passwordKey | default "password" }}
- {{- end }}
-{{- range $key, $value := .Values.env }}
- - name: "{{ $key }}"
- value: "{{ $value }}"
-{{- end }}
- {{- if .Values.envFromSecret }}
- envFrom:
- - secretRef:
- name: {{ .Values.envFromSecret }}
- {{- end }}
- livenessProbe:
-{{ toYaml .Values.livenessProbe | indent 12 }}
- readinessProbe:
-{{ toYaml .Values.readinessProbe | indent 12 }}
- resources:
-{{ toYaml .Values.resources | indent 12 }}
-{{- if .Values.extraContainers }}
-{{ toYaml .Values.extraContainers | indent 8}}
-{{- end }}
- {{- with .Values.nodeSelector }}
- nodeSelector:
-{{ toYaml . | indent 8 }}
- {{- end }}
- {{- with .Values.affinity }}
- affinity:
-{{ toYaml . | indent 8 }}
- {{- end }}
- {{- with .Values.tolerations }}
- tolerations:
-{{ toYaml . | indent 8 }}
- {{- end }}
- volumes:
- - name: config
- configMap:
- name: {{ template "grafana.fullname" . }}
- {{- range .Values.extraConfigmapMounts }}
- - name: {{ .name }}
- configMap:
- name: {{ .configMap }}
- {{- end }}
- {{- if .Values.dashboards }}
- {{- range keys .Values.dashboards }}
- - name: dashboards-{{ . }}
- configMap:
- name: {{ template "grafana.fullname" $ }}-dashboards-{{ . }}
- {{- end }}
- {{- end }}
- {{- if .Values.dashboardsConfigMaps }}
- {{ $root := . }}
- {{- range $provider, $name := .Values.dashboardsConfigMaps }}
- - name: dashboards-{{ $provider }}
- configMap:
- name: {{ tpl $name $root }}
- {{- end }}
- {{- end }}
- {{- if not .Values.admin.existingSecret }}
- - name: ldap
- secret:
- {{- if .Values.ldap.existingSecret }}
- secretName: {{ .Values.ldap.existingSecret }}
- {{- else }}
- secretName: {{ template "grafana.fullname" . }}
- {{- end }}
- items:
- - key: ldap-toml
- path: ldap.toml
- {{- end }}
- - name: storage
- {{- if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ .Values.persistence.existingClaim | default (include "grafana.fullname" .) }}
- {{- else }}
- emptyDir: {}
- {{- end -}}
- {{- if .Values.sidecar.dashboards.enabled }}
- - name: sc-dashboard-volume
- emptyDir: {}
- - name: sc-dashboard-provider
- configMap:
- name: {{ template "grafana.fullname" . }}-config-dashboards
- {{- end }}
- {{- if .Values.sidecar.datasources.enabled }}
- - name: sc-datasources-volume
- emptyDir: {}
- {{- end -}}
- {{- range .Values.extraSecretMounts }}
- - name: {{ .name }}
- secret:
- secretName: {{ .secretName }}
- defaultMode: {{ .defaultMode }}
- {{- end }}
- {{- range .Values.extraVolumeMounts }}
- - name: {{ .name }}
- persistentVolumeClaim:
- claimName: {{ .existingClaim }}
- {{- end }}
- {{- range .Values.extraEmptyDirMounts }}
- - name: {{ .name }}
- emptyDir: {}
- {{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/ingress.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/ingress.yaml
deleted file mode 100755
index 48973454..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/ingress.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-{{- if .Values.ingress.enabled -}}
-{{- $fullName := include "grafana.fullname" . -}}
-{{- $servicePort := .Values.service.port -}}
-{{- $ingressPath := .Values.ingress.path -}}
-apiVersion: extensions/v1beta1
-kind: Ingress
-metadata:
- name: {{ $fullName }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-{{- if .Values.ingress.labels }}
-{{ toYaml .Values.ingress.labels | indent 4 }}
-{{- end }}
-{{- with .Values.ingress.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
-spec:
-{{- if .Values.ingress.tls }}
- tls:
- {{- range .Values.ingress.tls }}
- - hosts:
- {{- range .hosts }}
- - {{ . | quote }}
- {{- end }}
- secretName: {{ .secretName }}
- {{- end }}
-{{- end }}
- rules:
- {{- range .Values.ingress.hosts }}
- - host: {{ . }}
- http:
- paths:
- - path: {{ $ingressPath }}
- backend:
- serviceName: {{ $fullName }}
- servicePort: {{ $servicePort }}
- {{- end }}
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/podsecuritypolicy.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/podsecuritypolicy.yaml
deleted file mode 100755
index d3ef3644..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/podsecuritypolicy.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-{{- if .Values.rbac.pspEnabled }}
-apiVersion: extensions/v1beta1
-kind: PodSecurityPolicy
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version }}
- heritage: {{ .Release.Service }}
- release: {{ .Release.Name }}
- annotations:
- seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default'
- seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
- {{- if .Values.rbac.pspUseAppArmor }}
- apparmor.security.beta.kubernetes.io/allowedProfileNames: 'runtime/default'
- apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
- {{- end }}
-spec:
- privileged: false
- allowPrivilegeEscalation: false
- requiredDropCapabilities:
- # Default set from Docker, without DAC_OVERRIDE or CHOWN
- - FOWNER
- - FSETID
- - KILL
- - SETGID
- - SETUID
- - SETPCAP
- - NET_BIND_SERVICE
- - NET_RAW
- - SYS_CHROOT
- - MKNOD
- - AUDIT_WRITE
- - SETFCAP
- volumes:
- - 'configMap'
- - 'emptyDir'
- - 'projected'
- - 'secret'
- - 'downwardAPI'
- - 'persistentVolumeClaim'
- hostNetwork: false
- hostIPC: false
- hostPID: false
- runAsUser:
- rule: 'RunAsAny'
- seLinux:
- rule: 'RunAsAny'
- supplementalGroups:
- rule: 'RunAsAny'
- fsGroup:
- rule: 'RunAsAny'
- readOnlyRootFilesystem: false
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/pvc.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/pvc.yaml
deleted file mode 100755
index e1cc0329..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/pvc.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- {{- with .Values.persistence.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
- {{- end }}
-spec:
- accessModes:
- {{- range .Values.persistence.accessModes }}
- - {{ . | quote }}
- {{- end }}
- resources:
- requests:
- storage: {{ .Values.persistence.size | quote }}
- storageClassName: {{ .Values.persistence.storageClassName }}
-{{- end -}}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/role.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/role.yaml
deleted file mode 100755
index f6165694..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/role.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-{{- if .Values.rbac.create -}}
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: Role
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version }}
- heritage: {{ .Release.Service }}
- release: {{ .Release.Name }}
-{{- with .Values.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
-{{- if or .Values.rbac.pspEnabled (and .Values.rbac.namespaced (or .Values.sidecar.dashboards.enabled .Values.sidecar.datasources.enabled)) }}
-rules:
-{{- if .Values.rbac.pspEnabled }}
-- apiGroups: ['extensions']
- resources: ['podsecuritypolicies']
- verbs: ['use']
- resourceNames: [{{ template "grafana.fullname" . }}]
-{{- end }}
-{{- if and .Values.rbac.namespaced (or .Values.sidecar.dashboards.enabled .Values.sidecar.datasources.enabled) }}
-- apiGroups: [""] # "" indicates the core API group
- resources: ["configmaps"]
- verbs: ["get", "watch", "list"]
-{{- end }}
-{{- else }}
-rules: []
-{{- end }}
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/rolebinding.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/rolebinding.yaml
deleted file mode 100755
index 8b6671b8..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/rolebinding.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-{{- if .Values.rbac.create -}}
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: RoleBinding
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version }}
- heritage: {{ .Release.Service }}
- release: {{ .Release.Name }}
-{{- with .Values.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: {{ template "grafana.fullname" . }}
-subjects:
-- kind: ServiceAccount
- name: {{ template "grafana.serviceAccountName" . }}
- namespace: {{ .Release.Namespace }}
-{{- if .Values.rbac.namespaced }}
-roleRef:
- kind: Role
- name: {{ template "grafana.fullname" . }}
- apiGroup: rbac.authorization.k8s.io
-{{- end }}
-{{- end -}}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/secret.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/secret.yaml
deleted file mode 100755
index a1ea5798..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/secret.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-{{- if not .Values.admin.existingSecret }}
-apiVersion: v1
-kind: Secret
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-type: Opaque
-data:
- admin-user: {{ .Values.adminUser | b64enc | quote }}
- {{- if .Values.adminPassword }}
- admin-password: {{ .Values.adminPassword | b64enc | quote }}
- {{- else }}
- admin-password: {{ randAlphaNum 40 | b64enc | quote }}
- {{- end }}
- {{- if not .Values.ldap.existingSecret }}
- ldap-toml: {{ .Values.ldap.config | b64enc | quote }}
- {{- end }}
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/service.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/service.yaml
deleted file mode 100755
index 87fac70c..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/service.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ template "grafana.fullname" . }}
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ template "grafana.chart" . }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-{{- if .Values.service.labels }}
-{{ toYaml .Values.service.labels | indent 4 }}
-{{- end }}
-{{- with .Values.service.annotations }}
- annotations:
-{{ toYaml . | indent 4 }}
-{{- end }}
-spec:
-{{- if (or (eq .Values.service.type "ClusterIP") (empty .Values.service.type)) }}
- type: ClusterIP
- {{- if .Values.service.clusterIP }}
- clusterIP: {{ .Values.service.clusterIP }}
- {{end}}
-{{- else if eq .Values.service.type "LoadBalancer" }}
- type: {{ .Values.service.type }}
- {{- if .Values.service.loadBalancerIP }}
- loadBalancerIP: {{ .Values.service.loadBalancerIP }}
- {{- end }}
- {{- if .Values.service.loadBalancerSourceRanges }}
- loadBalancerSourceRanges:
-{{ toYaml .Values.service.loadBalancerSourceRanges | indent 4 }}
- {{- end -}}
-{{- else }}
- type: {{ .Values.service.type }}
-{{- end }}
-{{- if .Values.service.externalIPs }}
- externalIPs:
-{{ toYaml .Values.service.externalIPs | indent 4 }}
-{{- end }}
- ports:
- - name: service
- port: {{ .Values.service.port }}
- protocol: TCP
- targetPort: {{ .Values.service.targetPort }}
-{{ if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort))) }}
- nodePort: {{.Values.service.nodePort}}
-{{ end }}
- selector:
- app: {{ template "grafana.name" . }}
- release: {{ .Release.Name }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/templates/serviceaccount.yaml b/vnfs/DAaaS/visualization/charts/grafana/templates/serviceaccount.yaml
deleted file mode 100755
index 04601d05..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/templates/serviceaccount.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-{{- if .Values.serviceAccount.create }}
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- labels:
- app: {{ template "grafana.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version }}
- heritage: {{ .Release.Service }}
- release: {{ .Release.Name }}
- name: {{ template "grafana.serviceAccountName" . }}
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/charts/grafana/values.yaml b/vnfs/DAaaS/visualization/charts/grafana/values.yaml
deleted file mode 100755
index 74b511cf..00000000
--- a/vnfs/DAaaS/visualization/charts/grafana/values.yaml
+++ /dev/null
@@ -1,378 +0,0 @@
-rbac:
- create: true
- pspEnabled: true
- pspUseAppArmor: true
- namespaced: false
-serviceAccount:
- create: true
- name:
-
-replicas: 1
-
-deploymentStrategy: RollingUpdate
-
-readinessProbe:
- httpGet:
- path: /api/health
- port: 3000
-
-livenessProbe:
- httpGet:
- path: /api/health
- port: 3000
- initialDelaySeconds: 60
- timeoutSeconds: 30
- failureThreshold: 10
-
-image:
- repository: grafana/grafana
- tag: 6.0.2
- pullPolicy: IfNotPresent
-
- ## Optionally specify an array of imagePullSecrets.
- ## Secrets must be manually created in the namespace.
- ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
- ##
- # pullSecrets:
- # - myRegistrKeySecretName
-
-securityContext:
- runAsUser: 472
- fsGroup: 472
-
-
-extraConfigmapMounts: []
- # - name: certs-configmap
- # mountPath: /etc/grafana/ssl/
- # configMap: certs-configmap
- # readOnly: true
-
-
-extraEmptyDirMounts: []
- # - name: provisioning-notifiers
- # mountPath: /etc/grafana/provisioning/notifiers
-
-
-## Assign a PriorityClassName to pods if set
-# priorityClassName:
-
-downloadDashboardsImage:
- repository: appropriate/curl
- tag: latest
- pullPolicy: IfNotPresent
-
-chownDataImage:
- repository: busybox
- tag: 1.30.0
- pullPolicy: IfNotPresent
-
-## Pod Annotations
-# podAnnotations: {}
-
-## Deployment annotations
-# annotations: {}
-
-## Expose the grafana service to be accessed from outside the cluster (LoadBalancer service).
-## or access it from within the cluster (ClusterIP service). Set the service type and the port to serve it.
-## ref: http://kubernetes.io/docs/user-guide/services/
-##
-service:
- type: ClusterIP
- port: 80
- targetPort: 3000
- # targetPort: 4181 To be used with a proxy extraContainer
- annotations: {}
- labels: {}
-
-ingress:
- enabled: false
- annotations: {}
- # kubernetes.io/ingress.class: nginx
- # kubernetes.io/tls-acme: "true"
- labels: {}
- path: /
- hosts:
- - chart-example.local
- tls: []
- # - secretName: chart-example-tls
- # hosts:
- # - chart-example.local
-
-resources: {}
-# limits:
-# cpu: 100m
-# memory: 128Mi
-# requests:
-# cpu: 100m
-# memory: 128Mi
-
-## Node labels for pod assignment
-## ref: https://kubernetes.io/docs/user-guide/node-selection/
-#
-nodeSelector: {}
-
-## Tolerations for pod assignment
-## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
-##
-tolerations: []
-
-## Affinity for pod assignment
-## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
-##
-affinity: {}
-
-extraInitContainers: []
-
-## Enable an Specify container in extraContainers. This is meant to allow adding an authentication proxy to a grafana pod
-extraContainers: |
-# - name: proxy
-# image: quay.io/gambol99/keycloak-proxy:latest
-# args:
-# - -provider=github
-# - -client-id=
-# - -client-secret=
-# - -github-org=<ORG_NAME>
-# - -email-domain=*
-# - -cookie-secret=
-# - -http-address=http://0.0.0.0:4181
-# - -upstream-url=http://127.0.0.1:3000
-# ports:
-# - name: proxy-web
-# containerPort: 4181
-
-## Enable persistence using Persistent Volume Claims
-## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
-##
-persistence:
- enabled: false
- initChownData: true
- # storageClassName: default
- accessModes:
- - ReadWriteOnce
- size: 10Gi
- # annotations: {}
- # subPath: ""
- # existingClaim:
-
-# Administrator credentials when not using an existing secret (see below)
-adminUser: admin
-# adminPassword: strongpassword
-
-# Use an existing secret for the admin user.
-admin:
- existingSecret: ""
- userKey: admin-user
- passwordKey: admin-password
-
-## Define command to be executed at startup by grafana container
-## Needed if using `vault-env` to manage secrets (ref: https://banzaicloud.com/blog/inject-secrets-into-pods-vault/)
-## Default is "run.sh" as defined in grafana's Dockerfile
-# command:
-# - "sh"
-# - "/run.sh"
-
-## Use an alternate scheduler, e.g. "stork".
-## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
-##
-# schedulerName:
-
-## Extra environment variables that will be pass onto deployment pods
-env: {}
-
-## The name of a secret in the same kubernetes namespace which contain values to be added to the environment
-## This can be useful for auth tokens, etc
-envFromSecret: ""
-
-## Additional grafana server secret mounts
-# Defines additional mounts with secrets. Secrets must be manually created in the namespace.
-extraSecretMounts: []
- # - name: secret-files
- # mountPath: /etc/secrets
- # secretName: grafana-secret-files
- # readOnly: true
-
-## Additional grafana server volume mounts
-# Defines additional volume mounts.
-extraVolumeMounts: []
- # - name: extra-volume
- # mountPath: /mnt/volume
- # readOnly: true
- # existingClaim: volume-claim
-
-## Pass the plugins you want installed as a list.
-##
-plugins: []
- # - digrich-bubblechart-panel
- # - grafana-clock-panel
-
-## Configure grafana datasources
-## ref: http://docs.grafana.org/administration/provisioning/#datasources
-##
-datasources:
- datasources.yaml:
- apiVersion: 1
- datasources:
- - name: Prometheus
- type: prometheus
- url: http://localhost:9090
- isDefault: true
- - name: M3DB
- type: prometheus
- url: http://m3coordinator-m3db-cluster.edge1.svc.cluster.local:7201
- access: proxy
-
-## Configure notifiers
-## ref: http://docs.grafana.org/administration/provisioning/#alert-notification-channels
-##
-notifiers: {}
-# notifiers.yaml:
-# notifiers:
-# - name: email-notifier
-# type: email
-# uid: email1
-# # either:
-# org_id: 1
-# # or
-# org_name: Main Org.
-# is_default: true
-# settings:
-# addresses: an_email_address@example.com
-# delete_notifiers:
-
-## Configure grafana dashboard providers
-## ref: http://docs.grafana.org/administration/provisioning/#dashboards
-##
-## `path` must be /var/lib/grafana/dashboards/<provider_name>
-##
-dashboardProviders: {}
-# dashboardproviders.yaml:
-# apiVersion: 1
-# providers:
-# - name: 'default'
-# orgId: 1
-# folder: ''
-# type: file
-# disableDeletion: false
-# editable: true
-# options:
-# path: /var/lib/grafana/dashboards/default
-
-## Configure grafana dashboard to import
-## NOTE: To use dashboards you must also enable/configure dashboardProviders
-## ref: https://grafana.com/dashboards
-##
-## dashboards per provider, use provider name as key.
-##
-dashboards: {}
- # default:
- # some-dashboard:
- # json: |
- # $RAW_JSON
- # custom-dashboard:
- # file: dashboards/custom-dashboard.json
- # prometheus-stats:
- # gnetId: 2
- # revision: 2
- # datasource: Prometheus
- # local-dashboard:
- # url: https://example.com/repository/test.json
- # local-dashboard-base64:
- # url: https://example.com/repository/test-b64.json
- # b64content: true
-
-## Reference to external ConfigMap per provider. Use provider name as key and ConfiMap name as value.
-## A provider dashboards must be defined either by external ConfigMaps or in values.yaml, not in both.
-## ConfigMap data example:
-##
-## data:
-## example-dashboard.json: |
-## RAW_JSON
-##
-dashboardsConfigMaps: {}
-# default: ""
-
-## Grafana's primary configuration
-## NOTE: values in map will be converted to ini format
-## ref: http://docs.grafana.org/installation/configuration/
-##
-grafana.ini:
- paths:
- data: /var/lib/grafana/data
- logs: /var/log/grafana
- plugins: /var/lib/grafana/plugins
- provisioning: /etc/grafana/provisioning
- analytics:
- check_for_updates: true
- log:
- mode: console
- grafana_net:
- url: https://grafana.net
-## LDAP Authentication can be enabled with the following values on grafana.ini
-## NOTE: Grafana will fail to start if the value for ldap.toml is invalid
- # auth.ldap:
- # enabled: true
- # allow_sign_up: true
- # config_file: /etc/grafana/ldap.toml
-
-## Grafana's LDAP configuration
-## Templated by the template in _helpers.tpl
-## NOTE: To enable the grafana.ini must be configured with auth.ldap.enabled
-## ref: http://docs.grafana.org/installation/configuration/#auth-ldap
-## ref: http://docs.grafana.org/installation/ldap/#configuration
-ldap:
- # `existingSecret` is a reference to an existing secret containing the ldap configuration
- # for Grafana in a key `ldap-toml`.
- existingSecret: ""
- # `config` is the content of `ldap.toml` that will be stored in the created secret
- config: ""
- # config: |-
- # verbose_logging = true
-
- # [[servers]]
- # host = "my-ldap-server"
- # port = 636
- # use_ssl = true
- # start_tls = false
- # ssl_skip_verify = false
- # bind_dn = "uid=%s,ou=users,dc=myorg,dc=com"
-
-## Grafana's SMTP configuration
-## NOTE: To enable, grafana.ini must be configured with smtp.enabled
-## ref: http://docs.grafana.org/installation/configuration/#smtp
-smtp:
- # `existingSecret` is a reference to an existing secret containing the smtp configuration
- # for Grafana.
- existingSecret: ""
- userKey: "user"
- passwordKey: "password"
-
-## Sidecars that collect the configmaps with specified label and stores the included files them into the respective folders
-## Requires at least Grafana 5 to work and can't be used together with parameters dashboardProviders, datasources and dashboards
-sidecar:
- image: kiwigrid/k8s-sidecar:0.0.13
- imagePullPolicy: IfNotPresent
- resources: {}
-# limits:
-# cpu: 100m
-# memory: 100Mi
-# requests:
-# cpu: 50m
-# memory: 50Mi
- dashboards:
- enabled: false
- # label that the configmaps with dashboards are marked with
- label: grafana_dashboard
- # folder in the pod that should hold the collected dashboards
- folder: /tmp/dashboards
- # If specified, the sidecar will search for dashboard config-maps inside this namespace.
- # Otherwise the namespace in which the sidecar is running will be used.
- # It's also possible to specify ALL to search in all namespaces
- searchNamespace: null
- datasources:
- enabled: false
- # label that the configmaps with datasources are marked with
- label: grafana_datasource
- # If specified, the sidecar will search for datasource config-maps inside this namespace.
- # Otherwise the namespace in which the sidecar is running will be used.
- # It's also possible to specify ALL to search in all namespaces
- searchNamespace: null
diff --git a/vnfs/DAaaS/visualization/templates/NOTES.txt b/vnfs/DAaaS/visualization/templates/NOTES.txt
deleted file mode 100644
index edd06657..00000000
--- a/vnfs/DAaaS/visualization/templates/NOTES.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-
-*************************GRAFANA*********************************
-
-1. Get your '{{ .Values.adminUser }}' user password by running:
-
- kubectl get secret --namespace {{ .Release.Namespace }} {{ .Release.Name }}-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
-
-2. {{ if .Values.ingress.enabled }}
- From outside the cluster, the server URL(s) are:
-{{- range .Values.ingress.hosts }}
- http://{{ . }}
-{{- end }}
-{{ else }}
- Get the Grafana URL to visit by running these commands in the same shell:
-{{ if contains "NodePort" .Values.service.type -}}
- export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "grafana.fullname" . }})
- export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
- echo http://$NODE_IP:$NODE_PORT
-{{ else if contains "LoadBalancer" .Values.service.type -}}
- NOTE: It may take a few minutes for the LoadBalancer IP to be available.
- You can watch the status of by running 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ template "grafana.fullname" . }}'
- export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "grafana.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
- http://$SERVICE_IP:{{ .Values.service.port -}}
-{{ else if contains "ClusterIP" .Values.service.type }}
- export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app=grafana,release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
- kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 3000
-{{- end }}
-{{- end }}
-
-3. Login with the password from step 1 and the username: {{ .Values.adminUser }}
-
-{{- if not .Values.persistence.enabled }}
-#################################################################################
-###### WARNING: Persistence is disabled!!! You will lose your data when #####
-###### the Grafana pod is terminated. #####
-#################################################################################
-{{- end }}
diff --git a/vnfs/DAaaS/visualization/values.yaml b/vnfs/DAaaS/visualization/values.yaml
deleted file mode 100644
index 7e1d7438..00000000
--- a/vnfs/DAaaS/visualization/values.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-# Default values for visualization.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-
-replicaCount: 1
-
-adminUser: admin
-
-image:
- repository: nginx
- tag: stable
- pullPolicy: IfNotPresent
-
-nameOverride: ""
-fullnameOverride: ""
-
-persistence:
- enabled: false
-
-service:
- type: ClusterIP
- port: 80
-
-ingress:
- enabled: false
- annotations: {}
- # kubernetes.io/ingress.class: nginx
- # kubernetes.io/tls-acme: "true"
- hosts:
- - host: chart-example.local
- paths: []
-
- tls: []
- # - secretName: chart-example-tls
- # hosts:
- # - chart-example.local
-
-resources: {}
- # We usually recommend not to specify default resources and to leave this as a conscious
- # choice for the user. This also increases chances charts run on environments with little
- # resources, such as Minikube. If you do want to specify resources, uncomment the following
- # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
- # limits:
- # cpu: 100m
- # memory: 128Mi
- # requests:
- # cpu: 100m
- # memory: 128Mi
-
-nodeSelector: {}
-
-tolerations: []
-
-affinity: {}