diff --git a/README.md b/README.md index 085e2d3..dbb55b9 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,15 @@ # KubeZero - ZeroDownTime Kubernetes platform ## Abstract -KubeZero is a mildly opinionated collection of Kubernetes components to be deployed on a bare Kubernetes cluster. +KubeZero is a mildly opinionated collection of Kubernetes components to be deployed on a bare Kubernetes cluster. +All components are 100% organic OpenSource. ## Quickstart ## Architecure +The kuberzero-app is root application Helm chart. +This also implements the *umbrella chart* pattern in order to inject custom values into upstream charts. ## Components diff --git a/charts/kubezero-app/Chart.yaml b/charts/kubezero-app/Chart.yaml index 2cb4bf4..b0dfd7b 100644 --- a/charts/kubezero-app/Chart.yaml +++ b/charts/kubezero-app/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: kubezero-app description: KubeZero ArgoCD Application - Root chart of the KubeZero type: application -version: 0.1.0 +version: 0.1.1 diff --git a/charts/kubezero-app/templates/calico.yaml b/charts/kubezero-app/templates/calico.yaml index ea34c3c..1337eaa 100644 --- a/charts/kubezero-app/templates/calico.yaml +++ b/charts/kubezero-app/templates/calico.yaml @@ -8,11 +8,11 @@ spec: project: kubezero source: - repoURL: {{ .Values.source.repoURL }} - targetRevision: {{ .Values.source.targetRevision }} - path: {{ .Values.source.pathPrefix }}/artifacts/calico + repoURL: {{ default .Values.defaultSource.repoURL }} + targetRevision: {{ default .Values.defaultSource.targetRevision }} + path: {{ default .Values.defaultSource.pathPrefix }}/artifacts/calico destination: - server: {{ .Values.destination.server }} + server: {{ default .Values.defaultDestination.server }} namespace: kube-system {{- end }} diff --git a/charts/kubezero-app/templates/local-volume-provisioner.yaml b/charts/kubezero-app/templates/local-volume-provisioner.yaml index f336970..160c5c1 100644 --- a/charts/kubezero-app/templates/local-volume-provisioner.yaml +++ b/charts/kubezero-app/templates/local-volume-provisioner.yaml @@ -10,11 +10,11 @@ spec: project: kubezero source: - repoURL: {{ .Values.source.repoURL }} - targetRevision: {{ .Values.source.targetRevision }} - path: {{ .Values.source.pathPrefix }}/artifacts/local-volume-provisioner + repoURL: {{ default .Values.defaultSource.repoURL }} + targetRevision: {{ default .Values.defaultSource.targetRevision }} + path: {{ default .Values.defaultSource.pathPrefix }}/artifacts/local-volume-provisioner destination: - server: {{ .Values.destination.server }} + server: {{ default .Values.defaultDestination.server }} namespace: kube-system {{- end }} diff --git a/charts/kubezero-app/values.yaml b/charts/kubezero-app/values.yaml index 216e66d..d44d897 100644 --- a/charts/kubezero-app/values.yaml +++ b/charts/kubezero-app/values.yaml @@ -1,6 +1,7 @@ -destination: +defaultDestination: server: https://kubernetes.default.svc -source: + +defaultSource: # This repoURL is used a base for all the repoURLs applications # Setting this to a eg. private git repo incl. the use of pathPrefix allows kubezero to be # integrated into any repository as a git subtree if for example public internet access is unavailable diff --git a/charts/kubezero/Chart.yaml b/charts/kubezero/Chart.yaml index 5c9b675..35150c5 100644 --- a/charts/kubezero/Chart.yaml +++ b/charts/kubezero/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 description: KubeZero Helm chart to install Zero Down Time Kuberenetes platform name: kubezero -version: 0.1.7 +version: 0.1.8 home: https://kubezero.com keywords: - kubezero diff --git a/charts/kubezero/templates/app.yaml b/charts/kubezero/templates/app.yaml index b515e2b..0a47e77 100644 --- a/charts/kubezero/templates/app.yaml +++ b/charts/kubezero/templates/app.yaml @@ -15,11 +15,18 @@ spec: repoURL: https://github.com/Zero-Down-Time/kubezero targetRevision: HEAD path: charts/kubezero-app + + {{- if .Values.config }} + helm: + values: | +{{- toYaml .Values.config | nindent 8 }} + {{- end }} + destination: server: https://kubernetes.default.svc namespace: argocd syncPolicy: automated: - prune: false + prune: true selfHeal: false {{- end }} diff --git a/charts/kubezero/templates/project.yaml b/charts/kubezero/templates/project.yaml index 3b9a097..cfdc378 100644 --- a/charts/kubezero/templates/project.yaml +++ b/charts/kubezero/templates/project.yaml @@ -24,4 +24,8 @@ spec: server: https://kubernetes.default.svc - namespace: cert-manager server: https://kubernetes.default.svc + + clusterResourceWhitelist: + - group: '*' + kind: '*' {{- end }} diff --git a/charts/kubezero/values.yaml b/charts/kubezero/values.yaml index 68c52cf..34fdbbd 100644 --- a/charts/kubezero/values.yaml +++ b/charts/kubezero/values.yaml @@ -1,5 +1,14 @@ bootstrap: true +#config: +# defaultSource: +# repoURL: https://myprivate.repo.com/k8s-components +# pathPrefix: 'some-folder' +# +# # Enabled component +# calico: +# enabled: true + argo-cd: installCRDs: false