From bbc60e778ff2f68ccf857a15bc06c217d469828a Mon Sep 17 00:00:00 2001 From: Stefan Reimer Date: Fri, 24 Jul 2020 15:40:24 +0100 Subject: [PATCH] Tweaks for aws-ebs-csi-driver, added initial aws-efs-csi-driver --- charts/kubezero-argo-cd/README.md | 3 +- charts/kubezero-aws-ebs-csi-driver/Chart.yaml | 2 +- charts/kubezero-aws-ebs-csi-driver/README.md | 8 +- .../README.md.gotmpl | 4 +- .../templates/storage-class.yaml | 6 +- .../kubezero-aws-ebs-csi-driver/values.yaml | 4 + charts/kubezero-aws-efs-csi-driver/Chart.yaml | 26 ++++ charts/kubezero-aws-efs-csi-driver/PR.patch | 27 ++++ charts/kubezero-aws-efs-csi-driver/README.md | 28 +++++ .../README.md.gotmpl | 14 +++ .../charts/aws-efs-csi-driver/Chart.yaml | 15 +++ .../aws-efs-csi-driver/templates/NOTES.txt | 3 + .../aws-efs-csi-driver/templates/_helpers.tpl | 45 +++++++ .../templates/csidriver.yaml | 6 + .../templates/daemonset.yaml | 117 ++++++++++++++++++ .../charts/aws-efs-csi-driver/values.yaml | 46 +++++++ .../templates/efs_pv.yaml | 19 +++ .../templates/storage-class.yaml | 13 ++ charts/kubezero-aws-efs-csi-driver/update.sh | 10 ++ .../kubezero-aws-efs-csi-driver/values.yaml | 12 ++ charts/kubezero-istio/README.md | 4 +- charts/kubezero/Chart.yaml | 2 +- charts/kubezero/README.md | 3 +- .../templates/aws-efs-csi-driver.yaml | 6 + charts/kubezero/values-all.yaml | 3 + charts/kubezero/values.yaml | 3 + 26 files changed, 418 insertions(+), 11 deletions(-) create mode 100644 charts/kubezero-aws-efs-csi-driver/Chart.yaml create mode 100644 charts/kubezero-aws-efs-csi-driver/PR.patch create mode 100644 charts/kubezero-aws-efs-csi-driver/README.md create mode 100644 charts/kubezero-aws-efs-csi-driver/README.md.gotmpl create mode 100644 charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/Chart.yaml create mode 100644 charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/NOTES.txt create mode 100644 charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/_helpers.tpl create mode 100644 charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/csidriver.yaml create mode 100644 charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/daemonset.yaml create mode 100644 charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/values.yaml create mode 100644 charts/kubezero-aws-efs-csi-driver/templates/efs_pv.yaml create mode 100644 charts/kubezero-aws-efs-csi-driver/templates/storage-class.yaml create mode 100755 charts/kubezero-aws-efs-csi-driver/update.sh create mode 100644 charts/kubezero-aws-efs-csi-driver/values.yaml create mode 100644 charts/kubezero/templates/aws-efs-csi-driver.yaml diff --git a/charts/kubezero-argo-cd/README.md b/charts/kubezero-argo-cd/README.md index a35a8c01..de55733d 100644 --- a/charts/kubezero-argo-cd/README.md +++ b/charts/kubezero-argo-cd/README.md @@ -2,7 +2,7 @@ kubezero-argo-cd ================ KubeZero ArgoCD Helm chart to install ArgoCD itself and the KubeZero ArgoCD Application -Current chart version is `0.3.2` +Current chart version is `0.3.5` Source code can be found [here](https://kubezero.com) @@ -24,6 +24,7 @@ Source code can be found [here](https://kubezero.com) | argo-cd.installCRDs | bool | `false` | | | argo-cd.istio.enabled | bool | `false` | Deploy Istio VirtualService to expose ArgoCD | | argo-cd.istio.gateway | string | `"ingressgateway.istio-system.svc.cluster.local"` | Name of the Istio gateway to add the VirtualService to | +| argo-cd.istio.ipBlocks | list | `[]` | | | argo-cd.redis.nodeSelector."node-role.kubernetes.io/master" | string | `""` | | | argo-cd.redis.tolerations[0].effect | string | `"NoSchedule"` | | | argo-cd.redis.tolerations[0].key | string | `"node-role.kubernetes.io/master"` | | diff --git a/charts/kubezero-aws-ebs-csi-driver/Chart.yaml b/charts/kubezero-aws-ebs-csi-driver/Chart.yaml index 9ed936b7..aead9dc9 100644 --- a/charts/kubezero-aws-ebs-csi-driver/Chart.yaml +++ b/charts/kubezero-aws-ebs-csi-driver/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: kubezero-aws-ebs-csi-driver description: KubeZero Umbrella Chart for aws-ebs-csi-driver type: application -version: 0.1.0 +version: 0.1.1 home: https://kubezero.com icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png sources: diff --git a/charts/kubezero-aws-ebs-csi-driver/README.md b/charts/kubezero-aws-ebs-csi-driver/README.md index 525ff1bf..58e0fca5 100644 --- a/charts/kubezero-aws-ebs-csi-driver/README.md +++ b/charts/kubezero-aws-ebs-csi-driver/README.md @@ -2,7 +2,7 @@ kubezero-aws-ebs-csi-driver =========================== KubeZero Umbrella Chart for aws-ebs-csi-driver -Current chart version is `0.1.0` +Current chart version is `0.1.1` Source code can be found [here](https://kubezero.com) @@ -20,13 +20,15 @@ podAnnotations: ``` ## Storage Classes -Provides the *ebs-sc-gp2-xfs* storage class for gp2, enrypted and XFS. -This class is also set as default. +By default it also creates the *ebs-sc-gp2-xfs* storage class for gp2, enrypted and XFS. +This class is by default also set as default storage class. ## Chart Values | Key | Type | Default | Description | |-----|------|---------|-------------| +| StorageClass.create | bool | `true` | | +| StorageClass.default | bool | `true` | | | aws-ebs-csi-driver.enableVolumeResizing | bool | `false` | | | aws-ebs-csi-driver.enableVolumeScheduling | bool | `true` | | | aws-ebs-csi-driver.enableVolumeSnapshot | bool | `false` | | diff --git a/charts/kubezero-aws-ebs-csi-driver/README.md.gotmpl b/charts/kubezero-aws-ebs-csi-driver/README.md.gotmpl index 787427e3..99719db0 100644 --- a/charts/kubezero-aws-ebs-csi-driver/README.md.gotmpl +++ b/charts/kubezero-aws-ebs-csi-driver/README.md.gotmpl @@ -15,7 +15,7 @@ podAnnotations: ``` ## Storage Classes -Provides the *ebs-sc-gp2-xfs* storage class for gp2, enrypted and XFS. -This class is also set as default. +By default it also creates the *ebs-sc-gp2-xfs* storage class for gp2, enrypted and XFS. +This class is by default also set as default storage class. {{ template "chart.valuesSection" . }} diff --git a/charts/kubezero-aws-ebs-csi-driver/templates/storage-class.yaml b/charts/kubezero-aws-ebs-csi-driver/templates/storage-class.yaml index cd714bb0..f03138e8 100644 --- a/charts/kubezero-aws-ebs-csi-driver/templates/storage-class.yaml +++ b/charts/kubezero-aws-ebs-csi-driver/templates/storage-class.yaml @@ -1,11 +1,14 @@ +{{- if .Values.StorageClass.create }} kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: ebs-sc-gp2-xfs labels: {{ include "kubezero-lib.labels" . | indent 4 }} + {{- if .Values.StorageClass.default }} annotations: storageclass.kubernetes.io/is-default-class: "true" + {{- end }} provisioner: ebs.csi.aws.com volumeBindingMode: WaitForFirstConsumer parameters: @@ -16,7 +19,7 @@ parameters: allowVolumeExpansion: true {{- end }} -{{- range .Values.storageClassZones }} +{{- range .Values.StorageClass.Zones }} --- kind: StorageClass apiVersion: storage.k8s.io/v1 @@ -39,3 +42,4 @@ allowedTopologies: values: - {{ . }} {{- end }} +{{- end }} diff --git a/charts/kubezero-aws-ebs-csi-driver/values.yaml b/charts/kubezero-aws-ebs-csi-driver/values.yaml index cac6c1a5..9f8bb5bf 100644 --- a/charts/kubezero-aws-ebs-csi-driver/values.yaml +++ b/charts/kubezero-aws-ebs-csi-driver/values.yaml @@ -19,3 +19,7 @@ aws-ebs-csi-driver: # aws-ebs-csi-driver.extraVolumeTags -- Optional tags to be added to each EBS volume extraVolumeTags: {} # Name: KubeZero-Cluster + +StorageClass: + create: true + default: true diff --git a/charts/kubezero-aws-efs-csi-driver/Chart.yaml b/charts/kubezero-aws-efs-csi-driver/Chart.yaml new file mode 100644 index 00000000..15bec190 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/Chart.yaml @@ -0,0 +1,26 @@ +apiVersion: v2 +name: kubezero-aws-efs-csi-driver +description: KubeZero Umbrella Chart for aws-efs-csi-driver +version: 0.1.0 +appVersion: 1.0.0 +kubeVersion: ">=1.16.0-0" +home: https://kubezero.com +icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png +sources: + - https://github.com/Zero-Down-Time/kubezero + - https://github.com/kubernetes-sigs/aws-efs-csi-driver +keywords: + - kubezero + - aws + - efs + - csi +maintainers: + - name: Quarky9 +dependencies: + - name: kubezero-lib + version: ">= 0.1.1" + repository: https://zero-down-time.github.io/kubezero/ +# Once they properly update upstream +# - name: aws-ebs-csi-driver +# version: 1.0.0 +# repository: https://kubernetes-sigs.github.io/aws-efs-csi-driver diff --git a/charts/kubezero-aws-efs-csi-driver/PR.patch b/charts/kubezero-aws-efs-csi-driver/PR.patch new file mode 100644 index 00000000..dfa85064 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/PR.patch @@ -0,0 +1,27 @@ +commit 42a8ce1f587f10aa896ece3edbb7d31b627447a0 +Author: Stefan Reimer +Date: Fri Jul 24 15:05:14 2020 +0100 + + Actually use nodeSelector for the deamonset, to allow selecting onle workers having the EFS mounted + +diff --git a/helm/templates/daemonset.yaml b/helm/templates/daemonset.yaml +index 7fcfc1e..bfe3496 100644 +--- a/helm/templates/daemonset.yaml ++++ b/helm/templates/daemonset.yaml +@@ -22,12 +22,15 @@ spec: + spec: + nodeSelector: + beta.kubernetes.io/os: linux ++ {{- with .Values.nodeSelector }} ++ {{- . | toYaml | nindent 8 }} ++ {{- end }} + hostNetwork: true + priorityClassName: system-node-critical + tolerations: + - operator: Exists + {{- with .Values.node.tolerations }} +-{{ toYaml . | indent 8 }} ++ {{- . | toYaml | nindent 8 }} + {{- end }} + containers: + - name: efs-plugin diff --git a/charts/kubezero-aws-efs-csi-driver/README.md b/charts/kubezero-aws-efs-csi-driver/README.md new file mode 100644 index 00000000..6bcab807 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/README.md @@ -0,0 +1,28 @@ +kubezero-aws-efs-csi-driver +=========================== +KubeZero Umbrella Chart for aws-efs-csi-driver + +Current chart version is `0.1.0` + +Source code can be found [here](https://kubezero.com) + +## Chart Requirements + +| Repository | Name | Version | +|------------|------|---------| +| https://zero-down-time.github.io/kubezero/ | kubezero-lib | >= 0.1.1 | + +## Storage Class +Optionally creates the *efs-cs* storage class. +Could also be made the default storage class if requested. + +## Chart Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| PersistentVolume.EfsId | string | `""` | | +| PersistentVolume.Name | string | `""` | | +| PersistentVolume.create | bool | `false` | | +| StorageClass.create | bool | `true` | | +| StorageClass.default | bool | `false` | | +| aws-efs-csi-driver.nodeSelector | object | `{}` | | diff --git a/charts/kubezero-aws-efs-csi-driver/README.md.gotmpl b/charts/kubezero-aws-efs-csi-driver/README.md.gotmpl new file mode 100644 index 00000000..59d9809b --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/README.md.gotmpl @@ -0,0 +1,14 @@ +{{ template "chart.header" . }} +{{ template "chart.description" . }} + +{{ template "chart.versionLine" . }} + +{{ template "chart.sourceLinkLine" . }} + +{{ template "chart.requirementsSection" . }} + +## Storage Class +Optionally creates the *efs-cs* storage class. +Could also be made the default storage class if requested. + +{{ template "chart.valuesSection" . }} diff --git a/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/Chart.yaml b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/Chart.yaml new file mode 100644 index 00000000..e56ac79d --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/Chart.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +appVersion: "1.0.0" +name: aws-efs-csi-driver +description: A Helm chart for AWS EFS CSI Driver +version: 0.1.0 +kubeVersion: ">=1.14.0-0" +home: https://github.com/kubernetes-sigs/aws-efs-csi-driver +sources: + - https://github.com/kubernetes-sigs/aws-efs-csi-driver +keywords: + - aws + - efs + - csi +maintainers: + - name: leakingtapan diff --git a/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/NOTES.txt b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/NOTES.txt new file mode 100644 index 00000000..a0b1e08e --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/NOTES.txt @@ -0,0 +1,3 @@ +To verify that aws-efs-csi-driver has started, run: + + kubectl get pod -n kube-system -l "app.kubernetes.io/name={{ include "aws-efs-csi-driver.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" diff --git a/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/_helpers.tpl b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/_helpers.tpl new file mode 100644 index 00000000..6e661c37 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/_helpers.tpl @@ -0,0 +1,45 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "aws-efs-csi-driver.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 "aws-efs-csi-driver.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 "aws-efs-csi-driver.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "aws-efs-csi-driver.labels" -}} +app.kubernetes.io/name: {{ include "aws-efs-csi-driver.name" . }} +helm.sh/chart: {{ include "aws-efs-csi-driver.chart" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} diff --git a/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/csidriver.yaml b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/csidriver.yaml new file mode 100644 index 00000000..4dbf6f1c --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/csidriver.yaml @@ -0,0 +1,6 @@ +apiVersion: storage.k8s.io/v1beta1 +kind: CSIDriver +metadata: + name: efs.csi.aws.com +spec: + attachRequired: false diff --git a/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/daemonset.yaml b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/daemonset.yaml new file mode 100644 index 00000000..bfe34963 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/templates/daemonset.yaml @@ -0,0 +1,117 @@ +# Node Service +kind: DaemonSet +apiVersion: apps/v1 +metadata: + name: efs-csi-node + namespace: kube-system +spec: + selector: + matchLabels: + app: efs-csi-node + app.kubernetes.io/name: {{ include "aws-efs-csi-driver.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + template: + metadata: + labels: + app: efs-csi-node + app.kubernetes.io/name: {{ include "aws-efs-csi-driver.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + {{- if .Values.node.podAnnotations }} + annotations: {{ toYaml .Values.node.podAnnotations | nindent 8 }} + {{- end }} + spec: + nodeSelector: + beta.kubernetes.io/os: linux + {{- with .Values.nodeSelector }} + {{- . | toYaml | nindent 8 }} + {{- end }} + hostNetwork: true + priorityClassName: system-node-critical + tolerations: + - operator: Exists + {{- with .Values.node.tolerations }} + {{- . | toYaml | nindent 8 }} + {{- end }} + containers: + - name: efs-plugin + securityContext: + privileged: true + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + args: + - --endpoint=$(CSI_ENDPOINT) + - --logtostderr + - --v=5 + env: + - name: CSI_ENDPOINT + value: unix:/csi/csi.sock + volumeMounts: + - name: kubelet-dir + mountPath: /var/lib/kubelet + mountPropagation: "Bidirectional" + - name: plugin-dir + mountPath: /csi + - name: efs-state-dir + mountPath: /var/run/efs + - name: efs-utils-config + mountPath: /etc/amazon/efs + ports: + - name: healthz + containerPort: 9809 + protocol: TCP + livenessProbe: + httpGet: + path: /healthz + port: healthz + initialDelaySeconds: 10 + timeoutSeconds: 3 + periodSeconds: 2 + failureThreshold: 5 + - name: cs-driver-registrar + image: {{ printf "%s:%s" .Values.sidecars.nodeDriverRegistrarImage.repository .Values.sidecars.nodeDriverRegistrarImage.tag }} + args: + - --csi-address=$(ADDRESS) + - --kubelet-registration-path=$(DRIVER_REG_SOCK_PATH) + - --v=5 + env: + - name: ADDRESS + value: /csi/csi.sock + - name: DRIVER_REG_SOCK_PATH + value: /var/lib/kubelet/plugins/efs.csi.aws.com/csi.sock + - name: KUBE_NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + volumeMounts: + - name: plugin-dir + mountPath: /csi + - name: registration-dir + mountPath: /registration + - name: liveness-probe + image: {{ printf "%s:%s" .Values.sidecars.livenessProbeImage.repository .Values.sidecars.livenessProbeImage.tag }} + args: + - --csi-address=/csi/csi.sock + - --health-port=9809 + volumeMounts: + - name: plugin-dir + mountPath: /csi + volumes: + - name: kubelet-dir + hostPath: + path: /var/lib/kubelet + type: Directory + - name: plugin-dir + hostPath: + path: /var/lib/kubelet/plugins/efs.csi.aws.com/ + type: DirectoryOrCreate + - name: registration-dir + hostPath: + path: /var/lib/kubelet/plugins_registry/ + type: Directory + - name: efs-state-dir + hostPath: + path: /var/run/efs + type: DirectoryOrCreate + - name: efs-utils-config + hostPath: + path: /etc/amazon/efs + type: DirectoryOrCreate diff --git a/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/values.yaml b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/values.yaml new file mode 100644 index 00000000..e5834288 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/charts/aws-efs-csi-driver/values.yaml @@ -0,0 +1,46 @@ +# Default values for aws-efs-csi-driver. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 2 + +image: + repository: amazon/aws-efs-csi-driver + tag: "v1.0.0" + pullPolicy: IfNotPresent + +sidecars: + livenessProbeImage: + repository: quay.io/k8scsi/livenessprobe + tag: "v2.0.0" + nodeDriverRegistrarImage: + repository: quay.io/k8scsi/csi-node-driver-registrar + tag: "v1.3.0" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +podAnnotations: {} + +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: {} + +node: + podAnnotations: {} + tolerations: [] diff --git a/charts/kubezero-aws-efs-csi-driver/templates/efs_pv.yaml b/charts/kubezero-aws-efs-csi-driver/templates/efs_pv.yaml new file mode 100644 index 00000000..ed56adfd --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/templates/efs_pv.yaml @@ -0,0 +1,19 @@ +{{- if .Values.PersistentVolume.create }} +apiVersion: v1 +kind: PersistentVolume +metadata: + name: {{ default "kubezero-efs-pv" .Values.PersistentVolume.Name }} + labels: +{{ include "kubezero-lib.labels" . | indent 4 }} +spec: + capacity: + storage: 5Gi + volumeMode: Filesystem + accessModes: + - ReadWriteMany + persistentVolumeReclaimPolicy: Retain + storageClassName: efs-sc + csi: + driver: efs.csi.aws.com + volumeHandle: {{ .Values.PersistentVolume.EfsId }} +{{- end }} diff --git a/charts/kubezero-aws-efs-csi-driver/templates/storage-class.yaml b/charts/kubezero-aws-efs-csi-driver/templates/storage-class.yaml new file mode 100644 index 00000000..7559e4b5 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/templates/storage-class.yaml @@ -0,0 +1,13 @@ +{{- if .Values.StorageClass.create }} +kind: StorageClass +apiVersion: storage.k8s.io/v1 +metadata: + name: efs-sc + labels: +{{ include "kubezero-lib.labels" . | indent 4 }} + {{- if .Values.StorageClass.default }} + annotations: + storageclass.kubernetes.io/is-default-class: "true" + {{- end }} +provisioner: efs.csi.aws.com +{{- end }} diff --git a/charts/kubezero-aws-efs-csi-driver/update.sh b/charts/kubezero-aws-efs-csi-driver/update.sh new file mode 100755 index 00000000..e1069b71 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/update.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -ex + +REPO="kubernetes-sigs/aws-efs-csi-driver" +LATEST_RELEASE=$(curl -sL -s https://api.github.com/repos/${REPO}/releases | grep '"tag_name":' | cut -d'"' -f4 | grep -v -E "(alpha|beta|rc)" | sort -t"." -k 1,1 -k 2,2 -k 3,3 -k 4,4 | tail -n 1) + +URL="https://github.com/${REPO}/releases/download/${LATEST_RELEASE}/helm-chart.tgz" + +rm -rf charts && mkdir -p charts/aws-efs-csi-driver +curl -sL "$URL" | tar xz -C charts/aws-efs-csi-driver --strip-components=1 diff --git a/charts/kubezero-aws-efs-csi-driver/values.yaml b/charts/kubezero-aws-efs-csi-driver/values.yaml new file mode 100644 index 00000000..fe0cf551 --- /dev/null +++ b/charts/kubezero-aws-efs-csi-driver/values.yaml @@ -0,0 +1,12 @@ +aws-efs-csi-driver: + nodeSelector: {} + # node.kubernetes.io/csi.efs.fs: EFS-FS_ID + +StorageClass: + create: true + default: false + +PersistentVolume: + create: false + EfsId: "" + Name: "" diff --git a/charts/kubezero-istio/README.md b/charts/kubezero-istio/README.md index 84a7104c..28ddf222 100644 --- a/charts/kubezero-istio/README.md +++ b/charts/kubezero-istio/README.md @@ -5,7 +5,7 @@ KubeZero Umbrella Chart for Istio Installs Istio Operator and KubeZero Istio profile -Current chart version is `0.1.4` +Current chart version is `0.2.0` Source code can be found [here](https://kubezero.com) @@ -24,7 +24,9 @@ Source code can be found [here](https://kubezero.com) | Key | Type | Default | Description | |-----|------|---------|-------------| | ingress.autoscaleEnabled | bool | `false` | | +| ingress.private | bool | `true` | | | ingress.replicaCount | int | `2` | | +| ingress.type | string | `"NodePort"` | | | istio-operator.hub | string | `"docker.io/istio"` | | | istio-operator.tag | string | `"1.6.5"` | | | istiod.autoscaleEnabled | bool | `false` | | diff --git a/charts/kubezero/Chart.yaml b/charts/kubezero/Chart.yaml index 2d55f3ef..262a6c2b 100644 --- a/charts/kubezero/Chart.yaml +++ b/charts/kubezero/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: kubezero description: KubeZero ArgoCD Application - Root App of Apps chart of KubeZero type: application -version: 0.3.9 +version: 0.3.10 home: https://kubezero.com icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png keywords: diff --git a/charts/kubezero/README.md b/charts/kubezero/README.md index e45ec9b3..bb93bece 100644 --- a/charts/kubezero/README.md +++ b/charts/kubezero/README.md @@ -2,7 +2,7 @@ kubezero ======== KubeZero ArgoCD Application - Root App of Apps chart of KubeZero -Current chart version is `0.3.9` +Current chart version is `0.3.10` Source code can be found [here](https://kubezero.com) @@ -17,6 +17,7 @@ Source code can be found [here](https://kubezero.com) | Key | Type | Default | Description | |-----|------|---------|-------------| | aws-ebs-csi-driver.enabled | bool | `false` | | +| aws-efs-csi-driver.enabled | bool | `false` | | | calico.enabled | bool | `true` | | | calico.type | string | `"kustomize"` | | | calico.values.migration | bool | `false` | | diff --git a/charts/kubezero/templates/aws-efs-csi-driver.yaml b/charts/kubezero/templates/aws-efs-csi-driver.yaml new file mode 100644 index 00000000..a50005b0 --- /dev/null +++ b/charts/kubezero/templates/aws-efs-csi-driver.yaml @@ -0,0 +1,6 @@ +{{- if index .Values "aws-efs-csi-driver" "enabled" }} +{{ template "kubezero-app.app" dict "root" . "name" "aws-efs-csi-driver" "type" "helm" }} + syncPolicy: + automated: + prune: true +{{- end }} diff --git a/charts/kubezero/values-all.yaml b/charts/kubezero/values-all.yaml index 18d4f105..70a0a956 100644 --- a/charts/kubezero/values-all.yaml +++ b/charts/kubezero/values-all.yaml @@ -28,5 +28,8 @@ kiam: aws-ebs-csi-driver: enabled: true +aws-efs-csi-driver: + enabled: true + istio: enabled: true diff --git a/charts/kubezero/values.yaml b/charts/kubezero/values.yaml index e16475db..5fdbdacc 100644 --- a/charts/kubezero/values.yaml +++ b/charts/kubezero/values.yaml @@ -33,5 +33,8 @@ kiam: aws-ebs-csi-driver: enabled: false +aws-efs-csi-driver: + enabled: false + istio: enabled: false