Initial commit: Turbo Mothership bare metal management cluster

- k0s bootstrap with Cilium and OpenEBS
- ArgoCD apps for infra, CAPI, Tinkerbell, and Netris
- Ansible playbooks for virtual baremetal lab and Netris switches
- CAPI provider manifests for k0smotron and Tinkerbell
This commit is contained in:
Pavel Basov
2025-12-15 19:59:58 +01:00
commit df9937f0c3
39 changed files with 1961 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
{{- if .Values.clusterIssuer.enabled }}
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: {{ .Values.clusterIssuer.name }}
annotations:
"helm.sh/hook": post-install,post-upgrade
"helm.sh/hook-weight": "10"
spec:
acme:
server: {{ .Values.clusterIssuer.server }}
email: {{ .Values.clusterIssuer.email }}
privateKeySecretRef:
name: {{ .Values.clusterIssuer.name }}
solvers:
- http01:
ingress:
ingressClassName: nginx
{{- end }}

View File

@@ -0,0 +1,41 @@
{{- if index .Values "ingress-nginx" "enabled" }}
---
apiVersion: v1
kind: Namespace
metadata:
name: {{ index .Values "ingress-nginx" "namespaceOverride" | default "ingress-nginx" }}
labels:
app.kubernetes.io/managed-by: Helm
annotations:
meta.helm.sh/release-name: {{ .Release.Name }}
meta.helm.sh/release-namespace: {{ .Release.Namespace }}
"helm.sh/resource-policy": keep
{{- end }}
{{- if index .Values "cert-manager" "enabled" }}
---
apiVersion: v1
kind: Namespace
metadata:
name: {{ index .Values "cert-manager" "namespace" | default "cert-manager" }}
labels:
app.kubernetes.io/managed-by: Helm
annotations:
meta.helm.sh/release-name: {{ .Release.Name }}
meta.helm.sh/release-namespace: {{ .Release.Namespace }}
"helm.sh/resource-policy": keep
{{- end }}
{{- if index .Values "argo-cd" "enabled" }}
---
apiVersion: v1
kind: Namespace
metadata:
name: {{ index .Values "argo-cd" "namespaceOverride" | default "argocd" }}
labels:
app.kubernetes.io/managed-by: Helm
annotations:
meta.helm.sh/release-name: {{ .Release.Name }}
meta.helm.sh/release-namespace: {{ .Release.Namespace }}
"helm.sh/resource-policy": keep
{{- end }}