|
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 |
| - }, |
55 | 35 | "BackingStore": {
|
56 | 36 | "properties": {
|
57 | 37 | "etcd": {
|
|
86 | 66 | "additionalProperties": false,
|
87 | 67 | "type": "object"
|
88 | 68 | },
|
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 |
| - }, |
154 | 69 | "ClusterStoresSyncConfig": {
|
155 | 70 | "properties": {
|
156 | 71 | "enabled": {
|
|
1041 | 956 | },
|
1042 | 957 | "version": {
|
1043 | 958 | "type": "string",
|
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)." |
| 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)." |
1045 | 960 | },
|
1046 | 961 | "apiServer": {
|
1047 | 962 | "$ref": "#/$defs/DistroContainerEnabled",
|
|
1125 | 1040 | "additionalProperties": false,
|
1126 | 1041 | "type": "object"
|
1127 | 1042 | },
|
1128 |
| - "EnableSwitchWithResourcesMappings": { |
1129 |
| - "properties": { |
1130 |
| - "enabled": { |
1131 |
| - "type": "boolean", |
1132 |
| - "description": "Enabled defines if this option should be enabled." |
1133 |
| - }, |
1134 |
| - "patches": { |
1135 |
| - "items": { |
1136 |
| - "$ref": "#/$defs/TranslatePatch" |
1137 |
| - }, |
1138 |
| - "type": "array", |
1139 |
| - "description": "Patches patch the resource according to the provided specification." |
1140 |
| - }, |
1141 |
| - "mappings": { |
1142 |
| - "$ref": "#/$defs/FromHostMappings", |
1143 |
| - "description": "Mappings for Namespace and Object" |
1144 |
| - } |
1145 |
| - }, |
1146 |
| - "additionalProperties": false, |
1147 |
| - "type": "object" |
1148 |
| - }, |
1149 | 1043 | "Etcd": {
|
1150 | 1044 | "properties": {
|
1151 | 1045 | "embedded": {
|
|
1306 | 1200 | "properties": {
|
1307 | 1201 | "deploy": {
|
1308 | 1202 | "$ref": "#/$defs/ExperimentalDeploy",
|
1309 |
| - "description": "Deploy allows you to configure manifests and Helm charts to deploy within the host or virtual cluster." |
| 1203 | + "description": "Deploy allows you to configure manifests and Helm charts to deploy within the virtual cluster." |
1310 | 1204 | },
|
1311 | 1205 | "syncSettings": {
|
1312 | 1206 | "$ref": "#/$defs/ExperimentalSyncSettings",
|
|
1336 | 1230 | "type": "array",
|
1337 | 1231 | "description": "DenyProxyRequests denies certain requests in the vCluster proxy.",
|
1338 | 1232 | "pro": true
|
1339 |
| - }, |
1340 |
| - "reuseNamespace": { |
1341 |
| - "type": "boolean", |
1342 |
| - "description": "ReuseNamespace allows reusing the same namespace to create multiple vClusters.\nThis flag is deprecated, as this scenario will be removed entirely in upcoming releases." |
1343 | 1233 | }
|
1344 | 1234 | },
|
1345 | 1235 | "additionalProperties": false,
|
|
1427 | 1317 | "properties": {
|
1428 | 1318 | "manifests": {
|
1429 | 1319 | "type": "string",
|
1430 |
| - "description": "Manifests are raw Kubernetes manifests that should get applied within the host cluster." |
| 1320 | + "description": "Manifests are raw Kubernetes manifests that should get applied within the virtual cluster." |
1431 | 1321 | },
|
1432 | 1322 | "manifestsTemplate": {
|
1433 | 1323 | "type": "string",
|
1434 |
| - "description": "ManifestsTemplate is a Kubernetes manifest template that will be rendered with vCluster values before applying it within the host cluster." |
| 1324 | + "description": "ManifestsTemplate is a Kubernetes manifest template that will be rendered with vCluster values before applying it within the virtual cluster." |
1435 | 1325 | }
|
1436 | 1326 | },
|
1437 | 1327 | "additionalProperties": false,
|
|
1636 | 1526 | },
|
1637 | 1527 | "secret": {
|
1638 | 1528 | "$ref": "#/$defs/ExportKubeConfigSecretReference",
|
1639 |
| - "description": "Declare in which host cluster secret vCluster should store the generated virtual cluster kubeconfig.\nIf this is not defined, vCluster will create it with `vc-NAME`. If you specify another name,\nvCluster creates the config in this other secret.\n\nDeprecated: Use AdditionalSecrets instead." |
1640 |
| - }, |
1641 |
| - "additionalSecrets": { |
1642 |
| - "items": { |
1643 |
| - "$ref": "#/$defs/ExportKubeConfigAdditionalSecretReference" |
1644 |
| - }, |
1645 |
| - "type": "array", |
1646 |
| - "description": "AdditionalSecrets specifies the additional host cluster secrets in which vCluster will store the\ngenerated virtual cluster kubeconfigs." |
| 1529 | + "description": "Declare in which host cluster secret vCluster should store the generated virtual cluster kubeconfig.\nIf this is not defined, vCluster will create it with `vc-NAME`. If you specify another name,\nvCluster creates the config in this other secret." |
1647 | 1530 | }
|
1648 | 1531 | },
|
1649 | 1532 | "additionalProperties": false,
|
1650 | 1533 | "type": "object",
|
1651 | 1534 | "description": "ExportKubeConfig describes how vCluster should export the vCluster kubeconfig."
|
1652 | 1535 | },
|
1653 |
| - "ExportKubeConfigAdditionalSecretReference": { |
1654 |
| - "properties": { |
1655 |
| - "context": { |
1656 |
| - "type": "string", |
1657 |
| - "description": "Context is the name of the context within the generated kubeconfig to use." |
1658 |
| - }, |
1659 |
| - "server": { |
1660 |
| - "type": "string", |
1661 |
| - "description": "Override the default https://localhost:8443 and specify a custom hostname for the generated kubeconfig." |
1662 |
| - }, |
1663 |
| - "insecure": { |
1664 |
| - "type": "boolean", |
1665 |
| - "description": "If tls should get skipped for the server" |
1666 |
| - }, |
1667 |
| - "serviceAccount": { |
1668 |
| - "$ref": "#/$defs/ExportKubeConfigServiceAccount", |
1669 |
| - "description": "ServiceAccount can be used to generate a service account token instead of the default certificates." |
1670 |
| - }, |
1671 |
| - "name": { |
1672 |
| - "type": "string", |
1673 |
| - "description": "Name is the name of the secret where the kubeconfig is stored." |
1674 |
| - }, |
1675 |
| - "namespace": { |
1676 |
| - "type": "string", |
1677 |
| - "description": "Namespace where vCluster stores the kubeconfig secret. If this is not equal to the namespace\nwhere you deployed vCluster, you need to make sure vCluster has access to this other namespace." |
1678 |
| - } |
1679 |
| - }, |
1680 |
| - "additionalProperties": false, |
1681 |
| - "type": "object", |
1682 |
| - "description": "ExportKubeConfigAdditionalSecretReference defines the additional host cluster secret in which vCluster stores the generated virtual cluster kubeconfigs." |
1683 |
| - }, |
1684 | 1536 | "ExportKubeConfigSecretReference": {
|
1685 | 1537 | "properties": {
|
1686 | 1538 | "name": {
|
|
1862 | 1714 | "additionalProperties": false,
|
1863 | 1715 | "type": "object"
|
1864 | 1716 | },
|
1865 |
| - "FromHostMappings": { |
1866 |
| - "properties": { |
1867 |
| - "byName": { |
1868 |
| - "additionalProperties": { |
1869 |
| - "type": "string" |
1870 |
| - }, |
1871 |
| - "type": "object", |
1872 |
| - "description": "ByName is a map of host-object-namespace/host-object-name: virtual-object-namespace/virtual-object-name.\nThere are several wildcards supported:\n1. To match all objects in host namespace and sync them to different namespace in vCluster:\nbyName:\n \"foo/*\": \"foo-in-virtual/*\"\n2. To match specific object in the host namespace and sync it to the same namespace with the same name:\nbyName:\n \"foo/my-object\": \"foo/my-object\"\n3. To match specific object in the host namespace and sync it to the same namespace with different name:\nbyName:\n \"foo/my-object\": \"foo/my-virtual-object\"\n4. To match all objects in the vCluster host namespace and sync them to a different namespace in vCluster:\nbyName:\n \"\": \"my-virtual-namespace/*\"\n5. To match specific objects in the vCluster host namespace and sync them to a different namespace in vCluster:\nbyName:\n \"/my-object\": \"my-virtual-namespace/my-object\"" |
1873 |
| - } |
1874 |
| - }, |
1875 |
| - "additionalProperties": false, |
1876 |
| - "type": "object" |
1877 |
| - }, |
1878 | 1717 | "Hook": {
|
1879 | 1718 | "properties": {
|
1880 | 1719 | "apiVersion": {
|
|
2030 | 1869 | "externalSecrets": {
|
2031 | 1870 | "$ref": "#/$defs/ExternalSecrets",
|
2032 | 1871 | "description": "ExternalSecrets reuses a host external secret operator and makes certain CRDs from it available inside the vCluster"
|
2033 |
| - }, |
2034 |
| - "certManager": { |
2035 |
| - "$ref": "#/$defs/CertManager", |
2036 |
| - "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." |
2037 | 1872 | }
|
2038 | 1873 | },
|
2039 | 1874 | "additionalProperties": false,
|
|
3074 | 2909 | "additionalProperties": false,
|
3075 | 2910 | "type": "object"
|
3076 | 2911 | },
|
3077 |
| - "SleepMode": { |
3078 |
| - "properties": { |
3079 |
| - "enabled": { |
3080 |
| - "type": "boolean", |
3081 |
| - "description": "Enabled toggles the sleep mode functionality, allowing for disabling sleep mode without removing other config" |
3082 |
| - }, |
3083 |
| - "timeZone": { |
3084 |
| - "type": "string", |
3085 |
| - "description": "Timezone represents the timezone a sleep schedule should run against, defaulting to UTC if unset" |
3086 |
| - }, |
3087 |
| - "autoSleep": { |
3088 |
| - "$ref": "#/$defs/SleepModeAutoSleep", |
3089 |
| - "description": "AutoSleep holds autoSleep details" |
3090 |
| - }, |
3091 |
| - "autoWakeup": { |
3092 |
| - "$ref": "#/$defs/AutoWakeup", |
3093 |
| - "description": "AutoWakeup holds configuration for waking the vCluster on a schedule rather than waiting for some activity." |
3094 |
| - } |
3095 |
| - }, |
3096 |
| - "additionalProperties": false, |
3097 |
| - "type": "object", |
3098 |
| - "description": "SleepMode holds configuration for native/workload only sleep mode" |
3099 |
| - }, |
3100 |
| - "SleepModeAutoSleep": { |
3101 |
| - "properties": { |
3102 |
| - "afterInactivity": { |
3103 |
| - "type": "string", |
3104 |
| - "description": "AfterInactivity represents how long a vCluster can be idle before workloads are automaticaly put to sleep" |
3105 |
| - }, |
3106 |
| - "schedule": { |
3107 |
| - "type": "string", |
3108 |
| - "description": "Schedule represents a cron schedule for when to sleep workloads" |
3109 |
| - }, |
3110 |
| - "exclude": { |
3111 |
| - "$ref": "#/$defs/AutoSleepExclusion", |
3112 |
| - "description": "Exclude holds configuration for labels that, if present, will prevent a workload from going to sleep" |
3113 |
| - } |
3114 |
| - }, |
3115 |
| - "additionalProperties": false, |
3116 |
| - "type": "object", |
3117 |
| - "description": "SleepModeAutoSleep holds configuration for allowing a vCluster to sleep its workloads automatically" |
3118 |
| - }, |
3119 | 2912 | "StatefulSetImage": {
|
3120 | 2913 | "properties": {
|
3121 | 2914 | "registry": {
|
|
3217 | 3010 | "volumeSnapshotClasses": {
|
3218 | 3011 | "$ref": "#/$defs/EnableSwitchWithPatches",
|
3219 | 3012 | "description": "VolumeSnapshotClasses defines if volume snapshot classes created within the virtual cluster should get synced to the host cluster."
|
3220 |
| - }, |
3221 |
| - "configMaps": { |
3222 |
| - "$ref": "#/$defs/EnableSwitchWithResourcesMappings", |
3223 |
| - "description": "ConfigMaps defines if config maps in the host should get synced to the virtual cluster." |
3224 |
| - }, |
3225 |
| - "secrets": { |
3226 |
| - "$ref": "#/$defs/EnableSwitchWithResourcesMappings", |
3227 |
| - "description": "Secrets defines if secrets in the host should get synced to the virtual cluster." |
3228 | 3013 | }
|
3229 | 3014 | },
|
3230 | 3015 | "additionalProperties": false,
|
|
3246 | 3031 | },
|
3247 | 3032 | "type": "array",
|
3248 | 3033 | "description": "Patches patch the resource according to the provided specification."
|
3249 |
| - }, |
3250 |
| - "mappings": { |
3251 |
| - "$ref": "#/$defs/FromHostMappings", |
3252 |
| - "description": "Mappings for Namespace and Object" |
3253 | 3034 | }
|
3254 | 3035 | },
|
3255 | 3036 | "additionalProperties": false,
|
|
3329 | 3110 | "type": "boolean",
|
3330 | 3111 | "description": "UseSecretsForSATokens will use secrets to save the generated service account tokens by virtual cluster instead of using a\npod annotation."
|
3331 | 3112 | },
|
3332 |
| - "runtimeClassName": { |
3333 |
| - "type": "string", |
3334 |
| - "description": "RuntimeClassName is the runtime class to set for synced pods." |
3335 |
| - }, |
3336 |
| - "priorityClassName": { |
3337 |
| - "type": "string", |
3338 |
| - "description": "PriorityClassName is the priority class to set for synced pods." |
3339 |
| - }, |
3340 | 3113 | "rewriteHosts": {
|
3341 | 3114 | "$ref": "#/$defs/SyncRewriteHosts",
|
3342 | 3115 | "description": "RewriteHosts is a special option needed to rewrite statefulset containers to allow the correct FQDN. virtual cluster will add\na small container to each stateful set pod that will initially rewrite the /etc/hosts file to match the FQDN expected by\nthe virtual cluster."
|
|
3876 | 3649 | "$ref": "#/$defs/Plugin"
|
3877 | 3650 | },
|
3878 | 3651 | "description": "Plugin specifies which vCluster plugins to enable. Use \"plugins\" instead. Do not use this option anymore."
|
3879 |
| - }, |
3880 |
| - "sleepMode": { |
3881 |
| - "$ref": "#/$defs/SleepMode", |
3882 |
| - "description": "SleepMode holds the native sleep mode configuration for Pro clusters" |
3883 | 3652 | }
|
3884 | 3653 | },
|
3885 | 3654 | "additionalProperties": false,
|
|
0 commit comments