Skip to content

Commit 3660626

Browse files
tested on k3s
1 parent e1eb3c0 commit 3660626

File tree

15 files changed

+389
-83
lines changed

15 files changed

+389
-83
lines changed

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,11 @@ k3d-delete:
4343
TIMESTAMP := $(shell date -u "+%Y-%m-%d-T%H-%M-%S")
4444
VERSION := 0.1-$(TIMESTAMP)
4545

46-
build-kf-apps:
46+
build-chart:
4747
rm -rf helm/treebeard-kubeflow-*.tgz
4848
helm package helm/treebeard-kubeflow -d helm --version $(VERSION)
4949

50-
push-kf-apps: build-kf-apps
50+
push-chart: build-chart
5151
helm push helm/treebeard-kubeflow-*.tgz oci://ghcr.io/treebeardtech/helm
5252

5353
helm-repo-login:

examples/k3s-gitops/main.tf

Lines changed: 5 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -21,79 +21,7 @@ provider "helm" {
2121
}
2222

2323
locals {
24-
cert_manager_enabled = false
25-
}
26-
27-
resource "helm_release" "cert-manager" {
28-
name = "cert-manager"
29-
namespace = "cert-manager"
30-
chart = "cert-manager"
31-
repository = "https://charts.jetstack.io"
32-
version = "1.14.3"
33-
create_namespace = true
34-
depends_on = []
35-
values = [
36-
<<EOF
37-
installCRDs: true
38-
EOF
39-
]
40-
}
41-
42-
resource "helm_release" "istio_base" {
43-
name = "istio-base"
44-
namespace = "istio-system"
45-
chart = "base"
46-
repository = "https://istio-release.storage.googleapis.com/charts"
47-
version = "1.18.7"
48-
create_namespace = true
49-
depends_on = [
50-
helm_release.cert-manager
51-
]
52-
values = [
53-
<<EOF
54-
EOF
55-
]
56-
}
57-
58-
resource "helm_release" "istiod" {
59-
name = "istiod"
60-
namespace = "istio-system"
61-
chart = "istiod"
62-
repository = "https://istio-release.storage.googleapis.com/charts"
63-
version = "1.18.7"
64-
create_namespace = true
65-
depends_on = [
66-
helm_release.istio_base
67-
]
68-
values = [
69-
<<EOF
70-
EOF
71-
]
72-
}
73-
74-
resource "helm_release" "istio_ingressgateway" {
75-
name = "istio-ingressgateway"
76-
namespace = "istio-system"
77-
chart = "gateway"
78-
repository = "https://istio-release.storage.googleapis.com/charts"
79-
version = "1.18.7"
80-
depends_on = [
81-
helm_release.istiod
82-
]
83-
values = [
84-
<<EOF
85-
service:
86-
type: ClusterIP
87-
serviceAccount:
88-
name: istio-ingressgateway-service-account
89-
EOF
90-
]
91-
}
92-
93-
resource "null_resource" "completed" {
94-
depends_on = [
95-
helm_release.istio_ingressgateway
96-
]
24+
debug = true
9725
}
9826

9927
module "treebeardkf" {
@@ -102,19 +30,17 @@ module "treebeardkf" {
10230
<<EOF
10331
sources:
10432
- repoURL: 'https://github.com/treebeardtech/treebeard-kubeflow-gitops'
105-
targetRevision: 8e3369ac3720bd837f75d812b9ec9d5f9d135cef
33+
targetRevision: main
10634
ref: values
10735
valueFiles:
108-
# this value file should disabled istio (example of gitops config)
10936
- $values/clusters/k3s-gitops.yaml
11037
valuesObject:
11138
# example of inline config where terraform vars can be injected
112-
certManager:
113-
enabled: ${local.cert_manager_enabled}
114-
# syncPolicy: null enable for debugging
39+
debug: ${local.debug}
40+
syncPolicy: null
41+
11542
EOF
11643
]
11744
depends_on = [
118-
null_resource.completed
11945
]
12046
}

helm/bootstrap/values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ finalizers:
66
- resources-finalizer.argocd.argoproj.io
77
project: default
88
repoURL: ghcr.io/treebeardtech/helm
9-
targetRevision: 0.1-2024-03-08-T18-39-28
9+
targetRevision: 0.1-2024-03-11-T13-18-50
1010
chart: treebeard-kubeflow
1111
destination:
1212
server: https://kubernetes.default.svc
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{{ if .Values.debug }}
2+
apiVersion: v1
3+
kind: Secret
4+
metadata:
5+
name: treebeard-kubeflow-debug
6+
type: Opaque
7+
stringData:
8+
helm-values: |
9+
{{ .Values | toYaml | indent 4 }}
10+
{{- end }}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{{ if .Values.clusterLocalGateway.enabled }}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: Application
4+
metadata:
5+
name: 200-cluster-local-gateway
6+
annotations:
7+
argocd.argoproj.io/sync-wave: "200"
8+
finalizers:
9+
- resources-finalizer.argocd.argoproj.io
10+
spec:
11+
{{ .Values.clusterLocalGateway.spec | toYaml | indent 2 }}
12+
{{- end -}}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{{ if .Values.knativeServing.enabled }}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: Application
4+
metadata:
5+
name: 200-knative-serving
6+
annotations:
7+
argocd.argoproj.io/sync-wave: "200"
8+
finalizers:
9+
- resources-finalizer.argocd.argoproj.io
10+
spec:
11+
{{ .Values.knativeServing.spec | toYaml | indent 2 }}
12+
{{- end -}}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
apiVersion: batch/v1
2+
kind: Job
3+
metadata:
4+
name: 200-wait
5+
namespace: argocd
6+
annotations:
7+
argocd.argoproj.io/sync-wave: "200"
8+
spec:
9+
template:
10+
spec:
11+
serviceAccount: argocd-server
12+
containers:
13+
- name: check-sync
14+
image: bitnami/kubectl
15+
command: ["/bin/sh","-c"]
16+
args:
17+
- |
18+
echo waiting
19+
date
20+
sleep 20
21+
echo done
22+
date
23+
restartPolicy: Never
24+
backoffLimit: 1
25+
activeDeadlineSeconds: 60
26+
ttlSecondsAfterFinished: 30
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{{ if .Values.kserve.enabled }}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: Application
4+
metadata:
5+
name: 201-kserve
6+
annotations:
7+
argocd.argoproj.io/sync-wave: "201"
8+
finalizers:
9+
- resources-finalizer.argocd.argoproj.io
10+
spec:
11+
{{ .Values.kserve.spec | toYaml | indent 2 }}
12+
{{- end -}}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{{ if .Values.modelsWebApp.enabled }}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: Application
4+
metadata:
5+
name: 201-models-web-app
6+
annotations:
7+
argocd.argoproj.io/sync-wave: "201"
8+
finalizers:
9+
- resources-finalizer.argocd.argoproj.io
10+
spec:
11+
{{ .Values.modelsWebApp.spec | toYaml | indent 2 }}
12+
{{- end -}}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{{ if .Values.katib.enabled }}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: Application
4+
metadata:
5+
name: 202-katib
6+
annotations:
7+
argocd.argoproj.io/sync-wave: "202"
8+
finalizers:
9+
- resources-finalizer.argocd.argoproj.io
10+
spec:
11+
{{ .Values.katib.spec | toYaml | indent 2 }}
12+
{{- end -}}

0 commit comments

Comments
 (0)