|
32 | 32 | "type": "object",
|
33 | 33 | "description": "APIServiceService holds the service name and namespace of the host apiservice."
|
34 | 34 | },
|
| 35 | + "AutoSleepExclusion": { |
| 36 | + "properties": { |
| 37 | + "selector": { |
| 38 | + "$ref": "#/$defs/LabelSelector" |
| 39 | + } |
| 40 | + }, |
| 41 | + "additionalProperties": false, |
| 42 | + "type": "object", |
| 43 | + "description": "AutoSleepExclusion holds conifiguration for excluding workloads from sleeping by label(s)" |
| 44 | + }, |
| 45 | + "AutoWakeup": { |
| 46 | + "properties": { |
| 47 | + "schedule": { |
| 48 | + "type": "string" |
| 49 | + } |
| 50 | + }, |
| 51 | + "additionalProperties": false, |
| 52 | + "type": "object", |
| 53 | + "description": "AutoWakeup holds the cron schedule to wake workloads automatically" |
| 54 | + }, |
35 | 55 | "BackingStore": {
|
36 | 56 | "properties": {
|
37 | 57 | "etcd": {
|
|
66 | 86 | "additionalProperties": false,
|
67 | 87 | "type": "object"
|
68 | 88 | },
|
| 89 | + "CertManager": { |
| 90 | + "properties": { |
| 91 | + "enabled": { |
| 92 | + "type": "boolean", |
| 93 | + "description": "Enabled defines if this option should be enabled." |
| 94 | + }, |
| 95 | + "sync": { |
| 96 | + "$ref": "#/$defs/CertManagerSync", |
| 97 | + "description": "Sync contains advanced configuration for syncing cert-manager resources." |
| 98 | + } |
| 99 | + }, |
| 100 | + "additionalProperties": false, |
| 101 | + "type": "object", |
| 102 | + "description": "CertManager reuses a host cert-manager and makes its CRDs from it available inside the vCluster" |
| 103 | + }, |
| 104 | + "CertManagerSync": { |
| 105 | + "properties": { |
| 106 | + "toHost": { |
| 107 | + "$ref": "#/$defs/CertManagerSyncToHost" |
| 108 | + }, |
| 109 | + "fromHost": { |
| 110 | + "$ref": "#/$defs/CertManagerSyncFromHost" |
| 111 | + } |
| 112 | + }, |
| 113 | + "additionalProperties": false, |
| 114 | + "type": "object" |
| 115 | + }, |
| 116 | + "CertManagerSyncFromHost": { |
| 117 | + "properties": { |
| 118 | + "clusterIssuers": { |
| 119 | + "$ref": "#/$defs/ClusterIssuersSyncConfig", |
| 120 | + "description": "ClusterIssuers defines if (and which) cluster issuers should get synced from the host cluster to the virtual cluster." |
| 121 | + } |
| 122 | + }, |
| 123 | + "additionalProperties": false, |
| 124 | + "type": "object" |
| 125 | + }, |
| 126 | + "CertManagerSyncToHost": { |
| 127 | + "properties": { |
| 128 | + "certificates": { |
| 129 | + "$ref": "#/$defs/EnableSwitch", |
| 130 | + "description": "Certificates defines if certificates should get synced from the virtual cluster to the host cluster." |
| 131 | + }, |
| 132 | + "issuers": { |
| 133 | + "$ref": "#/$defs/EnableSwitch", |
| 134 | + "description": "Issuers defines if issuers should get synced from the virtual cluster to the host cluster." |
| 135 | + } |
| 136 | + }, |
| 137 | + "additionalProperties": false, |
| 138 | + "type": "object" |
| 139 | + }, |
| 140 | + "ClusterIssuersSyncConfig": { |
| 141 | + "properties": { |
| 142 | + "enabled": { |
| 143 | + "type": "boolean", |
| 144 | + "description": "Enabled defines if this option should be enabled." |
| 145 | + }, |
| 146 | + "selector": { |
| 147 | + "$ref": "#/$defs/LabelSelector", |
| 148 | + "description": "Selector defines what cluster issuers should be imported." |
| 149 | + } |
| 150 | + }, |
| 151 | + "additionalProperties": false, |
| 152 | + "type": "object" |
| 153 | + }, |
69 | 154 | "ClusterStoresSyncConfig": {
|
70 | 155 | "properties": {
|
71 | 156 | "enabled": {
|
|
956 | 1041 | },
|
957 | 1042 | "version": {
|
958 | 1043 | "type": "string",
|
959 |
| - "description": "Version specifies k8s components (scheduler, kube-controller-manager \u0026 apiserver) version.\nIt is a shortcut for controlPlane.distro.k8s.apiServer.image.tag,\ncontrolPlane.distro.k8s.controllerManager.image.tag and\ncontrolPlane.distro.k8s.scheduler.image.tag\nIf e.g. controlPlane.distro.k8s.version is set to v1.30.1 and\ncontrolPlane.distro.k8s.scheduler.image.tag\n(or controlPlane.distro.k8s.controllerManager.image.tag or controlPlane.distro.k8s.apiServer.image.tag)\nis set to v1.31.0,\nvalue from controlPlane.distro.k8s.\u003ccontrolPlane-component\u003e.image.tag will be used\n(where \u003ccontrolPlane-component is apiServer, controllerManager and scheduler)." |
| 1044 | + "description": "Version specifies k8s components (scheduler, kube-controller-manager \u0026 apiserver) version.\nIt is a shortcut for controlPlane.distro.k8s.apiServer.image.tag,\ncontrolPlane.distro.k8s.controllerManager.image.tag and\ncontrolPlane.distro.k8s.scheduler.image.tag\nIf e.g. controlPlane.distro.k8s.version is set to v1.30.1 and\ncontrolPlane.distro.k8s.scheduler.image.tag\n(or controlPlane.distro.k8s.controllerManager.image.tag or controlPlane.distro.k8s.apiServer.image.tag)\nis set to v1.31.0,\nvalue from controlPlane.distro.k8s.(controlPlane-component).image.tag will be used\n(where controlPlane-component is apiServer, controllerManager and scheduler)." |
960 | 1045 | },
|
961 | 1046 | "apiServer": {
|
962 | 1047 | "$ref": "#/$defs/DistroContainerEnabled",
|
|
1200 | 1285 | "properties": {
|
1201 | 1286 | "deploy": {
|
1202 | 1287 | "$ref": "#/$defs/ExperimentalDeploy",
|
1203 |
| - "description": "Deploy allows you to configure manifests and Helm charts to deploy within the virtual cluster." |
| 1288 | + "description": "Deploy allows you to configure manifests and Helm charts to deploy within the host or virtual cluster." |
1204 | 1289 | },
|
1205 | 1290 | "syncSettings": {
|
1206 | 1291 | "$ref": "#/$defs/ExperimentalSyncSettings",
|
|
1230 | 1315 | "type": "array",
|
1231 | 1316 | "description": "DenyProxyRequests denies certain requests in the vCluster proxy.",
|
1232 | 1317 | "pro": true
|
| 1318 | + }, |
| 1319 | + "sleepMode": { |
| 1320 | + "$ref": "#/$defs/SleepMode", |
| 1321 | + "description": "SleepMode holds the native sleep mode configuration for Pro clusters" |
1233 | 1322 | }
|
1234 | 1323 | },
|
1235 | 1324 | "additionalProperties": false,
|
|
1317 | 1406 | "properties": {
|
1318 | 1407 | "manifests": {
|
1319 | 1408 | "type": "string",
|
1320 |
| - "description": "Manifests are raw Kubernetes manifests that should get applied within the virtual cluster." |
| 1409 | + "description": "Manifests are raw Kubernetes manifests that should get applied within the host cluster." |
1321 | 1410 | },
|
1322 | 1411 | "manifestsTemplate": {
|
1323 | 1412 | "type": "string",
|
1324 |
| - "description": "ManifestsTemplate is a Kubernetes manifest template that will be rendered with vCluster values before applying it within the virtual cluster." |
| 1413 | + "description": "ManifestsTemplate is a Kubernetes manifest template that will be rendered with vCluster values before applying it within the host cluster." |
1325 | 1414 | }
|
1326 | 1415 | },
|
1327 | 1416 | "additionalProperties": false,
|
|
1869 | 1958 | "externalSecrets": {
|
1870 | 1959 | "$ref": "#/$defs/ExternalSecrets",
|
1871 | 1960 | "description": "ExternalSecrets reuses a host external secret operator and makes certain CRDs from it available inside the vCluster"
|
| 1961 | + }, |
| 1962 | + "certManager": { |
| 1963 | + "$ref": "#/$defs/CertManager", |
| 1964 | + "description": "CertManager reuses a host cert-manager and makes its CRDs from it available inside the vCluster.\n- Certificates and Issuers will be synced from the virtual cluster to the host cluster.\n- ClusterIssuers will be synced from the host cluster to the virtual cluster." |
1872 | 1965 | }
|
1873 | 1966 | },
|
1874 | 1967 | "additionalProperties": false,
|
|
2909 | 3002 | "additionalProperties": false,
|
2910 | 3003 | "type": "object"
|
2911 | 3004 | },
|
| 3005 | + "SleepMode": { |
| 3006 | + "properties": { |
| 3007 | + "enabled": { |
| 3008 | + "type": "boolean", |
| 3009 | + "description": "Enabled toggles the sleep mode functionality, allowing for disabling sleep mode without removing other config" |
| 3010 | + }, |
| 3011 | + "timeZone": { |
| 3012 | + "type": "string", |
| 3013 | + "description": "Timezone represents the timezone a sleep schedule should run against, defaulting to UTC if unset" |
| 3014 | + }, |
| 3015 | + "autoSleep": { |
| 3016 | + "$ref": "#/$defs/SleepModeAutoSleep", |
| 3017 | + "description": "AutoSleep holds autoSleep details" |
| 3018 | + } |
| 3019 | + }, |
| 3020 | + "additionalProperties": false, |
| 3021 | + "type": "object", |
| 3022 | + "description": "SleepMode holds configuration for native/workload only sleep mode" |
| 3023 | + }, |
| 3024 | + "SleepModeAutoSleep": { |
| 3025 | + "properties": { |
| 3026 | + "afterInactivity": { |
| 3027 | + "type": "string", |
| 3028 | + "description": "AfterInactivity represents how long a vCluster can be idle before workloads are automaticaly put to sleep" |
| 3029 | + }, |
| 3030 | + "schedule": { |
| 3031 | + "type": "string", |
| 3032 | + "description": "Schedule represents a cron schedule for when to sleep workloads" |
| 3033 | + }, |
| 3034 | + "wakeup": { |
| 3035 | + "$ref": "#/$defs/AutoWakeup", |
| 3036 | + "description": "Wakeup holds configuration for waking the vCluster on a schedule rather than waiting for some activity." |
| 3037 | + }, |
| 3038 | + "exclude": { |
| 3039 | + "$ref": "#/$defs/AutoSleepExclusion", |
| 3040 | + "description": "Exclude holds configuration for labels that, if present, will prevent a workload from going to sleep" |
| 3041 | + } |
| 3042 | + }, |
| 3043 | + "additionalProperties": false, |
| 3044 | + "type": "object", |
| 3045 | + "description": "SleepModeAutoSleep holds configuration for allowing a vCluster to sleep its workloads automatically" |
| 3046 | + }, |
2912 | 3047 | "StatefulSetImage": {
|
2913 | 3048 | "properties": {
|
2914 | 3049 | "registry": {
|
|
0 commit comments