Skip to content

Commit 7d84d69

Browse files
feat(vCluster): Upgrade to 0.30.0, Add Prometheus operator plugin, monitoring CM, refactor config templating (#129)
1 parent 77d38a8 commit 7d84d69

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+117
-12415
lines changed

.github/workflows/lint-test.yaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ jobs:
8888
fi
8989
9090
- name: Create kind cluster
91-
uses: helm/kind-action@v1.5.0
91+
uses: helm/kind-action@v1.13.0
9292

9393
- name: Run chart-testing (install)
9494
run: |
@@ -97,6 +97,12 @@ jobs:
9797
# Do not run `ct install` for cf-common (library chart) or builder/runner
9898
exit 0
9999
fi
100+
101+
if [[ "$changed" =~ "charts/cf-vcluster" ]]; then
102+
# install prometheus CRDs for cf-vcluster to pass installation with plugin enabled
103+
helm install prom-crds --repo https://prometheus-community.github.io/helm-charts prometheus-operator-crds --wait
104+
fi
105+
100106
ct install --config "ct.yaml"
101107
102108
unittest-charts:

charts/cf-vcluster/Chart.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,12 @@ apiVersion: v2
22
name: cf-vcluster
33
description: Umbrella chart over vCluster adjusted for Codefresh use cases - mainly in Crossplane compositions
44
type: application
5-
version: 0.28.0-4
6-
appVersion: "0.28.0"
5+
version: 0.31.0-alpha.0-1
6+
appVersion: "0.31.0"
77
dependencies:
88
- name: vcluster
9-
version: 0.28.0
9+
repository: https://charts.loft.sh
10+
version: v0.31.0-alpha.0
1011
maintainers:
1112
- name: codefresh
1213
url: https://codefresh-io.github.io/

charts/cf-vcluster/README.md

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# cf-vcluster
22

3-
![Version: 0.28.0-4](https://img.shields.io/badge/Version-0.28.0--4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.28.0](https://img.shields.io/badge/AppVersion-0.28.0-informational?style=flat-square)
3+
![Version: 0.31.0-alpha.0-1](https://img.shields.io/badge/Version-0.31.0--alpha.0--1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.31.0](https://img.shields.io/badge/AppVersion-0.31.0-informational?style=flat-square)
44

55
Umbrella chart over vCluster adjusted for Codefresh use cases - mainly in Crossplane compositions
66

@@ -14,7 +14,7 @@ Umbrella chart over vCluster adjusted for Codefresh use cases - mainly in Crossp
1414

1515
| Repository | Name | Version |
1616
|------------|------|---------|
17-
| | vcluster | 0.28.0 |
17+
| https://charts.loft.sh | vcluster | v0.31.0-alpha.0 |
1818

1919
## Values
2020

@@ -41,19 +41,48 @@ Umbrella chart over vCluster adjusted for Codefresh use cases - mainly in Crossp
4141
| global.ingress.public.host.domain | string | `"example.com"` | |
4242
| global.ingress.public.host.name | string | `"{{ .Release.Namespace }}-vcluster"` | |
4343
| global.ingress.public.ingressClassName | string | `"nginx-public"` | |
44+
| global.monitoring.additionalResourceAttributes | object | `{}` | |
45+
| global.monitoring.monitoredNamespaces | list | `[]` | |
4446
| vcluster.controlPlane.distro.k8s.apiServer.extraArgs[0] | string | `"--oidc-issuer-url=https://dexidp.shared-services.cf-infra.com"` | |
4547
| vcluster.controlPlane.distro.k8s.apiServer.extraArgs[1] | string | `"--oidc-client-id=vcluster-login"` | |
4648
| vcluster.controlPlane.distro.k8s.apiServer.extraArgs[2] | string | `"--oidc-username-claim=email"` | |
4749
| vcluster.controlPlane.distro.k8s.apiServer.extraArgs[3] | string | `"--oidc-groups-claim=groups"` | |
4850
| vcluster.controlPlane.distro.k8s.enabled | bool | `true` | |
49-
| vcluster.controlPlane.proxy.extraSANs[0] | string | `"{{ tpl (printf \"%s.%s.%s\" .Release.Name .Release.Namespace \".cluster.svc.local\") . }}"` | |
51+
| vcluster.controlPlane.proxy.extraSANs[0] | string | `"{{ tpl (printf \"%s.%s.%s\" .Release.Name .Release.Namespace \"cluster.svc.local\") . }}"` | |
5052
| vcluster.controlPlane.proxy.extraSANs[1] | string | `"{{ tpl (printf \"%s.%s\" .Values.global.ingress.internal.host.name .Values.global.ingress.internal.host.domain) . }}"` | |
5153
| vcluster.controlPlane.proxy.extraSANs[2] | string | `"{{ tpl (printf \"%s.%s\" .Values.global.ingress.public.host.name .Values.global.ingress.public.host.domain) . }}"` | |
54+
| vcluster.controlPlane.statefulSet.args[0] | string | `"--config"` | |
55+
| vcluster.controlPlane.statefulSet.args[1] | string | `"/etc/cf-vcluster/config.yaml"` | |
56+
| vcluster.controlPlane.statefulSet.persistence.addVolumeMounts[0].mountPath | string | `"/etc/cf-vcluster"` | |
57+
| vcluster.controlPlane.statefulSet.persistence.addVolumeMounts[0].name | string | `"templated-vcluster-config"` | |
58+
| vcluster.controlPlane.statefulSet.persistence.addVolumes[0].name | string | `"templated-vcluster-config"` | |
59+
| vcluster.controlPlane.statefulSet.persistence.addVolumes[0].secret.defaultMode | int | `420` | |
60+
| vcluster.controlPlane.statefulSet.persistence.addVolumes[0].secret.secretName | string | `"vc-templated-config"` | |
5261
| vcluster.experimental.deploy.vcluster.manifests | string | `"---\nkind: ClusterRoleBinding\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: oidc-cluster-admin\nroleRef:\n apiGroup: rbac.authorization.k8s.io\n kind: ClusterRole\n name: cluster-admin\nsubjects:\n- kind: Group\n name: [email protected]\n---\nkind: ClusterRoleBinding\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: oidc-cluster-admin-octopus\nroleRef:\n apiGroup: rbac.authorization.k8s.io\n kind: ClusterRole\n name: cluster-admin\nsubjects:\n- kind: Group\n name: 787d1a9a-e488-4a77-bb6c-f4b2fdfd8cea # Codefresh R&D Team\n- kind: Group\n name: 607a9f67-422c-4ca2-b8c4-d0be213b9650 # Codefresh SA Team\n- kind: Group\n name: f8de82e2-cdb6-480a-8f37-9f958ea5fef5 # Codefresh Support Team\n- kind: Group\n name: 16b3fb37-58f2-4786-8ca8-6f58d0410687 # Codefresh OSS Team\n- kind: Group\n name: dc35779f-57d5-4dff-90c0-34c6e93fe7e7 # Codefresh OSS Team\n---\napiVersion: v1\nkind: ServiceAccount\nmetadata:\n name: codefresh-pipelines-integration-cluster-admin\n namespace: kube-system\n---\napiVersion: v1\nkind: Secret\nmetadata:\n name: codefresh-pipelines-integration-cluster-admin-token\n namespace: kube-system\n annotations:\n kubernetes.io/service-account.name: codefresh-pipelines-integration-cluster-admin\ntype: kubernetes.io/service-account-token\n---\nkind: ClusterRoleBinding\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: codefresh-pipelines-integration-cluster-admin\nroleRef:\n apiGroup: rbac.authorization.k8s.io\n kind: ClusterRole\n name: cluster-admin\nsubjects:\n- kind: ServiceAccount\n name: codefresh-pipelines-integration-cluster-admin\n namespace: kube-system"` | |
5362
| vcluster.exportKubeConfig.insecure | bool | `true` | |
5463
| vcluster.exportKubeConfig.server | string | `"{{- include \"cf-vcluster.kubeconfighost\" . -}}"` | Automatically calculate and set the kubeconfig host value based on ingress settings |
5564
| vcluster.exportKubeConfig.serviceAccount.clusterRole | string | `"cluster-admin"` | |
5665
| vcluster.exportKubeConfig.serviceAccount.name | string | `"cluster-admin"` | |
66+
| vcluster.integrations.metricsServer.enabled | bool | `true` | |
67+
| vcluster.integrations.metricsServer.nodes | bool | `true` | |
68+
| vcluster.integrations.metricsServer.pods | bool | `true` | |
69+
| vcluster.plugins.prometheus-operator-resources.image | string | `"ghcr.io/codefresh-contrib/vcluster-prometheus-operator-plugin:v0.3.0"` | |
70+
| vcluster.plugins.prometheus-operator-resources.imagePullPolicy | string | `"IfNotPresent"` | |
71+
| vcluster.plugins.prometheus-operator-resources.rbac.clusterRole.extraRules[0].apiGroups[0] | string | `"apiextensions.k8s.io"` | |
72+
| vcluster.plugins.prometheus-operator-resources.rbac.clusterRole.extraRules[0].resources[0] | string | `"customresourcedefinitions"` | |
73+
| vcluster.plugins.prometheus-operator-resources.rbac.clusterRole.extraRules[0].verbs[0] | string | `"get"` | |
74+
| vcluster.plugins.prometheus-operator-resources.rbac.clusterRole.extraRules[0].verbs[1] | string | `"list"` | |
75+
| vcluster.plugins.prometheus-operator-resources.rbac.clusterRole.extraRules[0].verbs[2] | string | `"watch"` | |
76+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].apiGroups[0] | string | `"monitoring.coreos.com"` | |
77+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].resources[0] | string | `"servicemonitors"` | |
78+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].resources[1] | string | `"podmonitors"` | |
79+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[0] | string | `"create"` | |
80+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[1] | string | `"delete"` | |
81+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[2] | string | `"patch"` | |
82+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[3] | string | `"update"` | |
83+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[4] | string | `"get"` | |
84+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[5] | string | `"list"` | |
85+
| vcluster.plugins.prometheus-operator-resources.rbac.role.extraRules[0].verbs[6] | string | `"watch"` | |
5786
| vcluster.rbac.clusterRole.enabled | bool | `true` | |
5887
| vcluster.sync.fromHost.ingressClasses.enabled | bool | `true` | |
5988
| vcluster.sync.fromHost.nodes.enabled | bool | `true` | |

charts/cf-vcluster/charts/vcluster/.helmignore

Lines changed: 0 additions & 24 deletions
This file was deleted.

charts/cf-vcluster/charts/vcluster/Chart.yaml

Lines changed: 0 additions & 26 deletions
This file was deleted.

0 commit comments

Comments
 (0)