installer: create namespaces with kube client
diff --git a/core/installer/app.go b/core/installer/app.go
index 2b94770..8d79c58 100644
--- a/core/installer/app.go
+++ b/core/installer/app.go
@@ -13,10 +13,11 @@
var valuesTmpls embed.FS
type App struct {
- Name string
- Templates []*template.Template
- Schema string
- Readme *template.Template
+ Name string
+ Namespaces []string
+ Templates []*template.Template
+ Schema string
+ Readme *template.Template
}
type AppRepository interface {
@@ -87,6 +88,7 @@
}
return App{
"ingress-private",
+ []string{"ingress-private"},
[]*template.Template{
tmpls.Lookup("ingress-private.yaml"),
},
@@ -102,6 +104,7 @@
}
return App{
"certificate-issuer-private",
+ []string{},
[]*template.Template{
tmpls.Lookup("certificate-issuer-private.yaml"),
},
@@ -117,6 +120,7 @@
}
return App{
"certificate-issuer-public",
+ []string{},
[]*template.Template{
tmpls.Lookup("certificate-issuer-public.yaml"),
},
@@ -132,6 +136,7 @@
}
return App{
"core-auth",
+ []string{"core-auth"},
[]*template.Template{
tmpls.Lookup("core-auth-storage.yaml"),
tmpls.Lookup("core-auth.yaml"),
@@ -148,6 +153,7 @@
}
return App{
"vaultwarden",
+ []string{"app-vaultwarden"},
[]*template.Template{
tmpls.Lookup("vaultwarden.yaml"),
},
@@ -163,6 +169,7 @@
}
return App{
"matrix",
+ []string{"app-matrix"},
[]*template.Template{
tmpls.Lookup("matrix-storage.yaml"),
tmpls.Lookup("matrix.yaml"),
@@ -179,6 +186,7 @@
}
return App{
"pihole",
+ []string{"app-pihole"},
[]*template.Template{
tmpls.Lookup("pihole.yaml"),
},
@@ -194,6 +202,7 @@
}
return App{
"maddy",
+ []string{"app-maddy"},
[]*template.Template{
tmpls.Lookup("maddy.yaml"),
},
@@ -209,6 +218,7 @@
}
return App{
"qbittorrent",
+ []string{"app-qbittorrent"},
[]*template.Template{
tmpls.Lookup("qbittorrent.yaml"),
},
@@ -224,6 +234,7 @@
}
return App{
"jellyfin",
+ []string{"app-jellyfin"},
[]*template.Template{
tmpls.Lookup("jellyfin.yaml"),
},
@@ -239,6 +250,7 @@
}
return App{
"rpuppy",
+ []string{"app-rpuppy"},
[]*template.Template{
tmpls.Lookup("rpuppy.yaml"),
},
@@ -254,6 +266,7 @@
}
return App{
"headscale",
+ []string{"app-headscale"},
[]*template.Template{
tmpls.Lookup("headscale.yaml"),
},
@@ -269,6 +282,7 @@
}
return App{
"tailscale-proxy",
+ []string{"tailscale-proxy"},
[]*template.Template{
tmpls.Lookup("tailscale-proxy.yaml"),
},
@@ -284,6 +298,7 @@
}
return App{
"metallb-config-env",
+ []string{"metallb-config"},
[]*template.Template{
tmpls.Lookup("metallb-config-env.yaml"),
},
@@ -299,6 +314,7 @@
}
return App{
"env-manager",
+ []string{"env-manager"},
[]*template.Template{
tmpls.Lookup("env-manager.yaml"),
},
@@ -314,6 +330,7 @@
}
return App{
"welcome",
+ []string{"app-welcome"},
[]*template.Template{
tmpls.Lookup("welcome.yaml"),
},
@@ -329,6 +346,7 @@
}
return App{
"ingress-public",
+ []string{"ingress-public"},
[]*template.Template{
tmpls.Lookup("ingress-public.yaml"),
},
@@ -344,6 +362,7 @@
}
return App{
"cert-manager",
+ []string{"cert-manager"},
[]*template.Template{
tmpls.Lookup("cert-manager.yaml"),
},
@@ -359,6 +378,7 @@
}
return App{
"cert-manager-webhook-gandi",
+ []string{},
[]*template.Template{
tmpls.Lookup("cert-manager-webhook-gandi.yaml"),
},
@@ -374,6 +394,7 @@
}
return App{
"cert-manager-webhook-gandi-role",
+ []string{},
[]*template.Template{
tmpls.Lookup("cert-manager-webhook-gandi-role.yaml"),
},
@@ -389,6 +410,7 @@
}
return App{
"csi-driver-smb",
+ []string{"csi-driver-smb"},
[]*template.Template{
tmpls.Lookup("csi-driver-smb.yaml"),
},
@@ -404,6 +426,7 @@
}
return App{
"resource-renderer-controller",
+ []string{"rr-controller"},
[]*template.Template{
tmpls.Lookup("resource-renderer-controller.yaml"),
},
@@ -419,6 +442,7 @@
}
return App{
"headscale-controller",
+ []string{"headscale-controller"},
[]*template.Template{
tmpls.Lookup("headscale-controller.yaml"),
},