# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
+{{- if not .Values.dashboard.storageclass }}
+
+kind: StorageClass
+apiVersion: storage.k8s.io/v1
+metadata:
+ name: storageclass-{{ include "common.name.dashboard" . }}
+provisioner: kubernetes.io/no-provisioner
+volumeBindingMode: WaitForFirstConsumer
+
+---
apiVersion: v1
-kind: Service
+kind: PersistentVolume
metadata:
- name: {{ include "common.servicename.a1mediator.http" . }}
- namespace: {{ include "common.namespace.platform" . }}
- labels:
- app: {{ include "common.namespace.platform" . }}-{{ include "common.name.a1mediator" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
+ name: pv-{{ include "common.name.dashboard" . }}
spec:
- type: ClusterIP
- ports:
- - port: {{ include "common.serviceport.a1mediator.http" . }}
- protocol: "TCP"
- name: "http"
- targetPort: "http"
- selector:
- app: {{ include "common.namespace.platform" . }}-{{ include "common.name.a1mediator" . }}
- release: {{ .Release.Name }}
+ capacity:
+ storage: {{ .Values.dashboard.storagesize }}
+ accessModes:
+ - ReadWriteOnce
+ persistentVolumeReclaimPolicy: Retain
+ storageClassName: storageclass-{{ include "common.name.dashboard" . }}
+ local:
+ path: {{ .Values.dashboard.datapath }}
+ nodeAffinity:
+ required:
+ nodeSelectorTerms:
+ - matchExpressions:
+ - key: local-storage
+ operator: In
+ values:
+ - enable
+{{- end -}}
+