From 0a8b588c245dacafaa48caa2e428fe1c9d9d2c27 Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Wed, 6 Sep 2023 16:47:10 -0700 Subject: [PATCH] Add ocm feature Signed-off-by: Tamal Saha --- charts/opscenter-features/README.md | 2 + .../featuresets/opscenter-ocm/featureset.yaml | 22 ++++++++ .../multicluster-controlplane.yaml | 51 +++++++++++++++++++ charts/opscenter-features/values.yaml | 3 ++ 4 files changed, 78 insertions(+) create mode 100644 charts/opscenter-features/templates/featuresets/opscenter-ocm/featureset.yaml create mode 100644 charts/opscenter-features/templates/featuresets/opscenter-ocm/multicluster-controlplane.yaml diff --git a/charts/opscenter-features/README.md b/charts/opscenter-features/README.md index 78e35e139..a8b9aed00 100644 --- a/charts/opscenter-features/README.md +++ b/charts/opscenter-features/README.md @@ -71,6 +71,8 @@ The following table lists the configurable parameters of the `opscenter-features | repositories.kubevault.url | | https://charts.appscode.com/stable | | repositories.nats.interval | | 30m0s | | repositories.nats.url | | https://nats-io.github.io/k8s/helm/charts/ | +| repositories.ocm.interval | | 30m0s | +| repositories.ocm.url | | oci://r.byte.builders/charts | | repositories.opencost.interval | | 30m0s | | repositories.opencost.url | | oci://r.byte.builders/charts | | repositories.prometheus-community.interval | | 30m0s | diff --git a/charts/opscenter-features/templates/featuresets/opscenter-ocm/featureset.yaml b/charts/opscenter-features/templates/featuresets/opscenter-ocm/featureset.yaml new file mode 100644 index 000000000..9152d0b15 --- /dev/null +++ b/charts/opscenter-features/templates/featuresets/opscenter-ocm/featureset.yaml @@ -0,0 +1,22 @@ +apiVersion: ui.k8s.appscode.com/v1alpha1 +kind: FeatureSet +metadata: + name: opscenter-ocm +spec: + title: Open Cluster Management + description: | + Hub & Spoke model for Managing Many Kubernetes Clusters + icons: + - src: https://cdn.appscode.com/k8s/icons/menu/cluster.svg + type: image/svg+xml + required: false + requiredFeatures: + - multicluster-controlplane + chart: + name: uik8sappscodecom-featureset-opscenter-ocm-editor + version: {{ .Chart.AppVersion }} + sourceRef: + apiGroup: source.toolkit.fluxcd.io + kind: HelmRepository + name: bytebuilders-ui + namespace: {{ .Release.Namespace }} diff --git a/charts/opscenter-features/templates/featuresets/opscenter-ocm/multicluster-controlplane.yaml b/charts/opscenter-features/templates/featuresets/opscenter-ocm/multicluster-controlplane.yaml new file mode 100644 index 000000000..c5930db76 --- /dev/null +++ b/charts/opscenter-features/templates/featuresets/opscenter-ocm/multicluster-controlplane.yaml @@ -0,0 +1,51 @@ +apiVersion: ui.k8s.appscode.com/v1alpha1 +kind: Feature +metadata: + name: multicluster-controlplane + labels: + byte.builders/feature-set: opscenter-ocm +spec: + title: Multicluster Controlplane + description: | + Measure and allocate infrastructure and container costs + icons: + - src: https://cdn.appscode.com/k8s/icons/menu/cluster.svg + type: image/svg+xml + featureSet: opscenter-ocm + featureBlock: ocm + required: true + readinessChecks: + workloads: + - group: apps + version: v1 + kind: Deployment + selector: + app.kubernetes.io/instance: opencost + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: opencost + chart: + name: multicluster-controlplane + namespace: multicluster-controlplane + version: "0.2.0" + sourceRef: + kind: HelmRepository + name: ocm + namespace: {{ .Release.Namespace }} + values: + apiserver: + generateCA: true + enableSelfManagement: true + autoApprovalBootstrapUsers: "system:admin" + features: DefaultClusterSet=true,ManagedClusterAutoApproval=true,ManifestWorkReplicaSet=true + image: ghcr.io/kluster-management/multicluster-controlplane:latest + imagePullPolicy: Always + loadbalancer: + enabled: true + pvc: + storageClassName: "" + route: + enabled: false + securityContext: + fsGroup: 10001 + runAsGroup: 10001 + runAsUser: 10001 diff --git a/charts/opscenter-features/values.yaml b/charts/opscenter-features/values.yaml index 9f6547c21..b7596478a 100644 --- a/charts/opscenter-features/values.yaml +++ b/charts/opscenter-features/values.yaml @@ -39,6 +39,9 @@ repositories: nats: interval: 30m0s url: https://nats-io.github.io/k8s/helm/charts/ + ocm: + interval: 30m0s + url: oci://r.byte.builders/charts opencost: interval: 30m0s url: oci://r.byte.builders/charts