diff --git a/assets/rancher-cis-benchmark/rancher-cis-benchmark-1.0.400-rc01.tgz b/assets/rancher-cis-benchmark/rancher-cis-benchmark-1.0.400-rc01.tgz new file mode 100755 index 000000000..d429cf8ce Binary files /dev/null and b/assets/rancher-cis-benchmark/rancher-cis-benchmark-1.0.400-rc01.tgz differ diff --git a/assets/rancher-cis-benchmark/rancher-cis-benchmark-crd-1.0.400-rc01.tgz b/assets/rancher-cis-benchmark/rancher-cis-benchmark-crd-1.0.400-rc01.tgz new file mode 100755 index 000000000..81e986e04 Binary files /dev/null and b/assets/rancher-cis-benchmark/rancher-cis-benchmark-crd-1.0.400-rc01.tgz differ diff --git a/assets/rancher-operator-crd/rancher-operator-crd-0.1.400-rc02.tgz b/assets/rancher-operator-crd/rancher-operator-crd-0.1.400-rc02.tgz new file mode 100755 index 000000000..7f5ae211a Binary files /dev/null and b/assets/rancher-operator-crd/rancher-operator-crd-0.1.400-rc02.tgz differ diff --git a/assets/rancher-operator/rancher-operator-0.1.400-rc02.tgz b/assets/rancher-operator/rancher-operator-0.1.400-rc02.tgz new file mode 100755 index 000000000..42f7000c1 Binary files /dev/null and b/assets/rancher-operator/rancher-operator-0.1.400-rc02.tgz differ diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/Chart.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/Chart.yaml new file mode 100755 index 000000000..40039f9e9 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/Chart.yaml @@ -0,0 +1,10 @@ +annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: cis-operator-system + catalog.cattle.io/release-name: rancher-cis-benchmark-crd +apiVersion: v1 +description: Installs the CRDs for rancher-cis-benchmark. +name: rancher-cis-benchmark-crd +type: application +version: 1.0.400-rc01 diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/README.md b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/README.md new file mode 100755 index 000000000..f6d9ef621 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/README.md @@ -0,0 +1,2 @@ +# rancher-cis-benchmark-crd +A Rancher chart that installs the CRDs used by rancher-cis-benchmark. diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscan.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscan.yaml new file mode 100755 index 000000000..beca6e1f8 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscan.yaml @@ -0,0 +1,149 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: clusterscans.cis.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .status.lastRunScanProfileName + name: ClusterScanProfile + type: string + - JSONPath: .status.summary.total + name: Total + type: string + - JSONPath: .status.summary.pass + name: Pass + type: string + - JSONPath: .status.summary.fail + name: Fail + type: string + - JSONPath: .status.summary.skip + name: Skip + type: string + - JSONPath: .status.summary.warn + name: Warn + type: string + - JSONPath: .status.summary.notApplicable + name: Not Applicable + type: string + - JSONPath: .status.lastRunTimestamp + name: LastRunTimestamp + type: string + - JSONPath: .spec.scheduledScanConfig.cronSchedule + name: CronSchedule + type: string + group: cis.cattle.io + names: + kind: ClusterScan + plural: clusterscans + scope: Cluster + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + spec: + properties: + scanProfileName: + nullable: true + type: string + scheduledScanConfig: + nullable: true + properties: + cronSchedule: + nullable: true + type: string + retentionCount: + type: integer + scanAlertRule: + nullable: true + properties: + alertOnComplete: + type: boolean + alertOnFailure: + type: boolean + type: object + type: object + scoreWarning: + enum: + - pass + - fail + nullable: true + type: string + type: object + status: + properties: + NextScanAt: + nullable: true + type: string + ScanAlertingRuleName: + nullable: true + type: string + conditions: + items: + properties: + lastTransitionTime: + nullable: true + type: string + lastUpdateTime: + nullable: true + type: string + message: + nullable: true + type: string + reason: + nullable: true + type: string + status: + nullable: true + type: string + type: + nullable: true + type: string + type: object + nullable: true + type: array + display: + nullable: true + properties: + error: + type: boolean + message: + nullable: true + type: string + state: + nullable: true + type: string + transitioning: + type: boolean + type: object + lastRunScanProfileName: + nullable: true + type: string + lastRunTimestamp: + nullable: true + type: string + observedGeneration: + type: integer + summary: + nullable: true + properties: + fail: + type: integer + notApplicable: + type: integer + pass: + type: integer + skip: + type: integer + total: + type: integer + warn: + type: integer + type: object + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanbenchmark.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanbenchmark.yaml new file mode 100755 index 000000000..aa6fc2218 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanbenchmark.yaml @@ -0,0 +1,55 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: clusterscanbenchmarks.cis.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .spec.clusterProvider + name: ClusterProvider + type: string + - JSONPath: .spec.minKubernetesVersion + name: MinKubernetesVersion + type: string + - JSONPath: .spec.maxKubernetesVersion + name: MaxKubernetesVersion + type: string + - JSONPath: .spec.customBenchmarkConfigMapName + name: customBenchmarkConfigMapName + type: string + - JSONPath: .spec.customBenchmarkConfigMapNamespace + name: customBenchmarkConfigMapNamespace + type: string + group: cis.cattle.io + names: + kind: ClusterScanBenchmark + plural: clusterscanbenchmarks + scope: Cluster + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + spec: + properties: + clusterProvider: + nullable: true + type: string + customBenchmarkConfigMapName: + nullable: true + type: string + customBenchmarkConfigMapNamespace: + nullable: true + type: string + maxKubernetesVersion: + nullable: true + type: string + minKubernetesVersion: + nullable: true + type: string + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanprofile.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanprofile.yaml new file mode 100755 index 000000000..21bb68396 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanprofile.yaml @@ -0,0 +1,37 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: clusterscanprofiles.cis.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .spec.benchmarkVersion + name: BenchmarkVersion + type: string + group: cis.cattle.io + names: + kind: ClusterScanProfile + plural: clusterscanprofiles + scope: Cluster + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + spec: + properties: + benchmarkVersion: + nullable: true + type: string + skipTests: + items: + nullable: true + type: string + nullable: true + type: array + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanreport.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanreport.yaml new file mode 100755 index 000000000..017020a95 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark-crd/1.0.400-rc01/templates/clusterscanreport.yaml @@ -0,0 +1,40 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: clusterscanreports.cis.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .spec.lastRunTimestamp + name: LastRunTimestamp + type: string + - JSONPath: .spec.benchmarkVersion + name: BenchmarkVersion + type: string + group: cis.cattle.io + names: + kind: ClusterScanReport + plural: clusterscanreports + scope: Cluster + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + spec: + properties: + benchmarkVersion: + nullable: true + type: string + lastRunTimestamp: + nullable: true + type: string + reportJSON: + nullable: true + type: string + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/Chart.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/Chart.yaml new file mode 100755 index 000000000..e2589187b --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/Chart.yaml @@ -0,0 +1,18 @@ +annotations: + catalog.cattle.io/auto-install: rancher-cis-benchmark-crd=match + catalog.cattle.io/certified: rancher + catalog.cattle.io/display-name: CIS Benchmark + catalog.cattle.io/namespace: cis-operator-system + catalog.cattle.io/os: linux + catalog.cattle.io/provides-gvr: cis.cattle.io.clusterscans/v1 + catalog.cattle.io/release-name: rancher-cis-benchmark + catalog.cattle.io/ui-component: rancher-cis-benchmark +apiVersion: v1 +appVersion: v1.0.4 +description: The cis-operator enables running CIS benchmark security scans on a kubernetes + cluster +icon: https://charts.rancher.io/assets/logos/cis-kube-bench.svg +keywords: +- security +name: rancher-cis-benchmark +version: 1.0.400-rc01 diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/README.md b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/README.md new file mode 100755 index 000000000..50beab58b --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/README.md @@ -0,0 +1,9 @@ +# Rancher CIS Benchmark Chart + +The cis-operator enables running CIS benchmark security scans on a kubernetes cluster and generate compliance reports that can be downloaded. + +# Installation + +``` +helm install rancher-cis-benchmark ./ --create-namespace -n cis-operator-system +``` diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/app-readme.md b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/app-readme.md new file mode 100755 index 000000000..5e495d605 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/app-readme.md @@ -0,0 +1,15 @@ +# Rancher CIS Benchmarks + +This chart enables security scanning of the cluster using [CIS (Center for Internet Security) benchmarks](https://www.cisecurity.org/benchmark/kubernetes/). + +For more information on how to use the feature, refer to our [docs](https://rancher.com/docs/rancher/v2.x/en/cis-scans/v2.5/). + +This chart installs the following components: + +- [cis-operator](https://github.com/rancher/cis-operator) - The cis-operator handles launching the [kube-bench](https://github.com/aquasecurity/kube-bench) tool that runs a suite of CIS tests on the nodes of your Kubernetes cluster. After scans finish, the cis-operator generates a compliance report that can be downloaded. +- Scans - A scan is a CRD (`ClusterScan`) that defines when to trigger CIS scans on the cluster based on the defined profile. A report is created after the scan is completed. +- Profiles - A profile is a CRD (`ClusterScanProfile`) that defines the configuration for the CIS scan, which is the benchmark versions to use and any specific tests to skip in that benchmark. This chart installs a few default `ClusterScanProfile` custom resources with no skipped tests, which can immediately be used to launch CIS scans. +- Benchmark Versions - A benchmark version is a CRD (`ClusterScanBenchmark`) that defines the CIS benchmark version to run using kube-bench as well as the valid configuration parameters for that benchmark. This chart installs a few default `ClusterScanBenchmark` custom resources. +- Alerting Resources - Rancher's CIS Benchmark application lets you run a cluster scan on a schedule, and send alerts when scans finish. + - If you want to enable alerts to be delivered when a cluster scan completes, you need to ensure that [Rancher's Monitoring and Alerting](https://rancher.com/docs/rancher/v2.x/en/monitoring-alerting/v2.5/) application is pre-installed and the [Receivers and Routes](https://rancher.com/docs/rancher/v2.x/en/monitoring-alerting/v2.5/configuration/#alertmanager-config) are configured to send out alerts. + - Additionally, you need to set `alerts: true` in the Values YAML while installing or upgrading this chart. diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/_helpers.tpl b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/_helpers.tpl new file mode 100755 index 000000000..67f4ce116 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/_helpers.tpl @@ -0,0 +1,23 @@ +{{/* Ensure namespace is set the same everywhere */}} +{{- define "cis.namespace" -}} + {{- .Release.Namespace | default "cis-operator-system" -}} +{{- end -}} + +{{- define "system_default_registry" -}} +{{- if .Values.global.cattle.systemDefaultRegistry -}} +{{- printf "%s/" .Values.global.cattle.systemDefaultRegistry -}} +{{- else -}} +{{- "" -}} +{{- end -}} +{{- end -}} + +{{/* +Windows cluster will add default taint for linux nodes, +add below linux tolerations to workloads could be scheduled to those linux nodes +*/}} +{{- define "linux_node_tolerations" -}} +- key: "cattle.io/os" + value: "linux" + effect: "NoSchedule" + operator: "Equal" +{{- end -}} diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/alertingrule.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/alertingrule.yaml new file mode 100755 index 000000000..1787c88a0 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/alertingrule.yaml @@ -0,0 +1,14 @@ +{{- if .Values.alerts.enabled -}} +--- +apiVersion: monitoring.coreos.com/v1 +kind: PodMonitor +metadata: + name: rancher-cis-pod-monitor + namespace: {{ template "cis.namespace" . }} +spec: + selector: + matchLabels: + cis.cattle.io/operator: cis-operator + podMetricsEndpoints: + - port: cismetrics +{{- end }} diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-cis-1.5.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-cis-1.5.yaml new file mode 100755 index 000000000..39e8b834a --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-cis-1.5.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: cis-1.5 +spec: + clusterProvider: "" + minKubernetesVersion: "1.15.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-cis-1.6.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-cis-1.6.yaml new file mode 100755 index 000000000..93ba064f4 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-cis-1.6.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: cis-1.6 +spec: + clusterProvider: "" + minKubernetesVersion: "1.16.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-eks-1.0.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-eks-1.0.yaml new file mode 100755 index 000000000..bd2e32cd3 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-eks-1.0.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: eks-1.0 +spec: + clusterProvider: eks + minKubernetesVersion: "1.15.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-gke-1.0.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-gke-1.0.yaml new file mode 100755 index 000000000..72122e8c5 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-gke-1.0.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: gke-1.0 +spec: + clusterProvider: gke + minKubernetesVersion: "1.15.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.5-hardened.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.5-hardened.yaml new file mode 100755 index 000000000..b5627f966 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.5-hardened.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: rke-cis-1.5-hardened +spec: + clusterProvider: rke + minKubernetesVersion: "1.15.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.5-permissive.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.5-permissive.yaml new file mode 100755 index 000000000..95f80c0f0 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.5-permissive.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: rke-cis-1.5-permissive +spec: + clusterProvider: rke + minKubernetesVersion: "1.15.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.6-hardened.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.6-hardened.yaml new file mode 100755 index 000000000..d75de8154 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.6-hardened.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: rke-cis-1.6-hardened +spec: + clusterProvider: rke + minKubernetesVersion: "1.16.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.6-permissive.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.6-permissive.yaml new file mode 100755 index 000000000..52428f4a7 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke-cis-1.6-permissive.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: rke-cis-1.6-permissive +spec: + clusterProvider: rke + minKubernetesVersion: "1.16.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke2-cis-1.5-hardened.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke2-cis-1.5-hardened.yaml new file mode 100755 index 000000000..3d83e9bd8 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke2-cis-1.5-hardened.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: rke2-cis-1.5-hardened +spec: + clusterProvider: rke2 + minKubernetesVersion: "1.18.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke2-cis-1.5-permissive.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke2-cis-1.5-permissive.yaml new file mode 100755 index 000000000..f66aa8f6e --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/benchmark-rke2-cis-1.5-permissive.yaml @@ -0,0 +1,8 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanBenchmark +metadata: + name: rke2-cis-1.5-permissive +spec: + clusterProvider: rke2 + minKubernetesVersion: "1.18.0" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/cis-roles.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/cis-roles.yaml new file mode 100755 index 000000000..23c93dc65 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/cis-roles.yaml @@ -0,0 +1,49 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: cis-admin +rules: + - apiGroups: + - cis.cattle.io + resources: + - clusterscanbenchmarks + - clusterscanprofiles + - clusterscans + - clusterscanreports + verbs: ["create", "update", "delete", "patch","get", "watch", "list"] + - apiGroups: + - catalog.cattle.io + resources: ["apps"] + resourceNames: ["rancher-cis-benchmark"] + verbs: ["get", "watch", "list"] + - apiGroups: + - "" + resources: + - configmaps + verbs: + - '*' +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: cis-view +rules: + - apiGroups: + - cis.cattle.io + resources: + - clusterscanbenchmarks + - clusterscanprofiles + - clusterscans + - clusterscanreports + verbs: ["get", "watch", "list"] + - apiGroups: + - catalog.cattle.io + resources: ["apps"] + resourceNames: ["rancher-cis-benchmark"] + verbs: ["get", "watch", "list"] + - apiGroups: + - "" + resources: + - configmaps + verbs: ["get", "watch", "list"] diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/configmap.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/configmap.yaml new file mode 100755 index 000000000..16e43f576 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/configmap.yaml @@ -0,0 +1,14 @@ +kind: ConfigMap +apiVersion: v1 +metadata: + name: default-clusterscanprofiles + namespace: {{ template "cis.namespace" . }} +data: + # Default ClusterScanProfiles per cluster provider type + rke: |- + <1.16.0: rke-profile-permissive-1.5 + >=1.16.0: rke-profile-permissive-1.6 + rke2: "rke2-cis-1.5-profile-permissive" + eks: "eks-profile" + gke: "gke-profile" + default: "cis-1.6-profile" diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/deployment.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/deployment.yaml new file mode 100755 index 000000000..0d3c75e39 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/deployment.yaml @@ -0,0 +1,57 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cis-operator + namespace: {{ template "cis.namespace" . }} + labels: + cis.cattle.io/operator: cis-operator +spec: + selector: + matchLabels: + cis.cattle.io/operator: cis-operator + template: + metadata: + labels: + cis.cattle.io/operator: cis-operator + spec: + serviceAccountName: cis-operator-serviceaccount + containers: + - name: cis-operator + image: '{{ template "system_default_registry" . }}{{ .Values.image.cisoperator.repository }}:{{ .Values.image.cisoperator.tag }}' + imagePullPolicy: Always + ports: + - name: cismetrics + containerPort: {{ .Values.alerts.metricsPort }} + env: + - name: SECURITY_SCAN_IMAGE + value: {{ template "system_default_registry" . }}{{ .Values.image.securityScan.repository }} + - name: SECURITY_SCAN_IMAGE_TAG + value: {{ .Values.image.securityScan.tag }} + - name: SONOBUOY_IMAGE + value: {{ template "system_default_registry" . }}{{ .Values.image.sonobuoy.repository }} + - name: SONOBUOY_IMAGE_TAG + value: {{ .Values.image.sonobuoy.tag }} + - name: CIS_ALERTS_METRICS_PORT + value: '{{ .Values.alerts.metricsPort }}' + - name: CIS_ALERTS_SEVERITY + value: {{ .Values.alerts.severity }} + - name: CIS_ALERTS_ENABLED + value: {{ .Values.alerts.enabled | default "false" | quote }} + - name: CLUSTER_NAME + value: {{ .Values.global.cattle.clusterName }} + resources: + {{- toYaml .Values.resources | nindent 12 }} + nodeSelector: + kubernetes.io/os: linux + {{- with .Values.nodeSelector }} + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + tolerations: + {{- include "linux_node_tolerations" . | nindent 8}} + {{- with .Values.tolerations }} + {{- toYaml . | nindent 8 }} + {{- end }} \ No newline at end of file diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/network_policy_allow_all.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/network_policy_allow_all.yaml new file mode 100755 index 000000000..6ed5d645e --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/network_policy_allow_all.yaml @@ -0,0 +1,15 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: default-allow-all + namespace: {{ template "cis.namespace" . }} +spec: + podSelector: {} + ingress: + - {} + egress: + - {} + policyTypes: + - Ingress + - Egress diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/patch_default_serviceaccount.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/patch_default_serviceaccount.yaml new file mode 100755 index 000000000..1efa3ed1c --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/patch_default_serviceaccount.yaml @@ -0,0 +1,20 @@ +--- +apiVersion: batch/v1 +kind: Job +metadata: + name: patch-sa + annotations: + "helm.sh/hook": post-install, post-upgrade + "helm.sh/hook-delete-policy": hook-succeeded, before-hook-creation +spec: + template: + spec: + serviceAccountName: cis-operator-serviceaccount + restartPolicy: Never + containers: + - name: sa + image: "{{ template "system_default_registry" . }}{{ .Values.global.kubectl.repository }}:{{ .Values.global.kubectl.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy }} + command: ["kubectl", "patch", "serviceaccount", "default", "-p", "{\"automountServiceAccountToken\": false}"] + args: ["-n", {{ template "cis.namespace" . }}] + backoffLimit: 1 diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/rbac.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/rbac.yaml new file mode 100755 index 000000000..816991f23 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/rbac.yaml @@ -0,0 +1,43 @@ +apiVersion: rbac.authorization.k8s.io/v1beta1 +kind: ClusterRole +metadata: + labels: + app.kubernetes.io/name: rancher-cis-benchmark + app.kubernetes.io/instance: release-name + name: cis-operator-role +rules: +- apiGroups: + - '*' + resources: + - '*' + verbs: + - '*' +--- +apiVersion: rbac.authorization.k8s.io/v1beta1 +kind: ClusterRoleBinding +metadata: + labels: + app.kubernetes.io/name: rancher-cis-benchmark + app.kubernetes.io/instance: release-name + name: cis-operator-rolebinding +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: cis-operator-role +subjects: +- kind: ServiceAccount + name: cis-serviceaccount + namespace: {{ template "cis.namespace" . }} +--- +kind: ClusterRoleBinding +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: cis-operator-installer +subjects: +- kind: ServiceAccount + name: cis-operator-serviceaccount + namespace: {{ template "cis.namespace" . }} +roleRef: + kind: ClusterRole + name: cluster-admin + apiGroup: rbac.authorization.k8s.io \ No newline at end of file diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-cis-1.5.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-cis-1.5.yml new file mode 100755 index 000000000..d69ae9dd5 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-cis-1.5.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: cis-1.5-profile + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: cis-1.5 diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-cis-1.6.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-cis-1.6.yaml new file mode 100755 index 000000000..8a8d8bf88 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-cis-1.6.yaml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: cis-1.6-profile + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: cis-1.6 diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.5-hardened.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.5-hardened.yml new file mode 100755 index 000000000..4eabe158a --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.5-hardened.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: rke-profile-hardened-1.5 + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: rke-cis-1.5-hardened \ No newline at end of file diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.5-permissive.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.5-permissive.yml new file mode 100755 index 000000000..1f78751d1 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.5-permissive.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: rke-profile-permissive-1.5 + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: rke-cis-1.5-permissive diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.6-hardened.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.6-hardened.yaml new file mode 100755 index 000000000..d38febd80 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.6-hardened.yaml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: rke-profile-hardened-1.6 + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: rke-cis-1.6-hardened diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.6-permissive.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.6-permissive.yaml new file mode 100755 index 000000000..d31b5b0d2 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke-1.6-permissive.yaml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: rke-profile-permissive-1.6 + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: rke-cis-1.6-permissive diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke2-cis-1.5-hardened.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke2-cis-1.5-hardened.yml new file mode 100755 index 000000000..83eb3131e --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke2-cis-1.5-hardened.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: rke2-cis-1.5-profile-hardened + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: rke2-cis-1.5-hardened diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke2-cis-1.5-permissive.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke2-cis-1.5-permissive.yml new file mode 100755 index 000000000..40dc44bdf --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofile-rke2-cis-1.5-permissive.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: rke2-cis-1.5-profile-permissive + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: rke2-cis-1.5-permissive diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofileeks.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofileeks.yml new file mode 100755 index 000000000..49c7e0246 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofileeks.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: eks-profile + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: eks-1.0 \ No newline at end of file diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofilegke.yml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofilegke.yml new file mode 100755 index 000000000..2ddd0686f --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/scanprofilegke.yml @@ -0,0 +1,9 @@ +--- +apiVersion: cis.cattle.io/v1 +kind: ClusterScanProfile +metadata: + name: gke-profile + annotations: + clusterscanprofile.cis.cattle.io/builtin: "true" +spec: + benchmarkVersion: gke-1.0 \ No newline at end of file diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/serviceaccount.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/serviceaccount.yaml new file mode 100755 index 000000000..ec48ec622 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/serviceaccount.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + namespace: {{ template "cis.namespace" . }} + name: cis-operator-serviceaccount +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + namespace: {{ template "cis.namespace" . }} + labels: + app.kubernetes.io/name: rancher-cis-benchmark + app.kubernetes.io/instance: release-name + name: cis-serviceaccount diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/validate-install-crd.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/validate-install-crd.yaml new file mode 100755 index 000000000..562295791 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/templates/validate-install-crd.yaml @@ -0,0 +1,17 @@ +#{{- if gt (len (lookup "rbac.authorization.k8s.io/v1" "ClusterRole" "" "")) 0 -}} +# {{- $found := dict -}} +# {{- set $found "cis.cattle.io/v1/ClusterScan" false -}} +# {{- set $found "cis.cattle.io/v1/ClusterScanBenchmark" false -}} +# {{- set $found "cis.cattle.io/v1/ClusterScanProfile" false -}} +# {{- set $found "cis.cattle.io/v1/ClusterScanReport" false -}} +# {{- range .Capabilities.APIVersions -}} +# {{- if hasKey $found (toString .) -}} +# {{- set $found (toString .) true -}} +# {{- end -}} +# {{- end -}} +# {{- range $_, $exists := $found -}} +# {{- if (eq $exists false) -}} +# {{- required "Required CRDs are missing. Please install the corresponding CRD chart before installing this chart." "" -}} +# {{- end -}} +# {{- end -}} +#{{- end -}} \ No newline at end of file diff --git a/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/values.yaml b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/values.yaml new file mode 100755 index 000000000..afbbe89c3 --- /dev/null +++ b/charts/rancher-cis-benchmark/rancher-cis-benchmark/1.0.400-rc01/values.yaml @@ -0,0 +1,45 @@ +# Default values for rancher-cis-benchmark. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +image: + cisoperator: + repository: rancher/cis-operator + tag: v1.0.4-rc1 + securityScan: + repository: rancher/security-scan + tag: v0.2.2 + sonobuoy: + repository: rancher/mirrored-sonobuoy-sonobuoy + tag: v0.16.3 + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +global: + cattle: + systemDefaultRegistry: "" + clusterName: "" + kubectl: + repository: rancher/kubectl + tag: v1.20.2 + +alerts: + enabled: false + severity: warning + metricsPort: 8080 diff --git a/charts/rancher-operator-crd/rancher-operator-crd/0.1.400-rc02/Chart.yaml b/charts/rancher-operator-crd/rancher-operator-crd/0.1.400-rc02/Chart.yaml new file mode 100755 index 000000000..372c3d213 --- /dev/null +++ b/charts/rancher-operator-crd/rancher-operator-crd/0.1.400-rc02/Chart.yaml @@ -0,0 +1,11 @@ +annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: rancher-operator-system + catalog.cattle.io/os: linux + catalog.cattle.io/release-name: rancher-operator-crd +apiVersion: v2 +appVersion: 0.1.4 +description: Rancher Operator CustomResourceDefinitions +name: rancher-operator-crd +version: 0.1.400-rc02 diff --git a/charts/rancher-operator-crd/rancher-operator-crd/0.1.400-rc02/templates/crds.yaml b/charts/rancher-operator-crd/rancher-operator-crd/0.1.400-rc02/templates/crds.yaml new file mode 100755 index 000000000..127e8d4ef --- /dev/null +++ b/charts/rancher-operator-crd/rancher-operator-crd/0.1.400-rc02/templates/crds.yaml @@ -0,0 +1,3302 @@ +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: clusters.rancher.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .status.ready + name: Ready + type: string + - JSONPath: .status.clientSecretName + name: Kubeconfig + type: string + group: rancher.cattle.io + names: + kind: Cluster + plural: clusters + scope: Namespaced + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + spec: + properties: + controlPlaneEndpoint: + nullable: true + properties: + host: + nullable: true + type: string + port: + type: integer + type: object + eksConfig: + nullable: true + properties: + amazonCredentialSecret: + nullable: true + type: string + displayName: + nullable: true + type: string + imported: + type: boolean + kmsKey: + nullable: true + type: string + kubernetesVersion: + nullable: true + type: string + loggingTypes: + items: + nullable: true + type: string + nullable: true + type: array + nodeGroups: + items: + properties: + desiredSize: + nullable: true + type: integer + diskSize: + nullable: true + type: integer + ec2SshKey: + nullable: true + type: string + gpu: + nullable: true + type: boolean + imageId: + nullable: true + type: string + instanceType: + nullable: true + type: string + labels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + launchTemplate: + nullable: true + properties: + id: + nullable: true + type: string + name: + nullable: true + type: string + version: + nullable: true + type: integer + type: object + maxSize: + nullable: true + type: integer + minSize: + nullable: true + type: integer + nodegroupName: + nullable: true + type: string + requestSpotInstances: + nullable: true + type: boolean + resourceTags: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + spotInstanceTypes: + items: + nullable: true + type: string + nullable: true + type: array + subnets: + items: + nullable: true + type: string + nullable: true + type: array + tags: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + userData: + nullable: true + type: string + version: + nullable: true + type: string + type: object + nullable: true + type: array + privateAccess: + nullable: true + type: boolean + publicAccess: + nullable: true + type: boolean + publicAccessSources: + items: + nullable: true + type: string + nullable: true + type: array + region: + nullable: true + type: string + secretsEncryption: + nullable: true + type: boolean + securityGroups: + items: + nullable: true + type: string + nullable: true + type: array + serviceRole: + nullable: true + type: string + subnets: + items: + nullable: true + type: string + nullable: true + type: array + tags: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + importedConfig: + nullable: true + properties: + kubeConfigSecret: + nullable: true + type: string + type: object + k3sConfig: + nullable: true + properties: + k3supgradeStrategy: + properties: + drainServerNodes: + type: boolean + drainWorkerNodes: + type: boolean + serverConcurrency: + type: integer + workerConcurrency: + type: integer + type: object + kubernetesVersion: + nullable: true + type: string + type: object + localClusterAuthEndpoint: + properties: + caCerts: + nullable: true + type: string + enabled: + type: boolean + fqdn: + nullable: true + type: string + type: object + rancherKubernetesEngineConfig: + nullable: true + properties: + addonJobTimeout: + type: integer + addons: + nullable: true + type: string + addonsInclude: + items: + nullable: true + type: string + nullable: true + type: array + authentication: + properties: + sans: + items: + nullable: true + type: string + nullable: true + type: array + strategy: + nullable: true + type: string + webhook: + nullable: true + properties: + cacheTimeout: + nullable: true + type: string + configFile: + nullable: true + type: string + type: object + type: object + authorization: + properties: + mode: + nullable: true + type: string + options: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + bastionHost: + properties: + address: + nullable: true + type: string + port: + nullable: true + type: string + sshAgentAuth: + type: boolean + sshCert: + nullable: true + type: string + sshCertPath: + nullable: true + type: string + sshKey: + nullable: true + type: string + sshKeyPath: + nullable: true + type: string + user: + nullable: true + type: string + type: object + cloudProvider: + properties: + awsCloudProvider: + nullable: true + properties: + global: + properties: + disable-security-group-ingress: + type: boolean + disable-strict-zone-check: + type: boolean + elb-security-group: + nullable: true + type: string + kubernetes-cluster-id: + nullable: true + type: string + kubernetes-cluster-tag: + nullable: true + type: string + role-arn: + nullable: true + type: string + routetable-id: + nullable: true + type: string + subnet-id: + nullable: true + type: string + vpc: + nullable: true + type: string + zone: + nullable: true + type: string + type: object + serviceOverride: + nullable: true + type: object + type: object + azureCloudProvider: + nullable: true + properties: + aadClientCertPassword: + nullable: true + type: string + aadClientCertPath: + nullable: true + type: string + aadClientId: + nullable: true + type: string + aadClientSecret: + nullable: true + type: string + cloud: + nullable: true + type: string + cloudProviderBackoff: + type: boolean + cloudProviderBackoffDuration: + type: integer + cloudProviderBackoffExponent: + type: integer + cloudProviderBackoffJitter: + type: integer + cloudProviderBackoffRetries: + type: integer + cloudProviderRateLimit: + type: boolean + cloudProviderRateLimitBucket: + type: integer + cloudProviderRateLimitQPS: + type: integer + excludeMasterFromStandardLB: + nullable: true + type: boolean + loadBalancerSku: + nullable: true + type: string + location: + nullable: true + type: string + maximumLoadBalancerRuleCount: + type: integer + primaryAvailabilitySetName: + nullable: true + type: string + primaryScaleSetName: + nullable: true + type: string + resourceGroup: + nullable: true + type: string + routeTableName: + nullable: true + type: string + securityGroupName: + nullable: true + type: string + subnetName: + nullable: true + type: string + subscriptionId: + nullable: true + type: string + tenantId: + nullable: true + type: string + useInstanceMetadata: + type: boolean + useManagedIdentityExtension: + type: boolean + userAssignedIdentityID: + nullable: true + type: string + vmType: + nullable: true + type: string + vnetName: + nullable: true + type: string + vnetResourceGroup: + nullable: true + type: string + type: object + customCloudProvider: + nullable: true + type: string + name: + nullable: true + type: string + openstackCloudProvider: + nullable: true + properties: + blockStorage: + properties: + bs-version: + nullable: true + type: string + ignore-volume-az: + type: boolean + trust-device-path: + type: boolean + type: object + global: + properties: + auth-url: + nullable: true + type: string + ca-file: + nullable: true + type: string + domain-id: + nullable: true + type: string + domain-name: + nullable: true + type: string + password: + nullable: true + type: string + region: + nullable: true + type: string + tenant-id: + nullable: true + type: string + tenant-name: + nullable: true + type: string + trust-id: + nullable: true + type: string + user-id: + nullable: true + type: string + username: + nullable: true + type: string + type: object + loadBalancer: + properties: + create-monitor: + type: boolean + floating-network-id: + nullable: true + type: string + lb-method: + nullable: true + type: string + lb-provider: + nullable: true + type: string + lb-version: + nullable: true + type: string + manage-security-groups: + type: boolean + monitor-delay: + nullable: true + type: string + monitor-max-retries: + type: integer + monitor-timeout: + nullable: true + type: string + subnet-id: + nullable: true + type: string + use-octavia: + type: boolean + type: object + metadata: + properties: + request-timeout: + type: integer + search-order: + nullable: true + type: string + type: object + route: + properties: + router-id: + nullable: true + type: string + type: object + type: object + vsphereCloudProvider: + nullable: true + properties: + disk: + properties: + scsicontrollertype: + nullable: true + type: string + type: object + global: + properties: + datacenter: + nullable: true + type: string + datacenters: + nullable: true + type: string + datastore: + nullable: true + type: string + insecure-flag: + type: boolean + password: + nullable: true + type: string + port: + nullable: true + type: string + server: + nullable: true + type: string + soap-roundtrip-count: + type: integer + user: + nullable: true + type: string + vm-name: + nullable: true + type: string + vm-uuid: + nullable: true + type: string + working-dir: + nullable: true + type: string + type: object + network: + properties: + public-network: + nullable: true + type: string + type: object + virtualCenter: + nullable: true + type: object + workspace: + properties: + datacenter: + nullable: true + type: string + default-datastore: + nullable: true + type: string + folder: + nullable: true + type: string + resourcepool-path: + nullable: true + type: string + server: + nullable: true + type: string + type: object + type: object + type: object + clusterName: + nullable: true + type: string + dns: + nullable: true + properties: + linearAutoscalerParams: + nullable: true + properties: + coresPerReplica: + type: number + max: + type: integer + min: + type: integer + nodesPerReplica: + type: number + preventSinglePointFailure: + type: boolean + type: object + nodeSelector: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + nodelocal: + nullable: true + properties: + ipAddress: + nullable: true + type: string + nodeLocalDnsPriorityClassName: + nullable: true + type: string + nodeSelector: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + updateStrategy: + nullable: true + properties: + rollingUpdate: + nullable: true + properties: + maxUnavailable: + nullable: true + type: string + type: object + strategy: + nullable: true + type: string + type: object + type: object + options: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + provider: + nullable: true + type: string + reversecidrs: + items: + nullable: true + type: string + nullable: true + type: array + stubdomains: + additionalProperties: + items: + nullable: true + type: string + nullable: true + type: array + nullable: true + type: object + tolerations: + items: + properties: + effect: + nullable: true + type: string + key: + nullable: true + type: string + operator: + nullable: true + type: string + tolerationSeconds: + nullable: true + type: integer + value: + nullable: true + type: string + type: object + nullable: true + type: array + updateStrategy: + nullable: true + properties: + rollingUpdate: + nullable: true + properties: + maxSurge: + nullable: true + type: string + maxUnavailable: + nullable: true + type: string + type: object + strategy: + nullable: true + type: string + type: object + upstreamnameservers: + items: + nullable: true + type: string + nullable: true + type: array + type: object + ignoreDockerVersion: + nullable: true + type: boolean + ingress: + properties: + defaultBackend: + nullable: true + type: boolean + defaultHttpBackendPriorityClassName: + nullable: true + type: string + dnsPolicy: + nullable: true + type: string + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraEnvs: + items: + properties: + name: + nullable: true + type: string + value: + nullable: true + type: string + valueFrom: + nullable: true + properties: + configMapKeyRef: + nullable: true + properties: + key: + nullable: true + type: string + name: + nullable: true + type: string + optional: + nullable: true + type: boolean + type: object + fieldRef: + nullable: true + properties: + apiVersion: + nullable: true + type: string + fieldPath: + nullable: true + type: string + type: object + resourceFieldRef: + nullable: true + properties: + containerName: + nullable: true + type: string + divisor: + nullable: true + type: string + resource: + nullable: true + type: string + type: object + secretKeyRef: + nullable: true + properties: + key: + nullable: true + type: string + name: + nullable: true + type: string + optional: + nullable: true + type: boolean + type: object + type: object + type: object + nullable: true + type: array + extraVolumeMounts: + items: + properties: + mountPath: + nullable: true + type: string + mountPropagation: + nullable: true + type: string + name: + nullable: true + type: string + readOnly: + type: boolean + subPath: + nullable: true + type: string + subPathExpr: + nullable: true + type: string + type: object + nullable: true + type: array + extraVolumes: + items: + properties: + awsElasticBlockStore: + nullable: true + properties: + fsType: + nullable: true + type: string + partition: + type: integer + readOnly: + type: boolean + volumeID: + nullable: true + type: string + type: object + azureDisk: + nullable: true + properties: + cachingMode: + nullable: true + type: string + diskName: + nullable: true + type: string + diskURI: + nullable: true + type: string + fsType: + nullable: true + type: string + kind: + nullable: true + type: string + readOnly: + nullable: true + type: boolean + type: object + azureFile: + nullable: true + properties: + readOnly: + type: boolean + secretName: + nullable: true + type: string + shareName: + nullable: true + type: string + type: object + cephfs: + nullable: true + properties: + monitors: + items: + nullable: true + type: string + nullable: true + type: array + path: + nullable: true + type: string + readOnly: + type: boolean + secretFile: + nullable: true + type: string + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + user: + nullable: true + type: string + type: object + cinder: + nullable: true + properties: + fsType: + nullable: true + type: string + readOnly: + type: boolean + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + volumeID: + nullable: true + type: string + type: object + configMap: + nullable: true + properties: + defaultMode: + nullable: true + type: integer + items: + items: + properties: + key: + nullable: true + type: string + mode: + nullable: true + type: integer + path: + nullable: true + type: string + type: object + nullable: true + type: array + name: + nullable: true + type: string + optional: + nullable: true + type: boolean + type: object + csi: + nullable: true + properties: + driver: + nullable: true + type: string + fsType: + nullable: true + type: string + nodePublishSecretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + readOnly: + nullable: true + type: boolean + volumeAttributes: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + downwardAPI: + nullable: true + properties: + defaultMode: + nullable: true + type: integer + items: + items: + properties: + fieldRef: + nullable: true + properties: + apiVersion: + nullable: true + type: string + fieldPath: + nullable: true + type: string + type: object + mode: + nullable: true + type: integer + path: + nullable: true + type: string + resourceFieldRef: + nullable: true + properties: + containerName: + nullable: true + type: string + divisor: + nullable: true + type: string + resource: + nullable: true + type: string + type: object + type: object + nullable: true + type: array + type: object + emptyDir: + nullable: true + properties: + medium: + nullable: true + type: string + sizeLimit: + nullable: true + type: string + type: object + ephemeral: + nullable: true + properties: + readOnly: + type: boolean + volumeClaimTemplate: + nullable: true + properties: + metadata: + properties: + annotations: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + clusterName: + nullable: true + type: string + creationTimestamp: + nullable: true + type: string + deletionGracePeriodSeconds: + nullable: true + type: integer + deletionTimestamp: + nullable: true + type: string + finalizers: + items: + nullable: true + type: string + nullable: true + type: array + generateName: + nullable: true + type: string + generation: + type: integer + labels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + managedFields: + items: + properties: + apiVersion: + nullable: true + type: string + fieldsType: + nullable: true + type: string + fieldsV1: + nullable: true + type: object + manager: + nullable: true + type: string + operation: + nullable: true + type: string + time: + nullable: true + type: string + type: object + nullable: true + type: array + name: + nullable: true + type: string + namespace: + nullable: true + type: string + ownerReferences: + items: + properties: + apiVersion: + nullable: true + type: string + blockOwnerDeletion: + nullable: true + type: boolean + controller: + nullable: true + type: boolean + kind: + nullable: true + type: string + name: + nullable: true + type: string + uid: + nullable: true + type: string + type: object + nullable: true + type: array + resourceVersion: + nullable: true + type: string + selfLink: + nullable: true + type: string + uid: + nullable: true + type: string + type: object + spec: + properties: + accessModes: + items: + nullable: true + type: string + nullable: true + type: array + dataSource: + nullable: true + properties: + apiGroup: + nullable: true + type: string + kind: + nullable: true + type: string + name: + nullable: true + type: string + type: object + resources: + properties: + limits: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + requests: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + selector: + nullable: true + properties: + matchExpressions: + items: + properties: + key: + nullable: true + type: string + operator: + nullable: true + type: string + values: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + matchLabels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + storageClassName: + nullable: true + type: string + volumeMode: + nullable: true + type: string + volumeName: + nullable: true + type: string + type: object + type: object + type: object + fc: + nullable: true + properties: + fsType: + nullable: true + type: string + lun: + nullable: true + type: integer + readOnly: + type: boolean + targetWWNs: + items: + nullable: true + type: string + nullable: true + type: array + wwids: + items: + nullable: true + type: string + nullable: true + type: array + type: object + flexVolume: + nullable: true + properties: + driver: + nullable: true + type: string + fsType: + nullable: true + type: string + options: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + readOnly: + type: boolean + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + type: object + flocker: + nullable: true + properties: + datasetName: + nullable: true + type: string + datasetUUID: + nullable: true + type: string + type: object + gcePersistentDisk: + nullable: true + properties: + fsType: + nullable: true + type: string + partition: + type: integer + pdName: + nullable: true + type: string + readOnly: + type: boolean + type: object + gitRepo: + nullable: true + properties: + directory: + nullable: true + type: string + repository: + nullable: true + type: string + revision: + nullable: true + type: string + type: object + glusterfs: + nullable: true + properties: + endpoints: + nullable: true + type: string + path: + nullable: true + type: string + readOnly: + type: boolean + type: object + hostPath: + nullable: true + properties: + path: + nullable: true + type: string + type: + nullable: true + type: string + type: object + iscsi: + nullable: true + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + nullable: true + type: string + initiatorName: + nullable: true + type: string + iqn: + nullable: true + type: string + iscsiInterface: + nullable: true + type: string + lun: + type: integer + portals: + items: + nullable: true + type: string + nullable: true + type: array + readOnly: + type: boolean + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + targetPortal: + nullable: true + type: string + type: object + name: + nullable: true + type: string + nfs: + nullable: true + properties: + path: + nullable: true + type: string + readOnly: + type: boolean + server: + nullable: true + type: string + type: object + persistentVolumeClaim: + nullable: true + properties: + claimName: + nullable: true + type: string + readOnly: + type: boolean + type: object + photonPersistentDisk: + nullable: true + properties: + fsType: + nullable: true + type: string + pdID: + nullable: true + type: string + type: object + portworxVolume: + nullable: true + properties: + fsType: + nullable: true + type: string + readOnly: + type: boolean + volumeID: + nullable: true + type: string + type: object + projected: + nullable: true + properties: + defaultMode: + nullable: true + type: integer + sources: + items: + properties: + configMap: + nullable: true + properties: + items: + items: + properties: + key: + nullable: true + type: string + mode: + nullable: true + type: integer + path: + nullable: true + type: string + type: object + nullable: true + type: array + name: + nullable: true + type: string + optional: + nullable: true + type: boolean + type: object + downwardAPI: + nullable: true + properties: + items: + items: + properties: + fieldRef: + nullable: true + properties: + apiVersion: + nullable: true + type: string + fieldPath: + nullable: true + type: string + type: object + mode: + nullable: true + type: integer + path: + nullable: true + type: string + resourceFieldRef: + nullable: true + properties: + containerName: + nullable: true + type: string + divisor: + nullable: true + type: string + resource: + nullable: true + type: string + type: object + type: object + nullable: true + type: array + type: object + secret: + nullable: true + properties: + items: + items: + properties: + key: + nullable: true + type: string + mode: + nullable: true + type: integer + path: + nullable: true + type: string + type: object + nullable: true + type: array + name: + nullable: true + type: string + optional: + nullable: true + type: boolean + type: object + serviceAccountToken: + nullable: true + properties: + audience: + nullable: true + type: string + expirationSeconds: + nullable: true + type: integer + path: + nullable: true + type: string + type: object + type: object + nullable: true + type: array + type: object + quobyte: + nullable: true + properties: + group: + nullable: true + type: string + readOnly: + type: boolean + registry: + nullable: true + type: string + tenant: + nullable: true + type: string + user: + nullable: true + type: string + volume: + nullable: true + type: string + type: object + rbd: + nullable: true + properties: + fsType: + nullable: true + type: string + image: + nullable: true + type: string + keyring: + nullable: true + type: string + monitors: + items: + nullable: true + type: string + nullable: true + type: array + pool: + nullable: true + type: string + readOnly: + type: boolean + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + user: + nullable: true + type: string + type: object + scaleIO: + nullable: true + properties: + fsType: + nullable: true + type: string + gateway: + nullable: true + type: string + protectionDomain: + nullable: true + type: string + readOnly: + type: boolean + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + sslEnabled: + type: boolean + storageMode: + nullable: true + type: string + storagePool: + nullable: true + type: string + system: + nullable: true + type: string + volumeName: + nullable: true + type: string + type: object + secret: + nullable: true + properties: + defaultMode: + nullable: true + type: integer + items: + items: + properties: + key: + nullable: true + type: string + mode: + nullable: true + type: integer + path: + nullable: true + type: string + type: object + nullable: true + type: array + optional: + nullable: true + type: boolean + secretName: + nullable: true + type: string + type: object + storageos: + nullable: true + properties: + fsType: + nullable: true + type: string + readOnly: + type: boolean + secretRef: + nullable: true + properties: + name: + nullable: true + type: string + type: object + volumeName: + nullable: true + type: string + volumeNamespace: + nullable: true + type: string + type: object + vsphereVolume: + nullable: true + properties: + fsType: + nullable: true + type: string + storagePolicyID: + nullable: true + type: string + storagePolicyName: + nullable: true + type: string + volumePath: + nullable: true + type: string + type: object + type: object + nullable: true + type: array + httpPort: + type: integer + httpsPort: + type: integer + networkMode: + nullable: true + type: string + nginxIngressControllerPriorityClassName: + nullable: true + type: string + nodeSelector: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + options: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + provider: + nullable: true + type: string + tolerations: + items: + properties: + effect: + nullable: true + type: string + key: + nullable: true + type: string + operator: + nullable: true + type: string + tolerationSeconds: + nullable: true + type: integer + value: + nullable: true + type: string + type: object + nullable: true + type: array + updateStrategy: + nullable: true + properties: + rollingUpdate: + nullable: true + properties: + maxUnavailable: + nullable: true + type: string + type: object + strategy: + nullable: true + type: string + type: object + type: object + kubernetesVersion: + nullable: true + type: string + monitoring: + properties: + metricsServerPriorityClassName: + nullable: true + type: string + nodeSelector: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + options: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + provider: + nullable: true + type: string + replicas: + nullable: true + type: integer + tolerations: + items: + properties: + effect: + nullable: true + type: string + key: + nullable: true + type: string + operator: + nullable: true + type: string + tolerationSeconds: + nullable: true + type: integer + value: + nullable: true + type: string + type: object + nullable: true + type: array + updateStrategy: + nullable: true + properties: + rollingUpdate: + nullable: true + properties: + maxSurge: + nullable: true + type: string + maxUnavailable: + nullable: true + type: string + type: object + strategy: + nullable: true + type: string + type: object + type: object + network: + properties: + aciNetworkProvider: + nullable: true + properties: + aep: + nullable: true + type: string + apicHosts: + items: + nullable: true + type: string + nullable: true + type: array + apicRefreshTime: + nullable: true + type: string + apicUserCrt: + nullable: true + type: string + apicUserKey: + nullable: true + type: string + apicUserName: + nullable: true + type: string + capic: + nullable: true + type: string + controllerLogLevel: + nullable: true + type: string + dropLogEnable: + nullable: true + type: string + enableEndpointSlice: + nullable: true + type: string + encapType: + nullable: true + type: string + epRegistry: + nullable: true + type: string + externDynamic: + nullable: true + type: string + externStatic: + nullable: true + type: string + gbpPodSubnet: + nullable: true + type: string + hostAgentLogLevel: + nullable: true + type: string + imagePullPolicy: + nullable: true + type: string + imagePullSecret: + nullable: true + type: string + infraVlan: + nullable: true + type: string + installIstio: + nullable: true + type: string + istioProfile: + nullable: true + type: string + kafkaBrokers: + items: + nullable: true + type: string + nullable: true + type: array + kafkaClientCrt: + nullable: true + type: string + kafkaClientKey: + nullable: true + type: string + kubeApiVlan: + nullable: true + type: string + l3out: + nullable: true + type: string + l3outExternalNetworks: + items: + nullable: true + type: string + nullable: true + type: array + maxNodesSvcGraph: + nullable: true + type: string + mcastRangeEnd: + nullable: true + type: string + mcastRangeStart: + nullable: true + type: string + noPriorityClass: + nullable: true + type: string + nodeSubnet: + nullable: true + type: string + nodeSvcSubnet: + nullable: true + type: string + opflexClientSsl: + nullable: true + type: string + opflexLogLevel: + nullable: true + type: string + opflexMode: + nullable: true + type: string + opflexServerPort: + nullable: true + type: string + overlayVrfName: + nullable: true + type: string + ovsMemoryLimit: + nullable: true + type: string + pbrTrackingNonSnat: + nullable: true + type: string + podSubnetChunkSize: + nullable: true + type: string + runGbpContainer: + nullable: true + type: string + runOpflexServerContainer: + nullable: true + type: string + serviceMonitorInterval: + nullable: true + type: string + serviceVlan: + nullable: true + type: string + snatContractScope: + nullable: true + type: string + snatNamespace: + nullable: true + type: string + snatPortRangeEnd: + nullable: true + type: string + snatPortRangeStart: + nullable: true + type: string + snatPortsPerNode: + nullable: true + type: string + subnetDomainName: + nullable: true + type: string + systemId: + nullable: true + type: string + tenant: + nullable: true + type: string + token: + nullable: true + type: string + useAciAnywhereCrd: + nullable: true + type: string + useAciCniPriorityClass: + nullable: true + type: string + useHostNetnsVolume: + nullable: true + type: string + useOpflexServerVolume: + nullable: true + type: string + usePrivilegedContainer: + nullable: true + type: string + vmmController: + nullable: true + type: string + vmmDomain: + nullable: true + type: string + vrfName: + nullable: true + type: string + vrfTenant: + nullable: true + type: string + type: object + calicoNetworkProvider: + nullable: true + properties: + cloudProvider: + nullable: true + type: string + type: object + canalNetworkProvider: + nullable: true + properties: + iface: + nullable: true + type: string + type: object + flannelNetworkProvider: + nullable: true + properties: + iface: + nullable: true + type: string + type: object + mtu: + type: integer + nodeSelector: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + options: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + plugin: + nullable: true + type: string + tolerations: + items: + properties: + effect: + nullable: true + type: string + key: + nullable: true + type: string + operator: + nullable: true + type: string + tolerationSeconds: + nullable: true + type: integer + value: + nullable: true + type: string + type: object + nullable: true + type: array + updateStrategy: + nullable: true + properties: + rollingUpdate: + nullable: true + properties: + maxUnavailable: + nullable: true + type: string + type: object + strategy: + nullable: true + type: string + type: object + weaveNetworkProvider: + nullable: true + properties: + password: + nullable: true + type: string + type: object + type: object + nodes: + items: + properties: + address: + nullable: true + type: string + dockerSocket: + nullable: true + type: string + hostnameOverride: + nullable: true + type: string + internalAddress: + nullable: true + type: string + labels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + nodeName: + nullable: true + type: string + port: + nullable: true + type: string + role: + items: + nullable: true + type: string + nullable: true + type: array + sshAgentAuth: + type: boolean + sshCert: + nullable: true + type: string + sshCertPath: + nullable: true + type: string + sshKey: + nullable: true + type: string + sshKeyPath: + nullable: true + type: string + taints: + items: + properties: + effect: + nullable: true + type: string + key: + nullable: true + type: string + timeAdded: + nullable: true + type: string + value: + nullable: true + type: string + type: object + nullable: true + type: array + user: + nullable: true + type: string + type: object + nullable: true + type: array + prefixPath: + nullable: true + type: string + privateRegistries: + items: + properties: + isDefault: + type: boolean + password: + nullable: true + type: string + url: + nullable: true + type: string + user: + nullable: true + type: string + type: object + nullable: true + type: array + restore: + properties: + restore: + type: boolean + snapshotName: + nullable: true + type: string + type: object + rotateCertificates: + nullable: true + properties: + caCertificates: + type: boolean + services: + items: + nullable: true + type: string + nullable: true + type: array + type: object + rotateEncryptionKey: + type: boolean + services: + properties: + etcd: + properties: + backupConfig: + nullable: true + properties: + enabled: + nullable: true + type: boolean + intervalHours: + type: integer + retention: + type: integer + s3BackupConfig: + nullable: true + properties: + accessKey: + nullable: true + type: string + bucketName: + nullable: true + type: string + customCa: + nullable: true + type: string + endpoint: + nullable: true + type: string + folder: + nullable: true + type: string + region: + nullable: true + type: string + secretKey: + nullable: true + type: string + type: object + safeTimestamp: + type: boolean + timeout: + type: integer + type: object + caCert: + nullable: true + type: string + cert: + nullable: true + type: string + creation: + nullable: true + type: string + externalUrls: + items: + nullable: true + type: string + nullable: true + type: array + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraBinds: + items: + nullable: true + type: string + nullable: true + type: array + extraEnv: + items: + nullable: true + type: string + nullable: true + type: array + gid: + type: integer + image: + nullable: true + type: string + key: + nullable: true + type: string + path: + nullable: true + type: string + retention: + nullable: true + type: string + snapshot: + nullable: true + type: boolean + uid: + type: integer + winExtraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + winExtraBinds: + items: + nullable: true + type: string + nullable: true + type: array + winExtraEnv: + items: + nullable: true + type: string + nullable: true + type: array + type: object + kubeApi: + properties: + admissionConfiguration: + nullable: true + properties: + apiVersion: + nullable: true + type: string + kind: + nullable: true + type: string + plugins: + items: + properties: + configuration: + nullable: true + properties: + apiVersion: + nullable: true + type: string + contentEncoding: + nullable: true + type: string + contentType: + nullable: true + type: string + kind: + nullable: true + type: string + raw: + nullable: true + type: string + type: object + name: + nullable: true + type: string + path: + nullable: true + type: string + type: object + nullable: true + type: array + type: object + alwaysPullImages: + type: boolean + auditLog: + nullable: true + properties: + configuration: + nullable: true + properties: + format: + nullable: true + type: string + maxAge: + type: integer + maxBackup: + type: integer + maxSize: + type: integer + path: + nullable: true + type: string + policy: + nullable: true + properties: + omitStages: + items: + nullable: true + type: string + nullable: true + type: array + rules: + items: + properties: + level: + nullable: true + type: string + namespaces: + items: + nullable: true + type: string + nullable: true + type: array + nonResourceURLs: + items: + nullable: true + type: string + nullable: true + type: array + omitStages: + items: + nullable: true + type: string + nullable: true + type: array + resources: + items: + properties: + group: + nullable: true + type: string + resourceNames: + items: + nullable: true + type: string + nullable: true + type: array + resources: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + userGroups: + items: + nullable: true + type: string + nullable: true + type: array + users: + items: + nullable: true + type: string + nullable: true + type: array + verbs: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + type: object + type: object + enabled: + type: boolean + type: object + eventRateLimit: + nullable: true + properties: + configuration: + nullable: true + properties: + apiVersion: + nullable: true + type: string + kind: + nullable: true + type: string + limits: + items: + properties: + burst: + type: integer + cacheSize: + type: integer + qps: + type: integer + type: + nullable: true + type: string + type: object + nullable: true + type: array + type: object + enabled: + type: boolean + type: object + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraBinds: + items: + nullable: true + type: string + nullable: true + type: array + extraEnv: + items: + nullable: true + type: string + nullable: true + type: array + image: + nullable: true + type: string + podSecurityPolicy: + type: boolean + secretsEncryptionConfig: + nullable: true + properties: + customConfig: + nullable: true + properties: + apiVersion: + nullable: true + type: string + kind: + nullable: true + type: string + resources: + items: + properties: + providers: + items: + properties: + aescbc: + nullable: true + properties: + keys: + items: + properties: + name: + nullable: true + type: string + secret: + nullable: true + type: string + type: object + nullable: true + type: array + type: object + aesgcm: + nullable: true + properties: + keys: + items: + properties: + name: + nullable: true + type: string + secret: + nullable: true + type: string + type: object + nullable: true + type: array + type: object + identity: + nullable: true + type: object + kms: + nullable: true + properties: + cacheSize: + nullable: true + type: integer + endpoint: + nullable: true + type: string + name: + nullable: true + type: string + timeout: + nullable: true + type: string + type: object + secretbox: + nullable: true + properties: + keys: + items: + properties: + name: + nullable: true + type: string + secret: + nullable: true + type: string + type: object + nullable: true + type: array + type: object + type: object + nullable: true + type: array + resources: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + type: object + enabled: + type: boolean + type: object + serviceClusterIpRange: + nullable: true + type: string + serviceNodePortRange: + nullable: true + type: string + winExtraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + winExtraBinds: + items: + nullable: true + type: string + nullable: true + type: array + winExtraEnv: + items: + nullable: true + type: string + nullable: true + type: array + type: object + kubeController: + properties: + clusterCidr: + nullable: true + type: string + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraBinds: + items: + nullable: true + type: string + nullable: true + type: array + extraEnv: + items: + nullable: true + type: string + nullable: true + type: array + image: + nullable: true + type: string + serviceClusterIpRange: + nullable: true + type: string + winExtraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + winExtraBinds: + items: + nullable: true + type: string + nullable: true + type: array + winExtraEnv: + items: + nullable: true + type: string + nullable: true + type: array + type: object + kubelet: + properties: + clusterDnsServer: + nullable: true + type: string + clusterDomain: + nullable: true + type: string + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraBinds: + items: + nullable: true + type: string + nullable: true + type: array + extraEnv: + items: + nullable: true + type: string + nullable: true + type: array + failSwapOn: + type: boolean + generateServingCertificate: + type: boolean + image: + nullable: true + type: string + infraContainerImage: + nullable: true + type: string + winExtraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + winExtraBinds: + items: + nullable: true + type: string + nullable: true + type: array + winExtraEnv: + items: + nullable: true + type: string + nullable: true + type: array + type: object + kubeproxy: + properties: + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraBinds: + items: + nullable: true + type: string + nullable: true + type: array + extraEnv: + items: + nullable: true + type: string + nullable: true + type: array + image: + nullable: true + type: string + winExtraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + winExtraBinds: + items: + nullable: true + type: string + nullable: true + type: array + winExtraEnv: + items: + nullable: true + type: string + nullable: true + type: array + type: object + scheduler: + properties: + extraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + extraBinds: + items: + nullable: true + type: string + nullable: true + type: array + extraEnv: + items: + nullable: true + type: string + nullable: true + type: array + image: + nullable: true + type: string + winExtraArgs: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + winExtraBinds: + items: + nullable: true + type: string + nullable: true + type: array + winExtraEnv: + items: + nullable: true + type: string + nullable: true + type: array + type: object + type: object + sshAgentAuth: + type: boolean + sshCertPath: + nullable: true + type: string + sshKeyPath: + nullable: true + type: string + systemImages: + properties: + aciCniDeployContainer: + nullable: true + type: string + aciControllerContainer: + nullable: true + type: string + aciGbpServerContainer: + nullable: true + type: string + aciHostContainer: + nullable: true + type: string + aciMcastContainer: + nullable: true + type: string + aciOpflexContainer: + nullable: true + type: string + aciOpflexServerContainer: + nullable: true + type: string + aciOvsContainer: + nullable: true + type: string + alpine: + nullable: true + type: string + calicoCni: + nullable: true + type: string + calicoControllers: + nullable: true + type: string + calicoCtl: + nullable: true + type: string + calicoFlexVol: + nullable: true + type: string + calicoNode: + nullable: true + type: string + canalCni: + nullable: true + type: string + canalControllers: + nullable: true + type: string + canalFlannel: + nullable: true + type: string + canalFlexVol: + nullable: true + type: string + canalNode: + nullable: true + type: string + certDownloader: + nullable: true + type: string + coredns: + nullable: true + type: string + corednsAutoscaler: + nullable: true + type: string + dnsmasq: + nullable: true + type: string + etcd: + nullable: true + type: string + flannel: + nullable: true + type: string + flannelCni: + nullable: true + type: string + ingress: + nullable: true + type: string + ingressBackend: + nullable: true + type: string + kubedns: + nullable: true + type: string + kubednsAutoscaler: + nullable: true + type: string + kubednsSidecar: + nullable: true + type: string + kubernetes: + nullable: true + type: string + kubernetesServicesSidecar: + nullable: true + type: string + metricsServer: + nullable: true + type: string + nginxProxy: + nullable: true + type: string + nodelocal: + nullable: true + type: string + podInfraContainer: + nullable: true + type: string + weaveCni: + nullable: true + type: string + weaveNode: + nullable: true + type: string + windowsPodInfraContainer: + nullable: true + type: string + type: object + upgradeStrategy: + nullable: true + properties: + drain: + nullable: true + type: boolean + maxUnavailableControlplane: + nullable: true + type: string + maxUnavailableWorker: + nullable: true + type: string + nodeDrainInput: + nullable: true + properties: + deleteLocalData: + type: boolean + force: + type: boolean + gracePeriod: + type: integer + ignoreDaemonSets: + nullable: true + type: boolean + timeout: + type: integer + type: object + type: object + winPrefixPath: + nullable: true + type: string + type: object + referencedConfig: + nullable: true + properties: + selector: + nullable: true + properties: + matchExpressions: + items: + properties: + key: + nullable: true + type: string + operator: + nullable: true + type: string + values: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + matchLabels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + type: object + rke2Config: + nullable: true + properties: + kubernetesVersion: + nullable: true + type: string + rke2upgradeStrategy: + properties: + drainServerNodes: + type: boolean + drainWorkerNodes: + type: boolean + serverConcurrency: + type: integer + workerConcurrency: + type: integer + type: object + type: object + type: object + status: + properties: + agentDeployed: + type: boolean + clientSecretName: + nullable: true + type: string + clusterName: + nullable: true + type: string + conditions: + items: + properties: + lastTransitionTime: + nullable: true + type: string + lastUpdateTime: + nullable: true + type: string + message: + nullable: true + type: string + reason: + nullable: true + type: string + status: + nullable: true + type: string + type: + nullable: true + type: string + type: object + nullable: true + type: array + observedGeneration: + type: integer + ready: + type: boolean + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: projects.rancher.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .spec.clusterSelector + name: Selector + type: string + group: rancher.cattle.io + names: + kind: Project + plural: projects + scope: Namespaced + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + spec: + properties: + clusterSelector: + nullable: true + properties: + matchExpressions: + items: + properties: + key: + nullable: true + type: string + operator: + nullable: true + type: string + values: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + matchLabels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + type: object + status: + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: roletemplates.rancher.cattle.io +spec: + group: rancher.cattle.io + names: + kind: RoleTemplate + plural: roletemplates + scope: Cluster + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + rules: + items: + properties: + apiGroups: + items: + nullable: true + type: string + nullable: true + type: array + nonResourceURLs: + items: + nullable: true + type: string + nullable: true + type: array + resourceNames: + items: + nullable: true + type: string + nullable: true + type: array + resources: + items: + nullable: true + type: string + nullable: true + type: array + verbs: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + status: + type: object + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: roletemplatebindings.rancher.cattle.io +spec: + additionalPrinterColumns: + - JSONPath: .spec.roleTemplateName + name: Role + type: string + group: rancher.cattle.io + names: + kind: RoleTemplateBinding + plural: roletemplatebindings + scope: Namespaced + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + bindingScope: + properties: + apiGroup: + nullable: true + type: string + kind: + nullable: true + type: string + selector: + nullable: true + properties: + matchExpressions: + items: + properties: + key: + nullable: true + type: string + operator: + nullable: true + type: string + values: + items: + nullable: true + type: string + nullable: true + type: array + type: object + nullable: true + type: array + matchLabels: + additionalProperties: + nullable: true + type: string + nullable: true + type: object + type: object + type: object + roleTemplateName: + nullable: true + type: string + status: + type: object + subjects: + items: + properties: + apiGroup: + nullable: true + type: string + kind: + nullable: true + type: string + name: + nullable: true + type: string + namespace: + nullable: true + type: string + type: object + nullable: true + type: array + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true diff --git a/charts/rancher-operator/rancher-operator/0.1.400-rc02/Chart.yaml b/charts/rancher-operator/rancher-operator/0.1.400-rc02/Chart.yaml new file mode 100755 index 000000000..aeae11e81 --- /dev/null +++ b/charts/rancher-operator/rancher-operator/0.1.400-rc02/Chart.yaml @@ -0,0 +1,14 @@ +annotations: + catalog.cattle.io/auto-install: rancher-operator-crd=match + catalog.cattle.io/certified: rancher + catalog.cattle.io/experimental: "true" + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: rancher-operator-system + catalog.cattle.io/os: linux + catalog.cattle.io/provides-gvr: clusters.rancher.cattle.io/v1 + catalog.cattle.io/release-name: rancher-operator +apiVersion: v2 +appVersion: 0.1.4 +description: Control Rancher using GitOps +name: rancher-operator +version: 0.1.400-rc02 diff --git a/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/_helpers.tpl b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/_helpers.tpl new file mode 100755 index 000000000..f652b5643 --- /dev/null +++ b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/_helpers.tpl @@ -0,0 +1,7 @@ +{{- define "system_default_registry" -}} +{{- if .Values.global.cattle.systemDefaultRegistry -}} +{{- printf "%s/" .Values.global.cattle.systemDefaultRegistry -}} +{{- else -}} +{{- "" -}} +{{- end -}} +{{- end -}} \ No newline at end of file diff --git a/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/deployment.yaml b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/deployment.yaml new file mode 100755 index 000000000..25c7b93ed --- /dev/null +++ b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/deployment.yaml @@ -0,0 +1,23 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: rancher-operator +spec: + selector: + matchLabels: + app: rancher-operator + template: + metadata: + labels: + app: rancher-operator + spec: + containers: + - env: + - name: NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + image: '{{ template "system_default_registry" . }}{{ .Values.image.repository }}:{{ .Values.image.tag }}' + name: rancher-operator + imagePullPolicy: "{{ .Values.image.imagePullPolicy }}" + serviceAccountName: rancher-operator diff --git a/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/rbac.yaml b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/rbac.yaml new file mode 100755 index 000000000..9fe9ad9a7 --- /dev/null +++ b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/rbac.yaml @@ -0,0 +1,44 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: rancher-operator +rules: +- apiGroups: + - "" + resources: + - secrets + - configmaps + - namespaces + verbs: + - '*' +- apiGroups: + - apps + resources: + - daemonsets + - deployments + verbs: + - list + - get + - watch +- apiGroups: + - "rancher.cattle.io" + - "management.cattle.io" + - "fleet.cattle.io" + resources: + - '*' + verbs: + - '*' + +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: rancher-operator +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: rancher-operator +subjects: +- kind: ServiceAccount + name: rancher-operator + namespace: {{.Release.Namespace}} diff --git a/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/serviceaccount.yaml b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/serviceaccount.yaml new file mode 100755 index 000000000..a6370fcdf --- /dev/null +++ b/charts/rancher-operator/rancher-operator/0.1.400-rc02/templates/serviceaccount.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: rancher-operator diff --git a/charts/rancher-operator/rancher-operator/0.1.400-rc02/values.yaml b/charts/rancher-operator/rancher-operator/0.1.400-rc02/values.yaml new file mode 100755 index 000000000..8552991d6 --- /dev/null +++ b/charts/rancher-operator/rancher-operator/0.1.400-rc02/values.yaml @@ -0,0 +1,8 @@ +image: + repository: rancher/rancher-operator + tag: v0.1.4-rc1 + imagePullPolicy: IfNotPresent + +global: + cattle: + systemDefaultRegistry: "" diff --git a/index.yaml b/index.yaml index 8e05a5ebd..4aefd15f9 100755 --- a/index.yaml +++ b/index.yaml @@ -1937,6 +1937,28 @@ entries: - released/assets/rancher-backup/rancher-backup-crd-1.0.200.tgz version: 1.0.200 rancher-cis-benchmark: + - annotations: + catalog.cattle.io/auto-install: rancher-cis-benchmark-crd=match + catalog.cattle.io/certified: rancher + catalog.cattle.io/display-name: CIS Benchmark + catalog.cattle.io/namespace: cis-operator-system + catalog.cattle.io/os: linux + catalog.cattle.io/provides-gvr: cis.cattle.io.clusterscans/v1 + catalog.cattle.io/release-name: rancher-cis-benchmark + catalog.cattle.io/ui-component: rancher-cis-benchmark + apiVersion: v1 + appVersion: v1.0.4 + created: "2021-04-07T00:55:11.850459197Z" + description: The cis-operator enables running CIS benchmark security scans on + a kubernetes cluster + digest: 8cedf45ecfa58199f30567dc1bda4c706ef0b3f78a158f85603f99656702d5e3 + icon: https://charts.rancher.io/assets/logos/cis-kube-bench.svg + keywords: + - security + name: rancher-cis-benchmark + urls: + - assets/rancher-cis-benchmark/rancher-cis-benchmark-1.0.400-rc01.tgz + version: 1.0.400-rc01 - annotations: catalog.cattle.io/auto-install: rancher-cis-benchmark-crd=match catalog.cattle.io/certified: rancher @@ -2069,6 +2091,20 @@ entries: - released/assets/rancher-cis-benchmark/rancher-cis-benchmark-1.0.100.tgz version: 1.0.100 rancher-cis-benchmark-crd: + - annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: cis-operator-system + catalog.cattle.io/release-name: rancher-cis-benchmark-crd + apiVersion: v1 + created: "2021-04-07T00:55:11.851433409Z" + description: Installs the CRDs for rancher-cis-benchmark. + digest: 9554f4ad162bca2ba60dc59ef803ee901fe7029f8f4c700e3f5328af0b8358b8 + name: rancher-cis-benchmark-crd + type: application + urls: + - assets/rancher-cis-benchmark/rancher-cis-benchmark-crd-1.0.400-rc01.tgz + version: 1.0.400-rc01 - annotations: catalog.cattle.io/certified: rancher catalog.cattle.io/hidden: "true" @@ -6025,6 +6061,24 @@ entries: - released/assets/rancher-monitoring/rancher-monitoring-crd-9.4.200.tgz version: 9.4.200 rancher-operator: + - annotations: + catalog.cattle.io/auto-install: rancher-operator-crd=match + catalog.cattle.io/certified: rancher + catalog.cattle.io/experimental: "true" + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: rancher-operator-system + catalog.cattle.io/os: linux + catalog.cattle.io/provides-gvr: clusters.rancher.cattle.io/v1 + catalog.cattle.io/release-name: rancher-operator + apiVersion: v2 + appVersion: 0.1.4 + created: "2021-04-07T00:55:12.217551206Z" + description: Control Rancher using GitOps + digest: ffbce9b2b0886047cab39b3131a428c5c5175769ec1c09f3766efeb5740b2472 + name: rancher-operator + urls: + - assets/rancher-operator/rancher-operator-0.1.400-rc02.tgz + version: 0.1.400-rc02 - annotations: catalog.cattle.io/auto-install: rancher-operator-crd=match catalog.cattle.io/certified: rancher @@ -6315,6 +6369,21 @@ entries: urls: - assets/rancher-operator/rancher-operator-crd-0.2.0-alpha01-rc01.tgz version: 0.2.0-alpha01-rc01 + - annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: rancher-operator-system + catalog.cattle.io/os: linux + catalog.cattle.io/release-name: rancher-operator-crd + apiVersion: v2 + appVersion: 0.1.4 + created: "2021-04-07T00:55:12.221100449Z" + description: Rancher Operator CustomResourceDefinitions + digest: 0e44f3664a6e21c659e570df732dc62204fe8f3fef443ec91f451ea7a57898cc + name: rancher-operator-crd + urls: + - assets/rancher-operator-crd/rancher-operator-crd-0.1.400-rc02.tgz + version: 0.1.400-rc02 - annotations: catalog.cattle.io/certified: rancher catalog.cattle.io/hidden: "true"