From b7cd39609f1cdd8a8725c34c6d93e1279372910e Mon Sep 17 00:00:00 2001 From: Arvind Prabhakar Date: Mon, 22 Jun 2026 22:57:58 +0000 Subject: [PATCH] Added MiniIO to platform --- argocd-apps/platform/platform-minio.yaml | 18 +++++ charts/platform-minio/Chart.yaml | 6 ++ charts/platform-minio/templates/service.yaml | 16 +++++ .../platform-minio/templates/statefulset.yaml | 50 +++++++++++++ charts/platform-minio/values.yaml | 15 ++++ rendered/platform-minio/platform-minio.yaml | 70 +++++++++++++++++++ 6 files changed, 175 insertions(+) create mode 100644 argocd-apps/platform/platform-minio.yaml create mode 100644 charts/platform-minio/Chart.yaml create mode 100644 charts/platform-minio/templates/service.yaml create mode 100644 charts/platform-minio/templates/statefulset.yaml create mode 100644 charts/platform-minio/values.yaml create mode 100644 rendered/platform-minio/platform-minio.yaml diff --git a/argocd-apps/platform/platform-minio.yaml b/argocd-apps/platform/platform-minio.yaml new file mode 100644 index 0000000..feaf4f4 --- /dev/null +++ b/argocd-apps/platform/platform-minio.yaml @@ -0,0 +1,18 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: platform-minio + namespace: argocd +spec: + project: platform + source: + repoURL: https://www.symcrest.com/internal/dev/forgejo/symcrest/k8s-platform.git + targetRevision: main + path: rendered/platform-minio + destination: + server: https://kubernetes.default.svc + namespace: platform-services + syncPolicy: + automated: + prune: false + selfHeal: true diff --git a/charts/platform-minio/Chart.yaml b/charts/platform-minio/Chart.yaml new file mode 100644 index 0000000..5074564 --- /dev/null +++ b/charts/platform-minio/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: platform-minio +description: Symcrest platform MinIO +type: application +version: 0.1.0 +appVersion: "latest" diff --git a/charts/platform-minio/templates/service.yaml b/charts/platform-minio/templates/service.yaml new file mode 100644 index 0000000..a8ef91d --- /dev/null +++ b/charts/platform-minio/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: platform-minio + namespace: {{ .Values.namespace }} +spec: + type: ClusterIP + selector: + app: platform-minio + ports: + - name: api + port: 9000 + targetPort: 9000 + - name: console + port: 9001 + targetPort: 9001 diff --git a/charts/platform-minio/templates/statefulset.yaml b/charts/platform-minio/templates/statefulset.yaml new file mode 100644 index 0000000..fc7ded0 --- /dev/null +++ b/charts/platform-minio/templates/statefulset.yaml @@ -0,0 +1,50 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: platform-minio + namespace: {{ .Values.namespace }} +spec: + serviceName: platform-minio + replicas: 1 + selector: + matchLabels: + app: platform-minio + template: + metadata: + labels: + app: platform-minio + spec: + nodeSelector: +{{ toYaml .Values.nodeSelector | indent 8 }} + securityContext: + fsGroup: 1000 + fsGroupChangePolicy: "OnRootMismatch" + containers: + - name: minio + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + args: + - server + - /data + - --console-address + - ":9001" + ports: + - name: api + containerPort: 9000 + - name: console + containerPort: 9001 + envFrom: + - secretRef: + name: {{ .Values.auth.existingSecret }} + volumeMounts: + - name: minio-data + mountPath: /data + volumeClaimTemplates: + - metadata: + name: minio-data + spec: + accessModes: + - ReadWriteOnce + storageClassName: {{ .Values.storage.className | quote }} + resources: + requests: + storage: {{ .Values.storage.size | quote }} diff --git a/charts/platform-minio/values.yaml b/charts/platform-minio/values.yaml new file mode 100644 index 0000000..8186438 --- /dev/null +++ b/charts/platform-minio/values.yaml @@ -0,0 +1,15 @@ +namespace: platform-services + +image: + repository: minio/minio + tag: latest + +auth: + existingSecret: platform-minio-secret + +storage: + className: longhorn + size: 20Gi + +nodeSelector: + workload: app diff --git a/rendered/platform-minio/platform-minio.yaml b/rendered/platform-minio/platform-minio.yaml new file mode 100644 index 0000000..0b6bd5a --- /dev/null +++ b/rendered/platform-minio/platform-minio.yaml @@ -0,0 +1,70 @@ +--- +# Source: platform-minio/templates/service.yaml +apiVersion: v1 +kind: Service +metadata: + name: platform-minio + namespace: platform-services +spec: + type: ClusterIP + selector: + app: platform-minio + ports: + - name: api + port: 9000 + targetPort: 9000 + - name: console + port: 9001 + targetPort: 9001 +--- +# Source: platform-minio/templates/statefulset.yaml +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: platform-minio + namespace: platform-services +spec: + serviceName: platform-minio + replicas: 1 + selector: + matchLabels: + app: platform-minio + template: + metadata: + labels: + app: platform-minio + spec: + nodeSelector: + workload: app + securityContext: + fsGroup: 1000 + fsGroupChangePolicy: "OnRootMismatch" + containers: + - name: minio + image: "minio/minio:latest" + args: + - server + - /data + - --console-address + - ":9001" + ports: + - name: api + containerPort: 9000 + - name: console + containerPort: 9001 + envFrom: + - secretRef: + name: platform-minio-secret + volumeMounts: + - name: minio-data + mountPath: /data + volumeClaimTemplates: + - metadata: + name: minio-data + spec: + accessModes: + - ReadWriteOnce + storageClassName: "longhorn" + resources: + requests: + storage: "20Gi"